Я загружаю файл конфигурации JSON во время выполнения и использую интерфейс для определения его ожидаемой структуры:
interface EngineConfig {
pathplanner?: PathPlannerConfig;
debug?: DebugConfig;
...
}
interface PathPlannerConfig {
nbMaxIter?: number;
nbIterPerChunk?: number;
heuristic?: string;
}
interface DebugConfig {
logLevel?: number;
}
...
Это упрощает доступ к различным свойствам, поскольку я могу использовать автозаполнение и т.д.
Вопрос: есть ли способ использовать это объявление, чтобы проверить правильность загружаемого файла? т.е. что у меня нет неожиданных свойств?