Перейти к содержимому
57 / 58

Как типизировать конфиг с вложенными вариантами (discriminated config)?

Discriminated config -- это конфиг, где тип вложенных секций зависит от значения дискриминанта (обычно поле type или driver). TypeScript через discriminated union гарантирует, что для type: 'postgres' доступны поля host, port, database, а для type: 'sqlite' -- только filename. Это убирает невалидные комбинации на уровне типов.

Как типизировать конфиг с вложенными вариантами (discriminated config)? | JScriptiser