Es posible simplificar el tipo que se muestra en el tipo de descripción que es visible cuando se me pase el ratón sobre una variable en el Manuscrito?
Tengo el siguiente código:
type Debug<T> = {
[key in keyof T]: T[key]
}
type Chainable<Acc = {}> = {
option: <K extends string, V>(key: K, value: V) => Chainable<Acc & {[k in K]: V}>;
get: () => Debug<Acc>;
}
declare const config: Chainable
const result = config
.option('foo', 123)
.option('name', 'type-challenges')
.option('bar', { value: 'Hello World' })
.get()
type X = typeof result;
Cuando me pase por encima result
variable que obtengo:
[
Sin embargo, cuando me pase por encima type X
Veo:
Preguntas:
- ¿Por qué son los tipos de muestra de manera diferente? (Aunque éstos representan la misma cosa)
- Es allí una manera de mostrar el tipo como se muestra en la segunda pantalla?