18 lines
1 KiB
Text
18 lines
1 KiB
Text
|
==== tests/cases/compiler/assignmentCompatability19.ts (1 errors) ====
|
||
|
module __test1__ {
|
||
|
export interface interfaceWithPublicAndOptional<T,U> { one: T; two?: U; }; var obj4: interfaceWithPublicAndOptional<number,string> = { one: 1 };;
|
||
|
export var __val__obj4 = obj4;
|
||
|
}
|
||
|
module __test2__ {
|
||
|
export var obj = {two: [1]};
|
||
|
export var __val__obj = obj;
|
||
|
}
|
||
|
__test2__.__val__obj = __test1__.__val__obj4
|
||
|
~~~~~~~~~~~~~~~~~~~~
|
||
|
!!! Type 'interfaceWithPublicAndOptional<number, string>' is not assignable to type '{ two: number[]; }':
|
||
|
!!! Types of property 'two' are incompatible:
|
||
|
!!! Type 'string' is not assignable to type 'number[]':
|
||
|
!!! Types of property 'concat' are incompatible:
|
||
|
!!! Type '(...strings: string[]) => string' is not assignable to type '{ <U extends number[]>(...items: U[]): number[]; (...items: number[]): number[]; }':
|
||
|
!!! Types of parameters 'strings' and 'items' are incompatible:
|
||
|
!!! Type 'string' is not assignable to type 'number'.
|