Property 'children' is missing in type '{}'

Hello,

I got the same TypeScript error as this friend here:

forge/ui version: 0.13.1 and 0.13.1-next.0

[tsl] ERROR in /app/src/quotation.tsx(20,14)
      TS2741: Property 'children' is missing in type '{}' but required in type 'TableProps'.

[tsl] ERROR in /app/src/quotation.tsx(21,18)
      TS2741: Property 'children' is missing in type '{}' but required in type 'HeadProps'.

[tsl] ERROR in /app/src/quotation.tsx(23,26)
      TS2741: Property 'children' is missing in type '{}' but required in type 'TextProps'.

Is there an error on my side? My Code looks like this:

            <Table>
                <Head>
                    <Cell>
                        <Text>Issue Key</Text>
                    </Cell>
                    <Cell>
                        <Text>Status</Text>
                    </Cell>
                </Head>
                ....

Thanks for any help :slight_smile:

~~PS: is there an example tsconfig.json? My PHPStorm is erroring TS17004: Cannot use JSX unless the '--jsx' flag is provided solution: Bitbucket

Hi,

I cannot reproduce the issue with @forge/ui version 0.13.1. We use this tsconfig: Bitbucket but the one you found is nearly identical and should not make much of a difference.

It looks like something is clashing with the types. Does the issue still happen with the tsconfig you found? In PHPStorm, you might have to “Restart Typescript services” to refresh any tsconfig changes. There are also no conflicting imports for the types here and you did put the import ForgeUI from '@forge/ui' at the top of the file, right?

If none of this helps, it would be easiest for us to help you if you could isolate the issue into a separate project, we could look at that and you wouldn’t have to disclose what you’re working on. I know that that’s a lot of work though and maybe someone else has a different idea.

Cheers,
Tobi

Hello thanks for the answer,

I got my PhpStorm Bug fixxed, thanks for the config.
Sadly the TypeScript error for children is still there.

Here are the important files, the project is not big:

I am confused. After one day there are no errors for that. I think my PHPStorm had a cache problem, like you described it.

Resstart solved that problem :slight_smile: Thanks

I ran in the same issue, only in my case I was migrating from javascript to typescript. As googled I renamed files and tried running forge deploy -e development, but it would fail with a bunch of TS2741: Property 'children' is missing in type '{}' but required in type 'RowProps'. errors. Then I figured I can add my own tsconfig.json and I found one example when creating forge create app with confluence typescript example.

From the example I copied tsconfig.json and "validate": "tsc --noEmit --project ./tsconfig.json" from package.json.

I did not look how exactly @forge/ui works, but there should be docs for migration and perhaps it work out of the box, just by renaming files (I found that suggestion here)

2 Likes

@Townsheriff
It is a little late but I want to share what I have done just in case some else needs this. I have also migrated a small Forge project from Javascript to Typescript. Only changes I needed to is adding tsconfig.json and adding “devDependencies” to package.json for Typescript. I have copied these from a temporary project created using “confluence-macro-typescript” template.

4 Likes

Thanks for this, saved my life. :slight_smile: