=== tests/cases/compiler/arrayAugment.ts === interface Array { >Array : Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11), Decl(arrayAugment.ts, 0, 0)) >T : Symbol(T, Decl(lib.d.ts, 1007, 16), Decl(arrayAugment.ts, 0, 16)) split: (parts: number) => T[][]; >split : Symbol(split, Decl(arrayAugment.ts, 0, 20)) >parts : Symbol(parts, Decl(arrayAugment.ts, 1, 12)) >T : Symbol(T, Decl(lib.d.ts, 1007, 16), Decl(arrayAugment.ts, 0, 16)) } var x = ['']; >x : Symbol(x, Decl(arrayAugment.ts, 4, 3)) var y = x.split(4); >y : Symbol(y, Decl(arrayAugment.ts, 5, 3), Decl(arrayAugment.ts, 6, 3)) >x.split : Symbol(Array.split, Decl(arrayAugment.ts, 0, 20)) >x : Symbol(x, Decl(arrayAugment.ts, 4, 3)) >split : Symbol(Array.split, Decl(arrayAugment.ts, 0, 20)) var y: string[][]; // Expect no error here >y : Symbol(y, Decl(arrayAugment.ts, 5, 3), Decl(arrayAugment.ts, 6, 3))