File: jsxEmptyExpressionNotCountedAsChild2.errors.txt

package info (click to toggle)
node-typescript 5.1.6%2Bds1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 492,516 kB
  • sloc: javascript: 2,078,951; makefile: 6; sh: 1
file content (43 lines) | stat: -rw-r--r-- 1,854 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
tests/cases/compiler/jsxEmptyExpressionNotCountedAsChild2.tsx(28,2): error TS2322: Type '{ __children__: never[]; }' is not assignable to type '{ bar?: number | undefined; } & { __children__: () => number; }'.
  Type '{ __children__: never[]; }' is not assignable to type '{ __children__: () => number; }'.
    Types of property '__children__' are incompatible.
      Type 'never[]' is not assignable to type '() => number'.
        Type 'never[]' provides no match for the signature '(): number'.


==== tests/cases/compiler/jsxEmptyExpressionNotCountedAsChild2.tsx (1 errors) ====
    // repro from #38108
    
    export {}
    
    declare global {
        namespace JSX {
            type Element = any;
            interface ElementAttributesProperty {
                __properties__: {};
            }
            interface IntrinsicElements {
                [key: string]: string;
            }
            interface ElementChildrenAttribute {
                __children__: {};
            }
        }
    }
    
    interface MockComponentInterface {
    	new (): {
            __properties__: { bar?: number } & { __children__: () => number };
    	};
    }
    
    declare const MockComponent: MockComponentInterface;
    
    <MockComponent>{}</MockComponent>; // error
     ~~~~~~~~~~~~~
!!! error TS2322: Type '{ __children__: never[]; }' is not assignable to type '{ bar?: number | undefined; } & { __children__: () => number; }'.
!!! error TS2322:   Type '{ __children__: never[]; }' is not assignable to type '{ __children__: () => number; }'.
!!! error TS2322:     Types of property '__children__' are incompatible.
!!! error TS2322:       Type 'never[]' is not assignable to type '() => number'.
!!! error TS2322:         Type 'never[]' provides no match for the signature '(): number'.