TypeScript тип в JSON Schema
Преобразуйте интерфейс или псевдоним типа TypeScript в JSON Schema.
TypeScript тип в JSON Schema
Вставьте интерфейс TypeScript или псевдоним типа — этот инструмент создаст эквивалентный JSON Schema для валидации данных API, конфигурационных файлов и любых других JSON-структур, соответствующих вашим типам. Предназначен для разработчиков, которые описывают формат данных на TypeScript и хотят получить schema без написания его с нуля или настройки отдельного build-шага.
Выбирайте между JSON Schema draft-07 и новым диалектом 2020-12 — валидаторы и инструменты по-прежнему различаются в поддержке версий. Строковые объединения вроде 'active' | 'inactive' могут быть отрендерены как enum или как anyOf с const-значениями. Вы можете требовать отклонения неизвестных свойств объектов, преобразовывать doc-комментарии в поля description или выносить именованные интерфейсы в блок $defs (или definitions) на которые ссылаются через $ref вместо инлайн-вставки везде.
Массивы, кортежи, типы Record и Map, объединения с null — всё обрабатывается так, как TypeScript их использует. Конструкции без эквивалента в JSON Schema, такие как методы, типы функций или неразрешённые параметры generics, конвертируются максимально permissively и выводятся предупреждениями под результатом, чтобы ничего не сломалось незаметно.
Всё работает локально в браузере — ваши типы и сгенерированный schema никогда не отправляются никуда. Копируйте результат, скачивайте как .txt или передавайте прямо в другой инструмент.