17 lines
1.2 KiB
Plaintext
17 lines
1.2 KiB
Plaintext
tests/cases/compiler/assignmentCompatability10.ts(9,1): error TS2322: Type 'interfaceWithPublicAndOptional<number, string>' is not assignable to type 'classWithPublicAndOptional<number, string>'.
|
|
Property 'two' is optional in type 'interfaceWithPublicAndOptional<number, string>' but required in type 'classWithPublicAndOptional<number, string>'.
|
|
|
|
|
|
==== tests/cases/compiler/assignmentCompatability10.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 class classWithPublicAndOptional<T,U> { constructor(public one: T, public two?: U) {} } var x4 = new classWithPublicAndOptional<number, string>(1);;
|
|
export var __val__x4 = x4;
|
|
}
|
|
__test2__.__val__x4 = __test1__.__val__obj4
|
|
~~~~~~~~~~~~~~~~~~~
|
|
!!! error TS2322: Type 'interfaceWithPublicAndOptional<number, string>' is not assignable to type 'classWithPublicAndOptional<number, string>'.
|
|
!!! error TS2322: Property 'two' is optional in type 'interfaceWithPublicAndOptional<number, string>' but required in type 'classWithPublicAndOptional<number, string>'. |