Apa yang dilakukan
Tempel contoh JSON, misalnya respons yang disalin dari panel Network browser, dan lihat tipe yang tersirat dalam lima format: TypeScript (interface atau type), Zod dengan z.infer, JSON Schema 2020-12, struct Go dengan tag json, dan dataclass Python. Semua diproses di browser Anda dengan parser ketat yang sama seperti pemformat JSON, yang menunjukkan baris dan kolom setiap kesalahan.
Cara tipe disimpulkan
Objek menjadi tipe bernama dari kuncinya (items → Item, bentuk tunggal untuk elemen array). Elemen array digabung menjadi satu tipe: field yang tidak ada di sebagian elemen menjadi opsional, dan jenis berbeda menjadi union, jadi [1, "a", null] adalah (string | number | null)[]. Array kosong menjadi unknown[] dan objek kosong Record<string, unknown>. Bilangan bulat dan desimal sama-sama number di TypeScript, tetapi int64/float64 di Go dan int/float di Python. Kunci yang bukan identifier ditulis dalam tanda kutip.
Batasan
Satu contoh hanya mewakili satu respons. Status adalah string, bukan union nilai yang diizinkan; tanggal adalah teks. Tempel beberapa rekaman dalam satu array untuk menggabungkannya, lalu rapikan hasilnya secara manual. Untuk data dari jaringan, skema Zod memvalidasinya saat program berjalan.