diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index d6c635fda1344..7e22df8f4beba 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -8557,7 +8557,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker { if (typeFromTypeNode === type) { return true; } - if (annotatedDeclaration && (isParameter(annotatedDeclaration) || isPropertyDeclaration(annotatedDeclaration)) && annotatedDeclaration.questionToken) { + if (annotatedDeclaration && (isParameter(annotatedDeclaration) || isPropertySignature(annotatedDeclaration) || isPropertyDeclaration(annotatedDeclaration)) && annotatedDeclaration.questionToken) { return getTypeWithFacts(type, TypeFacts.NEUndefined) === typeFromTypeNode; } return false; diff --git a/tests/baselines/reference/avoidNarrowingUsingConstVariableFromBindingElementWithLiteralInitializer.types b/tests/baselines/reference/avoidNarrowingUsingConstVariableFromBindingElementWithLiteralInitializer.types index d2eb3da8923f8..0460aa45f844f 100644 --- a/tests/baselines/reference/avoidNarrowingUsingConstVariableFromBindingElementWithLiteralInitializer.types +++ b/tests/baselines/reference/avoidNarrowingUsingConstVariableFromBindingElementWithLiteralInitializer.types @@ -8,8 +8,8 @@ declare const foo: ["a", string, number] | ["b", string, boolean]; export function test(arg: { index?: number }) { >test : (arg: { index?: number; }) => void > : ^^^^^^ ^^^^^^^^^ ->arg : { index?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>arg : { index?: number; } +> : ^^^^^^^^^^ ^^^ >index : number | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/checkJsxIntersectionElementPropsType.types b/tests/baselines/reference/checkJsxIntersectionElementPropsType.types index cec2c00ed2c59..0a9c2b80045b1 100644 --- a/tests/baselines/reference/checkJsxIntersectionElementPropsType.types +++ b/tests/baselines/reference/checkJsxIntersectionElementPropsType.types @@ -23,8 +23,8 @@ declare class Component

{ class C extends Component<{ x?: boolean; } & T> {} >C : C > : ^^^^ ->Component : Component<{ x?: boolean | undefined; } & T> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>Component : Component<{ x?: boolean; } & T> +> : ^^^^^^^^^^^^^^^^ ^^^^^^^^ >x : boolean | undefined > : ^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/circularlyConstrainedMappedTypeContainingConditionalNoInfiniteInstantiationDepth.types b/tests/baselines/reference/circularlyConstrainedMappedTypeContainingConditionalNoInfiniteInstantiationDepth.types index 07992a8ecc200..a37cf9d9a13d5 100644 --- a/tests/baselines/reference/circularlyConstrainedMappedTypeContainingConditionalNoInfiniteInstantiationDepth.types +++ b/tests/baselines/reference/circularlyConstrainedMappedTypeContainingConditionalNoInfiniteInstantiationDepth.types @@ -16,8 +16,8 @@ declare class Component

{ > : ^^^ readonly props: Readonly

& Readonly<{ children?: {} }>; ->props : Readonly

& Readonly<{ children?: {} | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : Readonly

& Readonly<{ children?: {}; }> +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ } @@ -42,8 +42,8 @@ interface ComponentClass

{ } interface FunctionComponent

{ (props: P & { children?: {} }, context?: any): {} | null; ->props : P & { children?: {} | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: {}; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ >context : any diff --git a/tests/baselines/reference/contextualSignatureConditionalTypeInstantiationUsingDefault.types b/tests/baselines/reference/contextualSignatureConditionalTypeInstantiationUsingDefault.types index 37d89392c6af7..e208588e068cf 100644 --- a/tests/baselines/reference/contextualSignatureConditionalTypeInstantiationUsingDefault.types +++ b/tests/baselines/reference/contextualSignatureConditionalTypeInstantiationUsingDefault.types @@ -33,8 +33,8 @@ declare function createMachine< TTypesMeta extends TypegenEnabled | TypegenDisabled = TypegenDisabled >( config: { ->config : { types?: TTypesMeta | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>config : { types?: TTypesMeta; } +> : ^^^^^^^^^^ ^^^ types?: TTypesMeta; >types : TTypesMeta | undefined diff --git a/tests/baselines/reference/contextuallyTypedOptionalProperty(exactoptionalpropertytypes=false).types b/tests/baselines/reference/contextuallyTypedOptionalProperty(exactoptionalpropertytypes=false).types index 925dfb34e8355..97558db31a4f7 100644 --- a/tests/baselines/reference/contextuallyTypedOptionalProperty(exactoptionalpropertytypes=false).types +++ b/tests/baselines/reference/contextuallyTypedOptionalProperty(exactoptionalpropertytypes=false).types @@ -14,8 +14,8 @@ declare function match(cb: (value: T) => boolean): T; declare function foo(pos: { x?: number; y?: number }): boolean; >foo : (pos: { x?: number; y?: number; }) => boolean > : ^^^^^^ ^^^^^ ->pos : { x?: number | undefined; y?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>pos : { x?: number; y?: number; } +> : ^^^^^^ ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >y : number | undefined diff --git a/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.types b/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.types index 41ca9bb5a5f7b..84c621750c5f1 100644 --- a/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.types +++ b/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.types @@ -28,8 +28,8 @@ declare function id3 any>(input: T): T; declare function id4 any>(input: T): T; >id4 : any>(input: T) => T > : ^ ^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^ ->x : { foo?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { foo?: number; } +> : ^^^^^^^^ ^^^ >foo : number | undefined > : ^^^^^^^^^^^^^^^^^^ >input : T diff --git a/tests/baselines/reference/controlFlowAliasing.types b/tests/baselines/reference/controlFlowAliasing.types index e15a3526dca6d..2e8e5caa0c5b1 100644 --- a/tests/baselines/reference/controlFlowAliasing.types +++ b/tests/baselines/reference/controlFlowAliasing.types @@ -1284,8 +1284,8 @@ class C11 { function f40(obj: { kind: 'foo', foo?: string } | { kind: 'bar', bar?: number }) { >f40 : (obj: { kind: 'foo'; foo?: string; } | { kind: 'bar'; bar?: number; }) => void > : ^^^^^^ ^^^^^^^^^ ->obj : { kind: 'foo'; foo?: string | undefined; } | { kind: 'bar'; bar?: number | undefined; } -> : ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj : { kind: 'foo'; foo?: string; } | { kind: 'bar'; bar?: number; } +> : ^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^ ^^^ >kind : "foo" > : ^^^^^ >foo : string | undefined diff --git a/tests/baselines/reference/controlFlowDeleteOperator.types b/tests/baselines/reference/controlFlowDeleteOperator.types index dad176cbfdb27..bcdae1183326d 100644 --- a/tests/baselines/reference/controlFlowDeleteOperator.types +++ b/tests/baselines/reference/controlFlowDeleteOperator.types @@ -6,8 +6,8 @@ function f() { > : ^^^^^^^^^^ let x: { a?: number | string, b: number | string } = { b: 1 }; ->x : { a?: string | number | undefined; b: number | string; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>x : { a?: number | string; b: number | string; } +> : ^^^^^^ ^^^^^ ^^^ >a : string | number | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ >b : string | number diff --git a/tests/baselines/reference/controlFlowInitializedDestructuringVariables.types b/tests/baselines/reference/controlFlowInitializedDestructuringVariables.types index 86119fc59caea..68658c307e899 100644 --- a/tests/baselines/reference/controlFlowInitializedDestructuringVariables.types +++ b/tests/baselines/reference/controlFlowInitializedDestructuringVariables.types @@ -2,8 +2,8 @@ === controlFlowInitializedDestructuringVariables.ts === declare const obj: { a?: string, b?: number }; ->obj : { a?: string | undefined; b?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj : { a?: string; b?: number; } +> : ^^^^^^ ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ >b : number | undefined diff --git a/tests/baselines/reference/controlFlowOptionalChain.types b/tests/baselines/reference/controlFlowOptionalChain.types index 6c4d504a539fa..deee1949cab39 100644 --- a/tests/baselines/reference/controlFlowOptionalChain.types +++ b/tests/baselines/reference/controlFlowOptionalChain.types @@ -387,8 +387,8 @@ o3.x; > : ^^^^^ declare const o4: { x?: { y: boolean } }; ->o4 : { x?: { y: boolean; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o4 : { x?: { y: boolean; }; } +> : ^^^^^^ ^^^ >x : { y: boolean; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >y : boolean @@ -504,12 +504,12 @@ o4.x.y; > : ^^^^^^^ declare const o5: { x?: { y: { z?: { w: boolean } } } }; ->o5 : { x?: { y: { z?: { w: boolean; }; }; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o5 : { x?: { y: { z?: { w: boolean; }; }; }; } +> : ^^^^^^ ^^^ >x : { y: { z?: { w: boolean; }; }; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ ->y : { z?: { w: boolean; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>y : { z?: { w: boolean; }; } +> : ^^^^^^ ^^^ >z : { w: boolean; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >w : boolean diff --git a/tests/baselines/reference/controlFlowOptionalChain3.types b/tests/baselines/reference/controlFlowOptionalChain3.types index c1bb55bf6e903..75518b0b30059 100644 --- a/tests/baselines/reference/controlFlowOptionalChain3.types +++ b/tests/baselines/reference/controlFlowOptionalChain3.types @@ -135,8 +135,8 @@ function Test3({ foo }: { foo: Foo | undefined }) { function test4(options?: { a?: boolean; b?: boolean }) { >test4 : (options?: { a?: boolean; b?: boolean; }) => void > : ^^^^^^^^^^^ ^^^^^^^^^ ->options : { a?: boolean | undefined; b?: boolean | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : { a?: boolean; b?: boolean; } | undefined +> : ^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^ >a : boolean | undefined > : ^^^^^^^^^^^^^^^^^^^ >b : boolean | undefined diff --git a/tests/baselines/reference/correlatedUnions.js b/tests/baselines/reference/correlatedUnions.js index 05e77d8b4d3e1..773c11a30850a 100644 --- a/tests/baselines/reference/correlatedUnions.js +++ b/tests/baselines/reference/correlatedUnions.js @@ -528,12 +528,12 @@ declare function processEvents(events: Ev[] declare function createEventListener({ name, once, callback }: Ev): Ev; declare const clickEvent: { readonly name: "click"; - readonly once?: boolean | undefined; + readonly once?: boolean; readonly callback: (ev: MouseEvent) => void; }; declare const scrollEvent: { readonly name: "scroll"; - readonly once?: boolean | undefined; + readonly once?: boolean; readonly callback: (ev: Event) => void; }; declare function ff1(): void; diff --git a/tests/baselines/reference/declarationEmitOptionalMethod.types b/tests/baselines/reference/declarationEmitOptionalMethod.types index a69aee3f38ddc..b6fc09ea53d86 100644 --- a/tests/baselines/reference/declarationEmitOptionalMethod.types +++ b/tests/baselines/reference/declarationEmitOptionalMethod.types @@ -6,8 +6,8 @@ export const Foo = (opts: { > : ^^^^^^^ ^^^^^ >(opts: { a?(): void, b?: () => void,}): { c?(): void, d?: () => void,} => ({ }) : (opts: { a?(): void; b?: () => void; }) => { c?(): void; d?: () => void; } > : ^^^^^^^ ^^^^^ ->opts : { a?(): void; b?: (() => void) | undefined; } -> : ^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ +>opts : { a?(): void; b?: () => void; } +> : ^^^^^^^^ ^^^^^^ ^^^ a?(): void, >a : (() => void) | undefined diff --git a/tests/baselines/reference/deleteChain.types b/tests/baselines/reference/deleteChain.types index 65efe9a338204..b151eec17cb29 100644 --- a/tests/baselines/reference/deleteChain.types +++ b/tests/baselines/reference/deleteChain.types @@ -106,12 +106,12 @@ delete (o3.b?.c); > : ^^^^^^^^^^^^^^^^^^ declare const o4: { b?: { c: { d?: { e: string } } } }; ->o4 : { b?: { c: { d?: { e: string; }; }; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o4 : { b?: { c: { d?: { e: string; }; }; }; } +> : ^^^^^^ ^^^ >b : { c: { d?: { e: string; }; }; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string @@ -192,8 +192,8 @@ declare const o5: { b?(): { c: { d?: { e: string } } } }; > : ^^^^^^^^ ^^^ >b : (() => { c: { d?: { e: string; }; }; }) | undefined > : ^^^^^^^ ^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string @@ -250,12 +250,12 @@ delete (o5.b?.().c.d?.e); > : ^^^^^^^^^^^^^^^^^^ declare const o6: { b?: { c: { d?: { e: string } } } }; ->o6 : { b?: { c: { d?: { e: string; }; }; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o6 : { b?: { c: { d?: { e: string; }; }; }; } +> : ^^^^^^ ^^^ >b : { c: { d?: { e: string; }; }; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string diff --git a/tests/baselines/reference/destructuringAssignmentWithDefault.types b/tests/baselines/reference/destructuringAssignmentWithDefault.types index ca97d0739a090..5fb145f328474 100644 --- a/tests/baselines/reference/destructuringAssignmentWithDefault.types +++ b/tests/baselines/reference/destructuringAssignmentWithDefault.types @@ -2,8 +2,8 @@ === destructuringAssignmentWithDefault.ts === const a: { x?: number } = { }; ->a : { x?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { x?: number; } +> : ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{ } : {} @@ -34,8 +34,8 @@ let x = 0; function f1(options?: { color?: string, width?: number }) { >f1 : (options?: { color?: string; width?: number; }) => void > : ^^^^^^^^^^^ ^^^^^^^^^ ->options : { color?: string | undefined; width?: number | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : { color?: string; width?: number; } | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^ >color : string | undefined > : ^^^^^^^^^^^^^^^^^^ >width : number | undefined diff --git a/tests/baselines/reference/destructuringAssignmentWithDefault2.types b/tests/baselines/reference/destructuringAssignmentWithDefault2.types index d9cf6546bba89..ce024b809cb4b 100644 --- a/tests/baselines/reference/destructuringAssignmentWithDefault2.types +++ b/tests/baselines/reference/destructuringAssignmentWithDefault2.types @@ -2,8 +2,8 @@ === destructuringAssignmentWithDefault2.ts === const a: { x?: number; y?: number } = { }; ->a : { x?: number | undefined; y?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { x?: number; y?: number; } +> : ^^^^^^ ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >y : number | undefined diff --git a/tests/baselines/reference/destructuringControlFlow.types b/tests/baselines/reference/destructuringControlFlow.types index 2203e1536d21c..68f09293e8079 100644 --- a/tests/baselines/reference/destructuringControlFlow.types +++ b/tests/baselines/reference/destructuringControlFlow.types @@ -4,8 +4,8 @@ function f1(obj: { a?: string }) { >f1 : (obj: { a?: string; }) => void > : ^^^^^^ ^^^^^^^^^ ->obj : { a?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj : { a?: string; } +> : ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -158,8 +158,8 @@ function f2(obj: [number, string] | null[]) { function f3(obj: { a?: number, b?: string }) { >f3 : (obj: { a?: number; b?: string; }) => void > : ^^^^^^ ^^^^^^^^^ ->obj : { a?: number | undefined; b?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj : { a?: number; b?: string; } +> : ^^^^^^ ^^^^^^ ^^^ >a : number | undefined > : ^^^^^^^^^^^^^^^^^^ >b : string | undefined diff --git a/tests/baselines/reference/duplicateObjectLiteralProperty_computedNameNegative1.types b/tests/baselines/reference/duplicateObjectLiteralProperty_computedNameNegative1.types index a18af04f89b7e..4e09ff54af979 100644 --- a/tests/baselines/reference/duplicateObjectLiteralProperty_computedNameNegative1.types +++ b/tests/baselines/reference/duplicateObjectLiteralProperty_computedNameNegative1.types @@ -6,8 +6,8 @@ function bar(props: { x?: string; y?: string }) { >bar : (props: { x?: string; y?: string; }) => { [x: string]: number; } > : ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->props : { x?: string | undefined; y?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : { x?: string; y?: string; } +> : ^^^^^^ ^^^^^^ ^^^ >x : string | undefined > : ^^^^^^^^^^^^^^^^^^ >y : string | undefined diff --git a/tests/baselines/reference/elementAccessChain.types b/tests/baselines/reference/elementAccessChain.types index c93977bfe6615..05259fbadacbb 100644 --- a/tests/baselines/reference/elementAccessChain.types +++ b/tests/baselines/reference/elementAccessChain.types @@ -80,12 +80,12 @@ o3.b?.["c"]; > : ^^^ declare const o4: { b?: { c: { d?: { e: string } } } }; ->o4 : { b?: { c: { d?: { e: string; }; }; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o4 : { b?: { c: { d?: { e: string; }; }; }; } +> : ^^^^^^ ^^^ >b : { c: { d?: { e: string; }; }; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string @@ -136,8 +136,8 @@ declare const o5: { b?(): { c: { d?: { e: string } } } }; > : ^^^^^^^^ ^^^ >b : (() => { c: { d?: { e: string; }; }; }) | undefined > : ^^^^^^^ ^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string diff --git a/tests/baselines/reference/homomorphicMappedTypeIntersectionAssignability.types b/tests/baselines/reference/homomorphicMappedTypeIntersectionAssignability.types index d255bf2705187..81a6f154cc8c5 100644 --- a/tests/baselines/reference/homomorphicMappedTypeIntersectionAssignability.types +++ b/tests/baselines/reference/homomorphicMappedTypeIntersectionAssignability.types @@ -6,8 +6,8 @@ function f( > : ^ ^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^ a: { weak?: string } & Readonly & { name: "ok" }, ->a : { weak?: string | undefined; } & Readonly & { name: "ok"; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>a : { weak?: string; } & Readonly & { name: "ok"; } +> : ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >weak : string | undefined > : ^^^^^^^^^^^^^^^^^^ >name : "ok" diff --git a/tests/baselines/reference/inKeywordTypeguard(strict=true).types b/tests/baselines/reference/inKeywordTypeguard(strict=true).types index 0d6a17cecbe0a..0794ca58dbc1e 100644 --- a/tests/baselines/reference/inKeywordTypeguard(strict=true).types +++ b/tests/baselines/reference/inKeywordTypeguard(strict=true).types @@ -1492,8 +1492,8 @@ function f12(x: { a: string }) { function f13(x: { a?: string }) { >f13 : (x: { a?: string; }) => void > : ^^^^ ^^^^^^^^^ ->x : { a?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { a?: string; } +> : ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/indexSignatures1.types b/tests/baselines/reference/indexSignatures1.types index f8428d0f65998..f5cb5daf229d1 100644 --- a/tests/baselines/reference/indexSignatures1.types +++ b/tests/baselines/reference/indexSignatures1.types @@ -1328,8 +1328,8 @@ const directive = Symbol('directive'); declare function foo(options: { [x in string]: (arg: TArg) => TRet } & { [directive]?: TDir }): void; >foo : (options: { [x in string]: (arg: TArg) => TRet; } & { [directive]?: TDir; }) => void > : ^ ^^ ^^ ^^^^^^^^^^^ ^^^^^ ->options : { [x: string]: (arg: TArg) => TRet; } & { [directive]?: TDir | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : { [x: string]: (arg: TArg) => TRet; } & { [directive]?: TDir; } +> : ^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^ >arg : TArg > : ^^^^ >[directive] : TDir | undefined diff --git a/tests/baselines/reference/inferenceOptionalPropertiesToIndexSignatures.types b/tests/baselines/reference/inferenceOptionalPropertiesToIndexSignatures.types index f385c6f6fbb36..8f3abf670cde9 100644 --- a/tests/baselines/reference/inferenceOptionalPropertiesToIndexSignatures.types +++ b/tests/baselines/reference/inferenceOptionalPropertiesToIndexSignatures.types @@ -26,8 +26,8 @@ declare const x2: { a: string, b: number | undefined }; > : ^^^^^^^^^^^^^^^^^^ declare const x3: { a: string, b?: number }; ->x3 : { a: string; b?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x3 : { a: string; b?: number; } +> : ^^^^^ ^^^^^^ ^^^ >a : string > : ^^^^^^ >b : number | undefined diff --git a/tests/baselines/reference/instantiateContextualTypes.types b/tests/baselines/reference/instantiateContextualTypes.types index 25ab61d5f5330..805b8e5af09f3 100644 --- a/tests/baselines/reference/instantiateContextualTypes.types +++ b/tests/baselines/reference/instantiateContextualTypes.types @@ -324,8 +324,8 @@ interface ComponentClass

{ } type CreateElementChildren

= ->CreateElementChildren : P extends { children?: infer C | undefined; } ? C extends any[] ? C : C[] : unknown -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>CreateElementChildren : P extends { children?: infer C; } ? C extends any[] ? C : C[] : unknown +> : ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ P extends { children?: infer C } >children : C | undefined diff --git a/tests/baselines/reference/intersectionOfTypeVariableHasApparentSignatures.types b/tests/baselines/reference/intersectionOfTypeVariableHasApparentSignatures.types index c11bfaeab985e..5fdba91dd189f 100644 --- a/tests/baselines/reference/intersectionOfTypeVariableHasApparentSignatures.types +++ b/tests/baselines/reference/intersectionOfTypeVariableHasApparentSignatures.types @@ -3,8 +3,8 @@ === intersectionOfTypeVariableHasApparentSignatures.ts === interface Component

{ props: Readonly

& Readonly<{ children?: {} }>; ->props : Readonly

& Readonly<{ children?: {} | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : Readonly

& Readonly<{ children?: {}; }> +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ } diff --git a/tests/baselines/reference/intersectionPropertyCheck.types b/tests/baselines/reference/intersectionPropertyCheck.types index 0b7825d96bf86..489943938c2bf 100644 --- a/tests/baselines/reference/intersectionPropertyCheck.types +++ b/tests/baselines/reference/intersectionPropertyCheck.types @@ -38,10 +38,10 @@ declare let wrong: { a: { y: string } }; > : ^^^^^^ let weak: { a?: { x?: number } } & { c?: string } = wrong; // Nested weak object type ->weak : { a?: { x?: number | undefined; } | undefined; } & { c?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->a : { x?: number | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>weak : { a?: { x?: number; }; } & { c?: string; } +> : ^^^^^^ ^^^^^^^^^^^^ ^^^ +>a : { x?: number; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >c : string | undefined @@ -52,8 +52,8 @@ let weak: { a?: { x?: number } } & { c?: string } = wrong; // Nested weak objec function foo(x: { a?: string }, y: T & { a: boolean }) { >foo : (x: { a?: string; }, y: T & { a: boolean; }) => void > : ^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ->x : { a?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { a?: string; } +> : ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ >y : T & { a: boolean; } diff --git a/tests/baselines/reference/intersectionsAndOptionalProperties.types b/tests/baselines/reference/intersectionsAndOptionalProperties.types index a5be31ae700bf..38a4d76e1b356 100644 --- a/tests/baselines/reference/intersectionsAndOptionalProperties.types +++ b/tests/baselines/reference/intersectionsAndOptionalProperties.types @@ -2,8 +2,8 @@ === intersectionsAndOptionalProperties.ts === declare let x: { a?: number, b: string }; ->x : { a?: number | undefined; b: string; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>x : { a?: number; b: string; } +> : ^^^^^^ ^^^^^ ^^^ >a : number | undefined > : ^^^^^^^^^^^^^^^^^^ >b : string diff --git a/tests/baselines/reference/jsxCallbackWithDestructuring.types b/tests/baselines/reference/jsxCallbackWithDestructuring.types index ac5850ec00959..32738fda42421 100644 --- a/tests/baselines/reference/jsxCallbackWithDestructuring.types +++ b/tests/baselines/reference/jsxCallbackWithDestructuring.types @@ -17,8 +17,8 @@ declare class Component { > : ^^^^^^ props: Readonly<{ children?: {} }> & Readonly

; ->props : Readonly<{ children?: {} | undefined; }> & Readonly

-> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : Readonly<{ children?: {}; }> & Readonly

+> : ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ } diff --git a/tests/baselines/reference/jsxEmptyExpressionNotCountedAsChild2.types b/tests/baselines/reference/jsxEmptyExpressionNotCountedAsChild2.types index 756b6c6748cbf..1011e4942c6b0 100644 --- a/tests/baselines/reference/jsxEmptyExpressionNotCountedAsChild2.types +++ b/tests/baselines/reference/jsxEmptyExpressionNotCountedAsChild2.types @@ -35,8 +35,8 @@ declare global { interface MockComponentInterface { new (): { __properties__: { bar?: number } & { __children__: () => number }; ->__properties__ : { bar?: number | undefined; } & { __children__: () => number; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>__properties__ : { bar?: number; } & { __children__: () => number; } +> : ^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^ >bar : number | undefined > : ^^^^^^^^^^^^^^^^^^ >__children__ : () => number diff --git a/tests/baselines/reference/jsxIntrinsicElementsCompatability.types b/tests/baselines/reference/jsxIntrinsicElementsCompatability.types index b76210b4c6044..82259f241be68 100644 --- a/tests/baselines/reference/jsxIntrinsicElementsCompatability.types +++ b/tests/baselines/reference/jsxIntrinsicElementsCompatability.types @@ -15,8 +15,8 @@ import * as React from "react"; function SomeComponent(props: { element?: T } & JSX.IntrinsicElements[T]): JSX.Element { >SomeComponent : (props: { element?: T; } & JSX.IntrinsicElements[T]) => JSX.Element > : ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ->props : { element?: T | undefined; } & JSX.IntrinsicElements[T] -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : { element?: T; } & JSX.IntrinsicElements[T] +> : ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >element : T | undefined > : ^^^^^^^^^^^^^ >JSX : any diff --git a/tests/baselines/reference/jsxNamespaceGlobalReexport.types b/tests/baselines/reference/jsxNamespaceGlobalReexport.types index b64f6c4b8816a..cf9e49cb2ae30 100644 --- a/tests/baselines/reference/jsxNamespaceGlobalReexport.types +++ b/tests/baselines/reference/jsxNamespaceGlobalReexport.types @@ -118,8 +118,8 @@ export function jsx( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -145,8 +145,8 @@ export function jsx

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild }, ->props : P & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -165,8 +165,8 @@ export function jsxs( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -192,8 +192,8 @@ export function jsxs

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild[] }, ->props : P & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild[] | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -212,8 +212,8 @@ export function jsxDEV( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -239,8 +239,8 @@ export function jsxDEV

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChildren }, ->props : P & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChildren | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/jsxNamespaceGlobalReexportMissingAliasTarget.types b/tests/baselines/reference/jsxNamespaceGlobalReexportMissingAliasTarget.types index 870803bb0eea2..457fd4763baae 100644 --- a/tests/baselines/reference/jsxNamespaceGlobalReexportMissingAliasTarget.types +++ b/tests/baselines/reference/jsxNamespaceGlobalReexportMissingAliasTarget.types @@ -121,8 +121,8 @@ export function jsx( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -148,8 +148,8 @@ export function jsx

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild }, ->props : P & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -168,8 +168,8 @@ export function jsxs( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -195,8 +195,8 @@ export function jsxs

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild[] }, ->props : P & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild[] | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -215,8 +215,8 @@ export function jsxDEV( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -242,8 +242,8 @@ export function jsxDEV

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChildren }, ->props : P & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChildren | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/jsxNamespaceImplicitImportJSXNamespace.types b/tests/baselines/reference/jsxNamespaceImplicitImportJSXNamespace.types index 4b99e8cf89340..7efedbe9c004f 100644 --- a/tests/baselines/reference/jsxNamespaceImplicitImportJSXNamespace.types +++ b/tests/baselines/reference/jsxNamespaceImplicitImportJSXNamespace.types @@ -118,8 +118,8 @@ export function jsx( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -145,8 +145,8 @@ export function jsx

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild }, ->props : P & { children?: ComponentChild | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -166,8 +166,8 @@ export function jsxs( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -193,8 +193,8 @@ export function jsxs

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChild[] }, ->props : P & { children?: ComponentChild[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChild[]; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChild[] | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -214,8 +214,8 @@ export function jsxDEV( > : ^^^^^^ props: JSXInternal.HTMLAttributes & ->props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : JSXInternal.HTMLAttributes<{}> & JSXInternal.SVGAttributes<{}> & Record & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ >JSXInternal : any > : ^^^ @@ -241,8 +241,8 @@ export function jsxDEV

( > : ^^^^^^^^^^^^^^^^ props: Attributes & P & { children?: ComponentChildren }, ->props : P & { children?: ComponentChildren | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: ComponentChildren; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : ComponentChildren | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/logicalAssignment8(target=es2015).types b/tests/baselines/reference/logicalAssignment8(target=es2015).types index aecf8eba7e57a..bc7a0d04158fe 100644 --- a/tests/baselines/reference/logicalAssignment8(target=es2015).types +++ b/tests/baselines/reference/logicalAssignment8(target=es2015).types @@ -2,8 +2,8 @@ === logicalAssignment8.ts === declare const bar: { value?: number[] } | undefined ->bar : { value?: number[] | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>bar : { value?: number[]; } | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^^^^^^ >value : number[] | undefined > : ^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/logicalAssignment8(target=es2020).types b/tests/baselines/reference/logicalAssignment8(target=es2020).types index aecf8eba7e57a..bc7a0d04158fe 100644 --- a/tests/baselines/reference/logicalAssignment8(target=es2020).types +++ b/tests/baselines/reference/logicalAssignment8(target=es2020).types @@ -2,8 +2,8 @@ === logicalAssignment8.ts === declare const bar: { value?: number[] } | undefined ->bar : { value?: number[] | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>bar : { value?: number[]; } | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^^^^^^ >value : number[] | undefined > : ^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/logicalAssignment8(target=es2021).types b/tests/baselines/reference/logicalAssignment8(target=es2021).types index aecf8eba7e57a..bc7a0d04158fe 100644 --- a/tests/baselines/reference/logicalAssignment8(target=es2021).types +++ b/tests/baselines/reference/logicalAssignment8(target=es2021).types @@ -2,8 +2,8 @@ === logicalAssignment8.ts === declare const bar: { value?: number[] } | undefined ->bar : { value?: number[] | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>bar : { value?: number[]; } | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^^^^^^ >value : number[] | undefined > : ^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/logicalAssignment8(target=esnext).types b/tests/baselines/reference/logicalAssignment8(target=esnext).types index aecf8eba7e57a..bc7a0d04158fe 100644 --- a/tests/baselines/reference/logicalAssignment8(target=esnext).types +++ b/tests/baselines/reference/logicalAssignment8(target=esnext).types @@ -2,8 +2,8 @@ === logicalAssignment8.ts === declare const bar: { value?: number[] } | undefined ->bar : { value?: number[] | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>bar : { value?: number[]; } | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^^^^^^ >value : number[] | undefined > : ^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/logicalAssignment9.types b/tests/baselines/reference/logicalAssignment9.types index 8bcf08a89c3d5..87d3c726b6f43 100644 --- a/tests/baselines/reference/logicalAssignment9.types +++ b/tests/baselines/reference/logicalAssignment9.types @@ -2,8 +2,8 @@ === logicalAssignment9.ts === declare let x: { a?: boolean }; ->x : { a?: boolean | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { a?: boolean; } +> : ^^^^^^ ^^^ >a : boolean | undefined > : ^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/mappedTypesArraysTuples.types b/tests/baselines/reference/mappedTypesArraysTuples.types index 5afa1e8dcdbab..bab7c6a6e0d85 100644 --- a/tests/baselines/reference/mappedTypesArraysTuples.types +++ b/tests/baselines/reference/mappedTypesArraysTuples.types @@ -206,8 +206,8 @@ let y21 = nonpartial(x21); > : ^^^^^^^^^^^^^^^^^^^^^^ declare let x22: { a: number | undefined, b?: string[] }; ->x22 : { a: number | undefined; b?: string[] | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x22 : { a: number | undefined; b?: string[]; } +> : ^^^^^ ^^^^^^ ^^^ >a : number | undefined > : ^^^^^^^^^^^^^^^^^^ >b : string[] | undefined diff --git a/tests/baselines/reference/mergedInstantiationAssignment.types b/tests/baselines/reference/mergedInstantiationAssignment.types index 273d62ddba265..12333444b0822 100644 --- a/tests/baselines/reference/mergedInstantiationAssignment.types +++ b/tests/baselines/reference/mergedInstantiationAssignment.types @@ -15,10 +15,10 @@ class GenericObject { } const v1 = new GenericObject() as GenericObject & ->v1 : GenericObject & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->new GenericObject() as GenericObject & ({ a?: string } | { b?: number }) : GenericObject & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>v1 : GenericObject & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ +>new GenericObject() as GenericObject & ({ a?: string } | { b?: number }) : GenericObject & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ >new GenericObject() : GenericObject > : ^^^^^^^^^^^^^^^^^^^^^ >GenericObject : typeof GenericObject @@ -52,10 +52,10 @@ class GenericObjectWithoutSetter { } const v2 = new GenericObjectWithoutSetter() as GenericObjectWithoutSetter & ->v2 : GenericObjectWithoutSetter & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->new GenericObjectWithoutSetter() as GenericObjectWithoutSetter & ({ a?: string } | { b?: number }) : GenericObjectWithoutSetter & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>v2 : GenericObjectWithoutSetter & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ +>new GenericObjectWithoutSetter() as GenericObjectWithoutSetter & ({ a?: string } | { b?: number }) : GenericObjectWithoutSetter & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ >new GenericObjectWithoutSetter() : GenericObjectWithoutSetter > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >GenericObjectWithoutSetter : typeof GenericObjectWithoutSetter @@ -91,10 +91,10 @@ class NormalObject { } const v3 = new NormalObject() as NormalObject & ->v3 : NormalObject & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->new NormalObject() as NormalObject & ({ a?: string } | { b?: number }) : NormalObject & ({ a?: string | undefined; } | { b?: number | undefined; }) -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>v3 : NormalObject & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ +>new NormalObject() as NormalObject & ({ a?: string } | { b?: number }) : NormalObject & ({ a?: string; } | { b?: number; }) +> : ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^ >new NormalObject() : NormalObject > : ^^^^^^^^^^^^ >NormalObject : typeof NormalObject diff --git a/tests/baselines/reference/narrowingOfQualifiedNames.types b/tests/baselines/reference/narrowingOfQualifiedNames.types index a1f7000073f08..d1fdd5f26beb5 100644 --- a/tests/baselines/reference/narrowingOfQualifiedNames.types +++ b/tests/baselines/reference/narrowingOfQualifiedNames.types @@ -85,12 +85,12 @@ function init(properties: IProperties) { interface DeepOptional { a?: { ->a : { b?: { c?: string | undefined; } | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b?: { c?: string; }; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ b?: { ->b : { c?: string | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>b : { c?: string; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ c?: string >c : string | undefined diff --git a/tests/baselines/reference/nestedExcessPropertyChecking.types b/tests/baselines/reference/nestedExcessPropertyChecking.types index 42e0e1738f9f5..1952900200ae7 100644 --- a/tests/baselines/reference/nestedExcessPropertyChecking.types +++ b/tests/baselines/reference/nestedExcessPropertyChecking.types @@ -4,16 +4,16 @@ type A1 = { x: { a?: string } }; >A1 : A1 > : ^^ ->x : { a?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { a?: string; } +> : ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ type B1 = { x: { b?: string } }; >B1 : B1 > : ^^ ->x : { b?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { b?: string; } +> : ^^^^^^ ^^^ >b : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -103,8 +103,8 @@ const foo1: Partial<{ something: any }> & { variables: { > : ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^ >something : any > : ^^^ ->variables : { overrides?: OverridesInput | undefined; } & Partial<{ overrides?: OverridesInput | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>variables : { overrides?: OverridesInput; } & Partial<{ overrides?: OverridesInput; }> +> : ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ overrides?: OverridesInput; >overrides : OverridesInput | undefined @@ -169,8 +169,8 @@ type T1 = { > : ^^ primary: { __typename?: 'Feature' } & { colors: { light: number, dark: number } }, ->primary : { __typename?: "Feature" | undefined; } & { colors: { light: number; dark: number; }; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>primary : { __typename?: 'Feature'; } & { colors: { light: number; dark: number; }; } +> : ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^ >__typename : "Feature" | undefined > : ^^^^^^^^^^^^^^^^^^^^^ >colors : { light: number; dark: number; } @@ -187,8 +187,8 @@ type T2 = { > : ^^ primary: { __typename?: 'Feature' } & { colors: { light: number } }, ->primary : { __typename?: "Feature" | undefined; } & { colors: { light: number; }; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>primary : { __typename?: 'Feature'; } & { colors: { light: number; }; } +> : ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^ >__typename : "Feature" | undefined > : ^^^^^^^^^^^^^^^^^^^^^ >colors : { light: number; } diff --git a/tests/baselines/reference/normalizedIntersectionTooComplex.types b/tests/baselines/reference/normalizedIntersectionTooComplex.types index 531aac2698fb8..cae44d13348f9 100644 --- a/tests/baselines/reference/normalizedIntersectionTooComplex.types +++ b/tests/baselines/reference/normalizedIntersectionTooComplex.types @@ -35,184 +35,184 @@ type CtorOf = (arg: UnionToIntersection) => T; interface Big { "0": { common?: string; "0"?: number, ref?: Obj | Func; } ->"0" : { common?: string | undefined; "0"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"0" : { common?: string; "0"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"0" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "0"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "0"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "0"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "0"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "1": { common?: string; "1"?: number, ref?: Obj | Func; } ->"1" : { common?: string | undefined; "1"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"1" : { common?: string; "1"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"1" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "1"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "1"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "1"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "1"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "2": { common?: string; "2"?: number, ref?: Obj | Func; } ->"2" : { common?: string | undefined; "2"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"2" : { common?: string; "2"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"2" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "2"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "2"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "2"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "2"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "3": { common?: string; "3"?: number, ref?: Obj | Func; } ->"3" : { common?: string | undefined; "3"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"3" : { common?: string; "3"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"3" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "3"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "3"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "3"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "3"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "4": { common?: string; "4"?: number, ref?: Obj | Func; } ->"4" : { common?: string | undefined; "4"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"4" : { common?: string; "4"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"4" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "4"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "4"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "4"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "4"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "5": { common?: string; "5"?: number, ref?: Obj | Func; } ->"5" : { common?: string | undefined; "5"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"5" : { common?: string; "5"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"5" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "5"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "5"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "5"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "5"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "6": { common?: string; "6"?: number, ref?: Obj | Func; } ->"6" : { common?: string | undefined; "6"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"6" : { common?: string; "6"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"6" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "6"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "6"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "6"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "6"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "7": { common?: string; "7"?: number, ref?: Obj | Func; } ->"7" : { common?: string | undefined; "7"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"7" : { common?: string; "7"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"7" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "7"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "7"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "7"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "7"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "8": { common?: string; "8"?: number, ref?: Obj | Func; } ->"8" : { common?: string | undefined; "8"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"8" : { common?: string; "8"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"8" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "8"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "8"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "8"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "8"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "9": { common?: string; "9"?: number, ref?: Obj | Func; } ->"9" : { common?: string | undefined; "9"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"9" : { common?: string; "9"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"9" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "9"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "9"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "9"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "9"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "10": { common?: string; "10"?: number, ref?: Obj | Func; } ->"10" : { common?: string | undefined; "10"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"10" : { common?: string; "10"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"10" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "10"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "10"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "10"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "10"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "11": { common?: string; "11"?: number, ref?: Obj | Func; } ->"11" : { common?: string | undefined; "11"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"11" : { common?: string; "11"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"11" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "11"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "11"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "11"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "11"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "12": { common?: string; "12"?: number, ref?: Obj | Func; } ->"12" : { common?: string | undefined; "12"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"12" : { common?: string; "12"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"12" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "12"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "12"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "12"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "12"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "13": { common?: string; "13"?: number, ref?: Obj | Func; } ->"13" : { common?: string | undefined; "13"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"13" : { common?: string; "13"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"13" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "13"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "13"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "13"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "13"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "14": { common?: string; "14"?: number, ref?: Obj | Func; } ->"14" : { common?: string | undefined; "14"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"14" : { common?: string; "14"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"14" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "14"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "14"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "14"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "14"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "15": { common?: string; "15"?: number, ref?: Obj | Func; } ->"15" : { common?: string | undefined; "15"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"15" : { common?: string; "15"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"15" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "15"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "15"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "15"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "15"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "16": { common?: string; "16"?: number, ref?: Obj | Func; } ->"16" : { common?: string | undefined; "16"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"16" : { common?: string; "16"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"16" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "16"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "16"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "16"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "16"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ "17": { common?: string; "17"?: number, ref?: Obj | Func; } ->"17" : { common?: string | undefined; "17"?: number | undefined; ref?: Obj | Func | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>"17" : { common?: string; "17"?: number; ref?: Obj | Func; } +> : ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^ ^^^ >common : string | undefined > : ^^^^^^^^^^^^^^^^^^ >"17" : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->ref : Obj<{ common?: string | undefined; "17"?: number | undefined; ref?: Obj | Func | undefined; }> | Func<{ common?: string | undefined; "17"?: number | undefined; ref?: Obj | Func | undefined; }> | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>ref : Obj<{ common?: string | undefined; "17"?: number | undefined; ref?: Obj | Func; }> | Func<{ common?: string | undefined; "17"?: number | undefined; ref?: Obj | Func; }> | undefined +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ } declare function getCtor(comp: T): CtorOf >getCtor : (comp: T) => CtorOf diff --git a/tests/baselines/reference/objectLiteralNormalization.js b/tests/baselines/reference/objectLiteralNormalization.js index 9380314f2cfb7..b815ed8919fe6 100644 --- a/tests/baselines/reference/objectLiteralNormalization.js +++ b/tests/baselines/reference/objectLiteralNormalization.js @@ -158,14 +158,14 @@ declare let opts: { baz?: boolean; }; declare let c1: { - foo?: string | undefined; - bar?: string | undefined; - baz?: boolean | undefined; + foo?: string; + bar?: string; + baz?: boolean; }; declare let c2: { - foo?: string | undefined; - bar?: string | undefined; - baz?: boolean | undefined; + foo?: string; + bar?: string; + baz?: boolean; }; declare let c3: { a: number; diff --git a/tests/baselines/reference/objectLiteralNormalization.types b/tests/baselines/reference/objectLiteralNormalization.types index 8bd09c5027d7b..265def79567a5 100644 --- a/tests/baselines/reference/objectLiteralNormalization.types +++ b/tests/baselines/reference/objectLiteralNormalization.types @@ -262,8 +262,8 @@ let b3 = { ...b2 }; // Before widening {} acts like { [x: string]: undefined }, which is a // subtype of types with all optional properties declare let opts: { foo?: string, bar?: string, baz?: boolean }; ->opts : { foo?: string | undefined; bar?: string | undefined; baz?: boolean | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>opts : { foo?: string; bar?: string; baz?: boolean; } +> : ^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ >foo : string | undefined > : ^^^^^^^^^^^^^^^^^^ >bar : string | undefined diff --git a/tests/baselines/reference/objectSpread.types b/tests/baselines/reference/objectSpread.types index 1b3981a18a392..ac4ab2368914e 100644 --- a/tests/baselines/reference/objectSpread.types +++ b/tests/baselines/reference/objectSpread.types @@ -665,14 +665,14 @@ function container( > : ^^^^^^ optionalString: { sn?: string }, ->optionalString : { sn?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalString : { sn?: string; } +> : ^^^^^^^ ^^^ >sn : string | undefined > : ^^^^^^^^^^^^^^^^^^ optionalNumber: { sn?: number }) { ->optionalNumber : { sn?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalNumber : { sn?: number; } +> : ^^^^^^^ ^^^ >sn : number | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -707,8 +707,8 @@ function container( > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ let allOptional: { sn?: string | number } = { ...optionalString, ...optionalNumber }; ->allOptional : { sn?: string | number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>allOptional : { sn?: string | number; } +> : ^^^^^^^ ^^^ >sn : string | number | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ >{ ...optionalString, ...optionalNumber } : { sn?: string | number | undefined; } diff --git a/tests/baselines/reference/objectSpreadNegative.types b/tests/baselines/reference/objectSpreadNegative.types index 8cff058b0ae49..33f2e3d867e9e 100644 --- a/tests/baselines/reference/objectSpreadNegative.types +++ b/tests/baselines/reference/objectSpreadNegative.types @@ -61,14 +61,14 @@ let sn: number = o2.x; // error, x is private > : ^^^ declare let optionalString: { sn?: string }; ->optionalString : { sn?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalString : { sn?: string; } +> : ^^^^^^^ ^^^ >sn : string | undefined > : ^^^^^^^^^^^^^^^^^^ declare let optionalNumber: { sn?: number }; ->optionalNumber : { sn?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalNumber : { sn?: number; } +> : ^^^^^^^ ^^^ >sn : number | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/objectSpreadStrictNull.types b/tests/baselines/reference/objectSpreadStrictNull.types index da56684a9d02f..3e9f1b27f446c 100644 --- a/tests/baselines/reference/objectSpreadStrictNull.types +++ b/tests/baselines/reference/objectSpreadStrictNull.types @@ -18,14 +18,14 @@ function f( > : ^^^^^^ optionalString: { sn?: string }, ->optionalString : { sn?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalString : { sn?: string; } +> : ^^^^^^^ ^^^ >sn : string | undefined > : ^^^^^^^^^^^^^^^^^^ optionalNumber: { sn?: number }, ->optionalNumber : { sn?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalNumber : { sn?: number; } +> : ^^^^^^^ ^^^ >sn : number | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -73,8 +73,8 @@ function f( > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ let allOptional: { sn?: string | number } = { ...optionalString, ...optionalNumber }; ->allOptional : { sn?: string | number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>allOptional : { sn?: string | number; } +> : ^^^^^^^ ^^^ >sn : string | number | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ >{ ...optionalString, ...optionalNumber } : { sn?: string | number | undefined; } diff --git a/tests/baselines/reference/optionalParameterInDestructuringWithInitializer.types b/tests/baselines/reference/optionalParameterInDestructuringWithInitializer.types index 4c6dcbc92a732..935887c590b5b 100644 --- a/tests/baselines/reference/optionalParameterInDestructuringWithInitializer.types +++ b/tests/baselines/reference/optionalParameterInDestructuringWithInitializer.types @@ -125,8 +125,8 @@ function func4( {a: {b, c}, d}: {a: {b: number,c?: number},d: number} = {a: {b: > : ^^^^^^^^^^^^^^^^^^ >d : number > : ^^^^^^ ->a : { b: number; c?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b: number; c?: number; } +> : ^^^^^ ^^^^^^ ^^^ >b : number > : ^^^^^^ >c : number | undefined @@ -178,8 +178,8 @@ function func5({a: {b, c = 4}, d}: {a: {b: number,c?: number},d: number} = {a: { > : ^ >d : number > : ^^^^^^ ->a : { b: number; c?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b: number; c?: number; } +> : ^^^^^ ^^^^^^ ^^^ >b : number > : ^^^^^^ >c : number | undefined @@ -239,8 +239,8 @@ function func6( {a: {b, c} = {b: 4, c: 5}, d}: {a: {b: number, c?: number}, d: n > : ^ >d : number > : ^^^^^^ ->a : { b: number; c?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b: number; c?: number; } +> : ^^^^^ ^^^^^^ ^^^ >b : number > : ^^^^^^ >c : number | undefined @@ -302,8 +302,8 @@ function func7( {a: {b, c = 6} = {b: 4, c: 5}, d}: {a: {b: number, c?: number}, > : ^ >d : number > : ^^^^^^ ->a : { b: number; c?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b: number; c?: number; } +> : ^^^^^ ^^^^^^ ^^^ >b : number > : ^^^^^^ >c : number | undefined diff --git a/tests/baselines/reference/optionalPropertyAssignableToStringIndexSignature.types b/tests/baselines/reference/optionalPropertyAssignableToStringIndexSignature.types index 8936235e2266c..fa197257ed75c 100644 --- a/tests/baselines/reference/optionalPropertyAssignableToStringIndexSignature.types +++ b/tests/baselines/reference/optionalPropertyAssignableToStringIndexSignature.types @@ -2,8 +2,8 @@ === optionalPropertyAssignableToStringIndexSignature.ts === declare let optionalProperties: { k1?: string }; ->optionalProperties : { k1?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>optionalProperties : { k1?: string; } +> : ^^^^^^^ ^^^ >k1 : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -42,8 +42,8 @@ declare let probablyArray: { [key: number]: string }; > : ^^^^^^ declare let numberLiteralKeys: { 1?: string }; ->numberLiteralKeys : { 1?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>numberLiteralKeys : { 1?: string; } +> : ^^^^^^ ^^^ >1 : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -74,8 +74,8 @@ function f() { > : ^^^^^^^^^^^^^ let optional: { k1?: T } = undefined!; ->optional : { k1?: T | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^ +>optional : { k1?: T; } +> : ^^^^^^^ ^^^ >k1 : T | undefined > : ^^^^^^^^^^^^^ >undefined! : never diff --git a/tests/baselines/reference/paramsOnlyHaveLiteralTypesWhenAppropriatelyContextualized.types b/tests/baselines/reference/paramsOnlyHaveLiteralTypesWhenAppropriatelyContextualized.types index 95548307533a9..eca6d047761be 100644 --- a/tests/baselines/reference/paramsOnlyHaveLiteralTypesWhenAppropriatelyContextualized.types +++ b/tests/baselines/reference/paramsOnlyHaveLiteralTypesWhenAppropriatelyContextualized.types @@ -74,8 +74,8 @@ export function appendToOptionalArray< // e.g. const foo: {x?: number[]; y?: string[]; } = {}; ->foo : { x?: number[] | undefined; y?: string[] | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>foo : { x?: number[]; y?: string[]; } +> : ^^^^^^ ^^^^^^ ^^^ >x : number[] | undefined > : ^^^^^^^^^^^^^^^^^^^^ >y : string[] | undefined diff --git a/tests/baselines/reference/primitiveUnionDetection.types b/tests/baselines/reference/primitiveUnionDetection.types index dd996dcd2841e..189097c92ea77 100644 --- a/tests/baselines/reference/primitiveUnionDetection.types +++ b/tests/baselines/reference/primitiveUnionDetection.types @@ -10,8 +10,8 @@ type Kind = "one" | "two" | "three"; declare function getInterfaceFromString(options?: { type?: T } & { type?: Kind }): T; >getInterfaceFromString : (options?: { type?: T; } & { type?: Kind; }) => T > : ^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ->options : ({ type?: T | undefined; } & { type?: Kind | undefined; }) | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : ({ type?: T; } & { type?: Kind; }) | undefined +> : ^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ >type : T | undefined > : ^^^^^^^^^^^^^ >type : Kind | undefined diff --git a/tests/baselines/reference/propTypeValidatorInference.types b/tests/baselines/reference/propTypeValidatorInference.types index 33b68f9928a96..2b9a015828490 100644 --- a/tests/baselines/reference/propTypeValidatorInference.types +++ b/tests/baselines/reference/propTypeValidatorInference.types @@ -129,8 +129,8 @@ interface Props { > : ^^^^^^^ shape: { ->shape : { foo: string; bar?: boolean | undefined; baz?: any; } -> : ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>shape : { foo: string; bar?: boolean; baz?: any; } +> : ^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^^ foo: string; >foo : string @@ -145,8 +145,8 @@ interface Props { }; oneOfType: string | boolean | { ->oneOfType : string | boolean | { foo?: string | undefined; bar: number; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ +>oneOfType : string | boolean | { foo?: string; bar: number; } +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^ foo?: string; >foo : string | undefined diff --git a/tests/baselines/reference/propertyAccessChain.types b/tests/baselines/reference/propertyAccessChain.types index eaf0ed52f686f..44e68d614dc85 100644 --- a/tests/baselines/reference/propertyAccessChain.types +++ b/tests/baselines/reference/propertyAccessChain.types @@ -56,12 +56,12 @@ o3.b?.c; > : ^^^^^^^^^^^^^^^^^^ declare const o4: { b?: { c: { d?: { e: string } } } }; ->o4 : { b?: { c: { d?: { e: string; }; }; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>o4 : { b?: { c: { d?: { e: string; }; }; }; } +> : ^^^^^^ ^^^ >b : { c: { d?: { e: string; }; }; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string @@ -92,8 +92,8 @@ declare const o5: { b?(): { c: { d?: { e: string } } } }; > : ^^^^^^^^ ^^^ >b : (() => { c: { d?: { e: string; }; }; }) | undefined > : ^^^^^^^ ^^^^^^^^^^^^^ ->c : { d?: { e: string; } | undefined; } -> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +>c : { d?: { e: string; }; } +> : ^^^^^^ ^^^ >d : { e: string; } | undefined > : ^^^^^ ^^^^^^^^^^^^^^^ >e : string diff --git a/tests/baselines/reference/reactReduxLikeDeferredInferenceAllowsAssignment.types b/tests/baselines/reference/reactReduxLikeDeferredInferenceAllowsAssignment.types index ef60ed6b79f9b..fd7e482b19c1a 100644 --- a/tests/baselines/reference/reactReduxLikeDeferredInferenceAllowsAssignment.types +++ b/tests/baselines/reference/reactReduxLikeDeferredInferenceAllowsAssignment.types @@ -22,8 +22,8 @@ declare class Component

{ > : ^^^ readonly props: Readonly

& Readonly<{ children?: {} }>; ->props : Readonly

& Readonly<{ children?: {} | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : Readonly

& Readonly<{ children?: {}; }> +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ } @@ -48,8 +48,8 @@ interface ComponentClass

{ } interface FunctionComponent

{ (props: P & { children?: {} }, context?: any): {} | null; ->props : P & { children?: {} | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>props : P & { children?: {}; } +> : ^^^^^^^^^^^^^^^^^ ^^^ >children : {} | undefined > : ^^^^^^^^^^^^^^ >context : any diff --git a/tests/baselines/reference/reverseMappedTypeIntersectionConstraint.types b/tests/baselines/reference/reverseMappedTypeIntersectionConstraint.types index 137e43ef6e26a..9acabc88b1984 100644 --- a/tests/baselines/reference/reverseMappedTypeIntersectionConstraint.types +++ b/tests/baselines/reference/reverseMappedTypeIntersectionConstraint.types @@ -539,8 +539,8 @@ type DistributeActors = TActor extends { src: infer TSrc } interface MachineConfig { types?: { ->types : { actors?: TActor | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>types : { actors?: TActor; } | undefined +> : ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ actors?: TActor; >actors : TActor | undefined diff --git a/tests/baselines/reference/spreadDuplicate.types b/tests/baselines/reference/spreadDuplicate.types index 3f1dd9c5bd607..6a98267681656 100644 --- a/tests/baselines/reference/spreadDuplicate.types +++ b/tests/baselines/reference/spreadDuplicate.types @@ -10,8 +10,8 @@ declare let a: { a: string }; > : ^^^^^^ declare let b: { a?: string }; ->b : { a?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>b : { a?: string; } +> : ^^^^^^ ^^^ >a : string | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/spreadObjectPermutations(exactoptionalpropertytypes=false).types b/tests/baselines/reference/spreadObjectPermutations(exactoptionalpropertytypes=false).types index c5c6b1ce47921..f1c1b3138e693 100644 --- a/tests/baselines/reference/spreadObjectPermutations(exactoptionalpropertytypes=false).types +++ b/tests/baselines/reference/spreadObjectPermutations(exactoptionalpropertytypes=false).types @@ -8,8 +8,8 @@ declare const a: { x: string | number }; > : ^^^^^^^^^^^^^^^ declare const b: { x?: string | number }; ->b : { x?: string | number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>b : { x?: string | number; } +> : ^^^^^^ ^^^ >x : string | number | undefined > : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/spreadOverwritesPropertyStrict.types b/tests/baselines/reference/spreadOverwritesPropertyStrict.types index f6c368ba0abe9..64804f6ab70f8 100644 --- a/tests/baselines/reference/spreadOverwritesPropertyStrict.types +++ b/tests/baselines/reference/spreadOverwritesPropertyStrict.types @@ -10,8 +10,8 @@ declare var ab: { a: number, b: number }; > : ^^^^^^ declare var abq: { a: number, b?: number }; ->abq : { a: number; b?: number | undefined; } -> : ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>abq : { a: number; b?: number; } +> : ^^^^^ ^^^^^^ ^^^ >a : number > : ^^^^^^ >b : number | undefined diff --git a/tests/baselines/reference/strictSubtypeAndNarrowing.types b/tests/baselines/reference/strictSubtypeAndNarrowing.types index b022017ec2bb9..3c88c7ee9edc0 100644 --- a/tests/baselines/reference/strictSubtypeAndNarrowing.types +++ b/tests/baselines/reference/strictSubtypeAndNarrowing.types @@ -410,12 +410,12 @@ function checkD(f: FnTypes) { function fx10(obj1: { x?: number }, obj2: { x?: number, y?: number }) { >fx10 : (obj1: { x?: number; }, obj2: { x?: number; y?: number; }) => void > : ^^^^^^^ ^^^^^^^^ ^^^^^^^^^ ->obj1 : { x?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj1 : { x?: number; } +> : ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ ->obj2 : { x?: number | undefined; y?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj2 : { x?: number; y?: number; } +> : ^^^^^^ ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >y : number | undefined @@ -469,8 +469,8 @@ function fx11(): { x?: number } { > : ^^^^^^^^^^^^^^^^^^ let obj: { x?: number, y?: number }; ->obj : { x?: number | undefined; y?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>obj : { x?: number; y?: number; } +> : ^^^^^^ ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >y : number | undefined diff --git a/tests/baselines/reference/stripMembersOptionality(exactoptionalpropertytypes=false).types b/tests/baselines/reference/stripMembersOptionality(exactoptionalpropertytypes=false).types index 10480b721fc23..8d6ce6f17fcf9 100644 --- a/tests/baselines/reference/stripMembersOptionality(exactoptionalpropertytypes=false).types +++ b/tests/baselines/reference/stripMembersOptionality(exactoptionalpropertytypes=false).types @@ -27,8 +27,8 @@ someVal.fn(""); > : ^^ declare const someVal2: Required<{ ->someVal2 : Required<{ fn?: ((key: string) => string | null) | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^ +>someVal2 : Required<{ fn?: (key: string) => string | null; }> +> : ^^^^^^^^^^^^^^^^ ^^^^ fn?: (key: string) => string | null; >fn : ((key: string) => string | null) | undefined diff --git a/tests/baselines/reference/tsxInvokeComponentType.types b/tests/baselines/reference/tsxInvokeComponentType.types index 61f92c88dc808..a6a81d243f000 100644 --- a/tests/baselines/reference/tsxInvokeComponentType.types +++ b/tests/baselines/reference/tsxInvokeComponentType.types @@ -39,8 +39,8 @@ const good = ; > : ^^^^^^ declare const Elem2: ComponentType<{ opt?: number }>; ->Elem2 : React.ComponentType<{ opt?: number | undefined; }> -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>Elem2 : React.ComponentType<{ opt?: number; }> +> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ >opt : number | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/tsxSfcReturnNullStrictNullChecks.types b/tests/baselines/reference/tsxSfcReturnNullStrictNullChecks.types index 61eabc482967c..483ec68586afc 100644 --- a/tests/baselines/reference/tsxSfcReturnNullStrictNullChecks.types +++ b/tests/baselines/reference/tsxSfcReturnNullStrictNullChecks.types @@ -15,8 +15,8 @@ const Foo = (props: any) => null; function Greet(x: {name?: string}) { >Greet : (x: { name?: string; }) => null > : ^^^^ ^^^^^^^^^ ->x : { name?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { name?: string; } +> : ^^^^^^^^^ ^^^ >name : string | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/tsxSfcReturnUndefinedStrictNullChecks.types b/tests/baselines/reference/tsxSfcReturnUndefinedStrictNullChecks.types index e878fc2de2466..c55d47ddd8979 100644 --- a/tests/baselines/reference/tsxSfcReturnUndefinedStrictNullChecks.types +++ b/tests/baselines/reference/tsxSfcReturnUndefinedStrictNullChecks.types @@ -18,8 +18,8 @@ const Foo = (props: any) => undefined; function Greet(x: {name?: string}) { >Greet : (x: { name?: string; }) => undefined > : ^^^^ ^^^^^^^^^^^^^^ ->x : { name?: string | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>x : { name?: string; } +> : ^^^^^^^^^ ^^^ >name : string | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty2.types b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty2.types index c10587217397f..386d89a40be3f 100644 --- a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty2.types +++ b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty2.types @@ -2,8 +2,8 @@ === typeGuardNarrowsIndexedAccessOfKnownProperty2.ts === const foo: { key?: number } = {}; ->foo : { key?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>foo : { key?: number; } +> : ^^^^^^^^ ^^^ >key : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{} : {} diff --git a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty5.types b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty5.types index 049cea30662bc..9205c9c80cf8a 100644 --- a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty5.types +++ b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty5.types @@ -2,10 +2,10 @@ === typeGuardNarrowsIndexedAccessOfKnownProperty5.ts === const a: { key?: { x?: number } } = {}; ->a : { key?: { x?: number | undefined; } | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->key : { x?: number | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { key?: { x?: number; }; } +> : ^^^^^^^^ ^^^ +>key : { x?: number; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{} : {} @@ -53,8 +53,8 @@ if (a[aIndex] && a[aIndex].x) { const b: { key: { x?: number } } = { key: {} }; >b : { key: { x?: number; }; } > : ^^^^^^^ ^^^ ->key : { x?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>key : { x?: number; } +> : ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{ key: {} } : { key: {}; } diff --git a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty6.types b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty6.types index b28a27bdc3868..085f8901ec744 100644 --- a/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty6.types +++ b/tests/baselines/reference/typeGuardNarrowsIndexedAccessOfKnownProperty6.types @@ -6,10 +6,10 @@ declare const aIndex: "key"; > : ^^^^^ const a: { key?: { x?: number } } = {}; ->a : { key?: { x?: number | undefined; } | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ->key : { x?: number | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { key?: { x?: number; }; } +> : ^^^^^^^^ ^^^ +>key : { x?: number; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{} : {} @@ -55,8 +55,8 @@ declare const bIndex: "key"; const b: { key: { x?: number } } = { key: {} }; >b : { key: { x?: number; }; } > : ^^^^^^^ ^^^ ->key : { x?: number | undefined; } -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>key : { x?: number; } +> : ^^^^^^ ^^^ >x : number | undefined > : ^^^^^^^^^^^^^^^^^^ >{ key: {} } : { key: {}; } diff --git a/tests/baselines/reference/typePredicatesOptionalChaining1.types b/tests/baselines/reference/typePredicatesOptionalChaining1.types index 72aec312c66b9..fa32b42c8e299 100644 --- a/tests/baselines/reference/typePredicatesOptionalChaining1.types +++ b/tests/baselines/reference/typePredicatesOptionalChaining1.types @@ -6,8 +6,8 @@ type X = { > : ^ y?: { ->y : { z?: string | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>y : { z?: string; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ z?: string; >z : string | undefined diff --git a/tests/baselines/reference/typeofThis.types b/tests/baselines/reference/typeofThis.types index defbfd903110e..1733df2ef2b32 100644 --- a/tests/baselines/reference/typeofThis.types +++ b/tests/baselines/reference/typeofThis.types @@ -431,8 +431,8 @@ class Test10 { > : ^^^^^^ a?: { b?: string } ->a : { b?: string | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>a : { b?: string; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >b : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -533,8 +533,8 @@ class Test11 { > : ^^^^^^ this?: { x?: string }; ->this : { x?: string | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>this : { x?: string; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >x : string | undefined > : ^^^^^^^^^^^^^^^^^^ diff --git a/tests/baselines/reference/variadicTuples1.types b/tests/baselines/reference/variadicTuples1.types index cd1de20a91d57..fabe0fcf76151 100644 --- a/tests/baselines/reference/variadicTuples1.types +++ b/tests/baselines/reference/variadicTuples1.types @@ -2200,8 +2200,8 @@ declare function getUser(id: string, options?: { x?: string }): string; > : ^^^^^ ^^^^^^^^^^^^ ^^^^^ >id : string > : ^^^^^^ ->options : { x?: string | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : { x?: string; } | undefined +> : ^^^^^^ ^^^^^^^^^^^^^^^ >x : string | undefined > : ^^^^^^^^^^^^^^^^^^ @@ -2212,8 +2212,8 @@ declare function getOrgUser(id: string, orgId: number, options?: { y?: number, z > : ^^^^^^ >orgId : number > : ^^^^^^ ->options : { y?: number | undefined; z?: boolean | undefined; } | undefined -> : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +>options : { y?: number; z?: boolean; } | undefined +> : ^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^ >y : number | undefined > : ^^^^^^^^^^^^^^^^^^ >z : boolean | undefined