Búsqueda de sitios web

typescript - Creando un tipo basado en las claves de un archivo JSON


¿Es posible crear un tipo a partir del contenido de un módulo json importado?

es decir

import * as config from './config.json'

config.json

{
    "known_value": {
        "unknown_key": "value",
        "unknown_key2": "value2",
    }
}

Lo intenté

type functions = keyof config.known_value;

esperando producir:

type functions = 'unknown_key' | 'unknown_key2';

Respuesta #1

Editar

En realidad malinterpreté la pregunta, no simplemente te faltó un paso, te estaba faltando el concepto de typeof, que se puede usar para extraer el tipo de un valor.


Simplemente te falta el último paso, extraer las claves de known_value

type Keys = keyof typeof config.known_value

Artículos relacionados