Typescript admite tipos condicionales . Pero cuando trato de establecer el valor de op como cadena, me da un error, ¿cómo verifico el tipo y asigno el valor?
export const t = <IsMulti extends boolean = false>(): void => { const value = 'test'; type S = string; type D = IsMulti extends true ? S[] : S; const op: D = value; console.log(op); }; Error: Type 'string' is not assignable to type 'D'.
Incluso he intentado agregar un parámetro del mismo tipo IsMulti y agregar un control basado en él.
export const t = <IsMulti extends boolean = false>(isMulti: IsMulti): void => { const value = 'test'; type S = string; type D = IsMulti extends true ? S[] : S; if (!isMulti) { const op: D = value; console.log(op); } };