литерал, а в Func2 выводит как общий тип string?
и как заставить ТС выводить тип максимально узко?
type Func = <T>(arg: T) => T;
type Func2 = <T>(arg: T) => { key: T };
declare const func: Func;
declare const func2: Func2;
const res = func('test'); // "test"
const res2 = func2('test'); // { key: string }
{ key : T as const }
Cannot find name 'as'. ';' expected. Declaration or statement expected.
чо за бред
ну можно например T extends string
огонь, спс
хотя чет в рабочем примере не зашло, там T может быть не только строкой, а any.
Обсуждают сегодня