ChatGPT Код 👁 17

TypeScript-типы из JSON-ответа API — генерация одной командой

Генерация TypeScript-интерфейсов из примера JSON API с правильной обработкой optional, enum и camelCase.

Промпт Запустить →
Промокод — до 25% бонусами к первому пополнению в most-ai
Сделай типы TypeScript по примеру ответа API — такие, чтобы они ловили ошибки, а не просто описывали то, что уже пришло.

Пример ответа: [JSON: {"user_id": 42, "full_name": "Анна", "email": null, "role": "admin",
"created_at": "2026-08-18T10:00:00Z", "orders": [{"id": 1, "status": "paid", "amount": 1490.5}],
"meta": {"total": 1, "next_cursor": null}}]
Что известно об API: [ЗНАНИЯ: role бывает admin, manager, guest; status — paid, pending, cancelled; email может отсутствовать вовсе, а не только быть null; amount приходит числом, но в старых записях строкой]
Как используем: [ИСПОЛЬЗОВАНИЕ: React с strict mode, ответ идёт в таблицу и в форму редактирования]

Что нужно:
1. Интерфейсы (не type) с полями в camelCase.
2. Различай `null`, `undefined` и отсутствие поля — по тому, что сказано в знаниях об API,
   а не по одному примеру.
3. Для строк с фиксированным набором — union-тип или enum, с объяснением выбора одной строкой.
4. Там, где тип нестабилен (amount строкой или числом) — покажи, как это описать и где привести
   к одному типу, а не тащить неопределённость по всему приложению.
5. JSDoc там, где имя поля не объясняет смысла.

Отсечка. Не выводи типы из одного примера молча: если в примере `email: null`, а по знаниям поле
может отсутствовать, это `email?: string | null`. Не ставь `any` и `unknown` без указания, что
именно неизвестно. Не переименовывай поля вольно: `user_id` → `userId` нормально, `id` — уже потеря
смысла. Не пиши функцию-парсер, если я не просил, — только типы и место, где нужна нормализация.

Проверка перед выдачей: проверь, поймают ли твои типы три ошибки — обращение к `email.length`
без проверки, сравнение `role === "owner"`, сложение `amount` как строки. Если хоть одна проходит,
типы слабые.
Запустить промпт →

Похожие промпты

Gemini
E2E-тест Playwright по описанию пользовательского сценария
ChatGPT
Code review с приоритизацией замечаний
ChatGPT
Docstring Python в Google-стиле по сигнатуре функции
ChatGPT
Готовый workflow n8n из описания — ChatGPT
ChatGPT
GitHub Actions workflow — CI-пайплайн для типового стека
ChatGPT
Запрос к внешнему API из n8n
Claude
ИИ-агент для ревью кода: правила проверки
Claude
Системный промпт для AI Agent ноды n8n — Claude

Пример результата

/** Пользователь системы */ interface User { id: number; email: string; role: UserRole; /** ISO 8601 */ createdAt: string; profile?: UserProfile; } enum UserRole { Admin = "admin", Editor = "editor", Viewer = "viewer" }

Полезные статьи

Промты для программиста: 43 промпта под задачи кода
Workflow ComfyUI на русском: Flux, Qwen и Wan 2.2
Шаблоны n8n на русском: готовые workflow и примеры

Все гайды →