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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
=== tests/cases/compiler/emptyOptionalBindingPatternInDeclarationSignature.ts ===
// #50791
declare function fn1({}?: { x: string }): void;
>fn1 : ({}?: { x: string;}) => void
>x : string
declare function fn2({ x }?: { x: string }): void;
>fn2 : ({ x }?: { x: string;}) => void
>x : string
>x : string
declare function fn3([]?: [ x: string ]): void;
>fn3 : ([]?: [x: string]) => void
declare function fn4([ x ]?: [ x: string ]): void;
>fn4 : ([x]?: [x: string]) => void
>x : string
declare class C1 {
>C1 : C1
method({}?: { x: string }): void
>method : ({}?: { x: string;}) => void
>x : string
static method2({}?: { x: string }): void
>method2 : ({}?: { x: string;}) => void
>x : string
static field: ({}?: { x: string }) => void
>field : ({}?: { x: string;}) => void
>x : string
static field2: ({}?: { x: string }) => void
>field2 : ({}?: { x: string;}) => void
>x : string
}
interface I1 {
method({}?: { x: string }): void
>method : ({}?: { x: string;}) => void
>x : string
method2: ({}?: { x: string }) => void
>method2 : ({}?: { x: string;}) => void
>x : string
}
type T1 = ({}?: { x: string }) => void
>T1 : ({}?: { x: string;}) => void
>x : string
type T2 = {
>T2 : { method({}?: { x: string;}): void; method2: ({}?: { x: string;}) => void; }
method({}?: { x: string }): void
>method : ({}?: { x: string;}) => void
>x : string
method2: ({}?: { x: string }) => void
>method2 : ({}?: { x: string;}) => void
>x : string
}
declare const val1: ({}?: { x: string }) => void
>val1 : ({}?: { x: string;}) => void
>x : string
declare const val2: {
>val2 : { method({}?: { x: string;}): void; method2: ({}?: { x: string;}) => void; }
method({}?: { x: string }): void
>method : ({}?: { x: string;}) => void
>x : string
method2: ({}?: { x: string }) => void
>method2 : ({}?: { x: string;}) => void
>x : string
}
|