File: partialOfLargeAPIIsAbleToBeWorkedWith.ts

package info (click to toggle)
node-typescript 4.9.5%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 533,908 kB
  • sloc: javascript: 2,018,330; makefile: 7; sh: 1
file content (71 lines) | stat: -rw-r--r-- 1,835 bytes parent folder | download | duplicates (4)
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
// @strict: true
interface MyAPI {
    0: (x: 0) => string;
    1: (x: 1) => string;
    2: (x: 2) => string;
    3: (x: 3) => string;
    4: (x: 4) => string;
    5: (x: 5) => string;
    6: (x: 6) => string;
    7: (x: 7) => string;
    8: (x: 8) => string;
    9: (x: 9) => string;
    10: (x: 10) => string;
    11: (x: 11) => string;
    12: (x: 12) => string;
    13: (x: 13) => string;
    14: (x: 14) => string;
    15: (x: 15) => string;
    16: (x: 16) => string;
    17: (x: 17) => string;
    18: (x: 18) => string;
    19: (x: 19) => string;
    20: (x: 20) => string;
    21: (x: 21) => string;
    22: (x: 22) => string;
    23: (x: 23) => string;
    24: (x: 24) => string;
    25: (x: 25) => string;
    26: (x: 26) => string;
    27: (x: 27) => string;
    28: (x: 28) => string;
    29: (x: 29) => string;
    30: (x: 30) => string;
    31: (x: 31) => string;
    32: (x: 32) => string;
    33: (x: 33) => string;
    34: (x: 34) => string;
    35: (x: 35) => string;
    36: (x: 36) => string;
    37: (x: 37) => string;
    38: (x: 38) => string;
    39: (x: 39) => string;
    40: (x: 40) => string;
    41: (x: 41) => string;
    42: (x: 42) => string;
    43: (x: 43) => string;
    44: (x: 44) => string;
    45: (x: 45) => string;
    46: (x: 46) => string;
    47: (x: 47) => string;
    48: (x: 48) => string;
    49: (x: 49) => string;
    50: (x: 50) => string;
    51: (x: 51) => string;
}

const obj: Partial<MyAPI> = {};

declare var keys: (keyof MyAPI)[];

for (const k of keys) {
    obj[k] = () => "12"; // shouldn't cause a complexity error
}

type PartialNull<T> = {[K in keyof T]?: T[K] | null};

const obj2: PartialNull<MyAPI> = {};

for (const k of keys) {
    obj2[k] = () => "12"; // shouldn't cause a complexity error
}