1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
=== tests/cases/compiler/partialDiscriminatedUnionMemberHasGoodError.ts ===
interface TypeA {
type: "A";
>type : "A"
param: string;
>param : string
}
interface TypeB {
type: "B";
>type : "B"
param: string;
>param : string
}
type ValidType = TypeA | TypeB;
>ValidType : TypeA | TypeB
interface Wrapper {
types: ValidType[];
>types : ValidType[]
}
const foo: Wrapper[] = [];
>foo : Wrapper[]
>[] : undefined[]
foo.push({
>foo.push({ types: [{ type: "A" }]}) : number
>foo.push : (...items: Wrapper[]) => number
>foo : Wrapper[]
>push : (...items: Wrapper[]) => number
>{ types: [{ type: "A" }]} : { types: { type: "A"; }[]; }
types: [{
>types : { type: "A"; }[]
>[{ type: "A" }] : { type: "A"; }[]
>{ type: "A" } : { type: "A"; }
type: "A"
>type : "A"
>"A" : "A"
}]
});
|