मुफ़्त JSON से TypeScript टूल

JSON ऑब्जेक्ट्स को स्वचालित रूप से TypeScript इंटरफ़ेस में बदलें। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में, बिना साइन-अप के।

अपडेट किया गया

Share:
Home/Code Tools/JSON to TypeScript

JSON to TypeScript

Convert JSON objects to TypeScript interfaces, type aliases, Zod schemas, or JSON Schema with smart type inference, tuple detection, and history.

Quick Presets

Options

JSON Input

About JSON to TypeScript

Output Formats

  • TypeScript interfaces
  • TypeScript type aliases
  • Zod validation schemas
  • JSON Schema (draft-07)

Type Detection

  • Nested objects as separate types
  • Mixed arrays and tuple detection
  • Null vs undefined handling
  • Enum generation from strings
  • Auto-detect optional keys from samples

Features

  • Multiple samples for better inference
  • Readonly and optional modifiers
  • Namespace wrapping
  • Download as .ts or .d.ts
  • Syntax-highlighted output
  • Quick presets for common use cases
  • Ctrl+Enter keyboard shortcut

Privacy First: All processing happens locally in your browser. Your JSON data is never sent to any server.

अक्सर पूछे जाने वाले प्रश्न

JSON to TypeScript कन्वर्टर क्या है?

JSON to TypeScript कन्वर्टर एक मुफ़्त ऑनलाइन टूल है जो JSON ऑब्जेक्ट्स से स्वचालित रूप से TypeScript इंटरफ़ेस उत्पन्न करता है, जिससे टाइप परिभाषाएँ लिखने में आपका समय बचता है।

क्या JSON to TypeScript कन्वर्टर मुफ़्त है?

हाँ, यह पूरी तरह मुफ़्त है और इसके लिए किसी रजिस्ट्रेशन की ज़रूरत नहीं है। सारा रूपांतरण आपके ब्राउज़र में क्लाइंट-साइड पर होता है।

क्या यह नेस्टेड ऑब्जेक्ट्स को संभालता है?

हाँ, JSON to TypeScript कन्वर्टर गहराई से नेस्टेड ऑब्जेक्ट्स और ऐरे को संभालता है, और प्रत्येक स्तर के लिए उपयुक्त TypeScript इंटरफ़ेस उत्पन्न करता है।

क्या इस टूल के साथ मेरा डेटा सुरक्षित है?

बिल्कुल। JSON to TypeScript Tool सब कुछ आपके ब्राउज़र में क्लाइंट-साइड पर प्रोसेस करता है। कोई भी डेटा किसी सर्वर पर अपलोड या संग्रहीत नहीं किया जाता। आपकी सामग्री हर समय आपके डिवाइस पर निजी रहती है।

क्या JSON to TypeScript Tool मोबाइल डिवाइस पर काम करता है?

हाँ, JSON to TypeScript Tool पूरी तरह रिस्पॉन्सिव है और स्मार्टफ़ोन तथा टैबलेट पर काम करता है। आप इसे आधुनिक वेब ब्राउज़र वाले किसी भी डिवाइस पर इस्तेमाल कर सकते हैं, किसी ऐप को डाउनलोड करने की ज़रूरत नहीं।

क्या इस टूल का उपयोग करने के लिए मुझे खाता बनाना होगा?

किसी खाते या रजिस्ट्रेशन की ज़रूरत नहीं है। बस अपने ब्राउज़र में JSON to TypeScript Tool खोलें और तुरंत इस्तेमाल शुरू करें। कोई साइन-अप बाधा या उपयोग प्रतिबंध नहीं है।

मैं JSON to TypeScript Tool का उपयोग कैसे करूँ?

बस दिए गए फ़ील्ड में अपना इनपुट दर्ज करें, अपनी पसंद के अनुसार सेटिंग्स समायोजित करें, और टूल इसे तुरंत प्रोसेस कर देगा। फिर आप परिणाम को क्लिपबोर्ड पर कॉपी कर सकते हैं या डाउनलोड कर सकते हैं।

कौन से ब्राउज़र समर्थित हैं?

JSON to TypeScript Tool सभी आधुनिक ब्राउज़रों में काम करता है, जिनमें Chrome, Firefox, Safari, Edge और Opera शामिल हैं। सर्वोत्तम अनुभव के लिए अपने पसंदीदा ब्राउज़र का नवीनतम संस्करण उपयोग करें।

JSON डेटा के लिए TypeScript interface और type alias में क्या अंतर है?

एक interface और एक type alias एक ही JSON ढांचे को दर्शा सकते हैं, लेकिन दोनों अलग तरह से व्यवहार करते हैं। Interfaces खुले (open) होते हैं: आप एक ही interface को दो बार डिक्लेयर कर सकते हैं और TypeScript उनके मेंबर्स को मर्ज कर देता है, और ये API रिस्पॉन्स जैसे ऑब्जेक्ट मॉडल के लिए साफ़-सुथरे पढ़े जाते हैं। Type aliases को दोबारा खोला नहीं जा सकता, लेकिन ये यूनियन, इंटरसेक्शन, और मैप्ड टाइप्स के लिए ज़्यादा लचीले होते हैं, इसलिए ये उन फ़ील्ड्स के लिए उपयुक्त हैं जो कई ढांचों में से कोई एक हो सकते हैं। ज़्यादातर सादे API पेलोड्स के लिए दोनों काम करते हैं और चुनाव स्टाइल का मामला है, हालांकि कई टीमें ऑब्जेक्ट मॉडल के लिए डिफ़ॉल्ट रूप से interfaces इस्तेमाल करती हैं और जब यूनियन शामिल हो तो type aliases की तरफ़ जाती हैं। यह कन्वर्टर एक ही JSON से दोनों जनरेट करता है, साथ ही Zod schemas और JSON Schema भी, ताकि आप एक क्लिक में आउटपुट फ़ॉर्मैट बदलकर तुलना कर सकें। यह दोनों ही तरीकों में नेस्टेड ऑब्जेक्ट्स को उनकी अपनी नाम वाली डेक्लेरेशन में अलग निकालता है। अपना JSON पेस्ट करें, interface या type alias चुनें, और नतीजे को सीधे .ts फ़ाइल में कॉपी करें।

एक अकेला JSON सैंपल गलत ऑप्शनल फ़ील्ड्स क्यों देता है, और मैं इसे कैसे ठीक करूं?

एक अकेला रिस्पॉन्स सिर्फ़ वही फ़ील्ड्स दिखाता है जो उस एक बार मौजूद थे। अगर कोई एंडपॉइंट कभी-कभी avatar_url छोड़ देता है या nickname के लिए null लौटाता है, तो जो कन्वर्टर सिर्फ़ एक पेलोड देखता है वह उन फ़ील्ड्स को हमेशा ज़रूरी (required) मान लेगा, और आपके टाइप्स असल डेटा के बारे में झूठ बोलेंगे। इसका समाधान है कई सैंपल मर्ज करना ताकि टूल उनकी तुलना कर सके। यह कन्वर्टर कई JSON उदाहरण स्वीकार करता है और उनके ढांचों को मर्ज करता है: जो key हर सैंपल में मौजूद हो वह ज़रूरी रहती है, जबकि जो key किसी भी सैंपल में गायब हो उसे ऑप्शनल माना जाता है। नतीजा यह दर्शाता है कि API असल में सभी रिस्पॉन्सेज़ में कैसे व्यवहार करता है, न कि सिर्फ़ एक सौभाग्यशाली पेलोड में, जिसका मतलब है कि जब कोई फ़ील्ड जिसे आपने हमेशा मौजूद समझा था वह गायब निकले तो रनटाइम पर कम आश्चर्य होंगे। कुछ अलग-अलग रिस्पॉन्स पेस्ट करें, टूल को उन्हें मिलाने दें, और आपको ज़रूरी बनाम ऑप्शनल फ़ील्ड्स अपने-आप सही मिल जाएंगी।

JSON से सिर्फ़ TypeScript interface की बजाय Zod schema कैसे जनरेट करूं?

एक सादा interface सिर्फ़ कंपाइल-टाइम पर मौजूद होता है, इसलिए यह यह जांच नहीं कर सकता कि रनटाइम पर आने वाला डेटा वाकई मेल खाता है या नहीं। Zod इसका हल इस तरह देता है कि आपको एक स्कीमा मिलती है जिस पर आप .parse() कॉल करके आने वाले JSON को वैलिडेट कर सकते हैं और उसी डेफिनिशन से मेल खाता टाइप इन्फर कर सकते हैं। इस कन्वर्टर में, आउटपुट फ़ॉर्मैट को interface से Zod schema पर बदलें और यह आपके JSON से एक z.object({ ... }) डेक्लेरेशन जनरेट कर देगा, जिसमें नेस्टेड ऑब्जेक्ट्स अपनी अलग स्कीमा के रूप में व्यक्त होंगे। ऑप्शनल और nullable हैंडलिंग बरकरार रहती है, तो जो फ़ील्ड कभी-कभी गायब होती है वह .optional() बन जाती है और जो null हो सकती है वह .nullable() बन जाती है। इसके अलावा एक क्लिक वाला Zod Validation प्रीसेट भी है जो समझदार डिफ़ॉल्ट सेट करता है। अपना JSON पेस्ट करें, Zod आउटपुट चुनें, और एक ऐसी स्कीमा कॉपी करें जो आपके डेटा को टाइप भी करे और वैलिडेट भी।

क्या कन्वर्टर सादे string की बजाय UUID, email, या date string जैसे खास टाइप्स पहचान सकता है?

डिफ़ॉल्ट रूप से हर JSON string व्यापक TypeScript टाइप string में मैप होती है, जो सही तो है लेकिन अर्थ खो देती है। जब आप स्पेशल-टाइप डिटेक्शन ऑन करते हैं, तो कन्वर्टर string वैल्यूज़ की जांच करता है और आम फ़ॉर्मैट पहचानता है — UUID, ईमेल एड्रेस, URL, और ISO डेट स्ट्रिंग — ताकि हर जगह सामान्य string की बजाय आपको ज़्यादा विवरणात्मक आउटपुट मिले। यह ऐरे को भी ज़्यादा समझदारी से हैंडल करता है: फ़िक्स्ड-लेंथ मिक्स्ड-टाइप ऐरे को एक ही एलिमेंट टाइप में समेटने की बजाय टपल के रूप में पहचाना जाता है, जिससे पोज़िशनल डेटा सटीक रहता है। ये व्यवहार डिफ़ॉल्ट रूप से बंद रहते हैं ताकि इन्फरेंस कितनी आक्रामक हो, यह नियंत्रण आपके हाथ में रहे, और Strict व API Response जैसे प्रीसेट संबंधित ऑप्शनों को एक ही क्लिक में चालू कर देते हैं। इनपुट के ऊपर स्पेशल-टाइप डिटेक्शन टॉगल करें, अपना JSON पेस्ट करें, और जनरेट किए गए टाइप्स सब कुछ string में समेटने की बजाय आपकी वैल्यूज़ के असल आकार और अर्थ को दर्शाएंगे।

nullable फ़ील्ड्स के लिए null, undefined, और T | null यूनियन में से कैसे चुनूं?

JSON गायब वैल्यू के लिए null इस्तेमाल करता है, लेकिन TypeScript उसे मॉडल करने के तीन तरीके देता है, और सही तरीका आपके कोड पर निर्भर करता है। undefined इस्तेमाल करना ऑप्शनल प्रॉपर्टीज़ के साथ स्वाभाविक रूप से मेल खाता है और यही तब मिलता है जब कोई key ऑब्जेक्ट से बस गायब हो। literal null इस्तेमाल करना JSON के वायर फ़ॉर्मैट से बिल्कुल मेल खाता है, जो तब उपयोगी है जब आप वापस किसी API में सीरियलाइज़ करते हैं। T | null यूनियन फ़ील्ड को ज़रूरी बनाए रखता है जबकि स्पष्ट रूप से null की अनुमति देता है, जिससे कॉलर्स को खाली स्थिति संभालनी ही पड़ती है। यह कन्वर्टर एक null-हैंडलिंग ऑप्शन देता है ताकि आप null, undefined, या nullable यूनियन में से चुन सकें, और यह चुनाव हर जनरेट की गई फ़ील्ड पर एक जैसा लागू होता है। इनपुट के ऊपर अपनी पसंद सेट करें, अपना JSON पेस्ट करें, और ऐसे टाइप्स कॉपी करें जो यह दर्शाते हों कि आपका ऐप्लिकेशन गायब डेटा को कैसे संभालता है।

Embed This Tool

Add a free, live version of this widget to your own website or blog post — it runs entirely in your visitors' browsers, with a credit link back to The Toolbox.

Copy & paste this HTML
<iframe src="https://getthetoolbox.com/embed/json-to-typescript" title="Free JSON to TypeScript Tool — The Toolbox" width="100%" height="400" style="max-width:480px;border:1px solid #e2e8f0;border-radius:12px" loading="lazy"></iframe>
<p style="font-size:12px;margin:4px 0 0"><a href="https://getthetoolbox.com/code-tools/json-to-typescript?utm_source=embed&utm_medium=widget" target="_blank" rel="noopener">Free JSON to TypeScript Tool</a> by The Toolbox</p>

संबंधित टूल

मुफ़्त CSS मिनिफायर ऑनलाइन

फ़ाइल आकार कम करने और लोडिंग गति सुधारने के लिए CSS कोड को मिनिफाई करें। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

मुफ़्त JavaScript मिनिफायर

फ़ाइल आकार कम करने और प्रदर्शन बेहतर करने के लिए JavaScript कोड को मिनिफाई करें। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

मुफ़्त HTML मिनिफायर ऑनलाइन

पेज का आकार और लोडिंग समय घटाने के लिए HTML कोड को मिनिफाई करें। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में, बिना साइन-अप के।

मुफ़्त SQL फ़ॉर्मेटर और ब्यूटिफायर

बेहतर पठनीयता के लिए SQL क्वेरी को फ़ॉर्मेट और सुंदर बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में, बिना साइन-अप के।

JSON to TypeScript टूल के बारे में

JSON to TypeScript टूल किसी भी कच्चे JSON ऑब्जेक्ट को तुरंत इस्तेमाल के लायक टाइप डेफिनिशन में बदल देता है। किसी API रिस्पॉन्स, कॉन्फ़िग फ़ाइल, या किसी भी JSON सैंपल को पेस्ट करें, और यह आपके डेटा का ढांचा पहचानकर मेल खाती interface डेक्लेरेशन जनरेट कर देता है — बिल्कुल रिकर्सिवली, नेस्टेड ऑब्जेक्ट्स और ऐरे में सबसे नीचे तक। दर्जनों फ़ील्ड हाथ से टाइप करने और यह अंदाज़ा लगाते रहने के बजाय कि कोई वैल्यू string है, number है, या कोई और ऑब्जेक्ट है, आपको एक पूरा टाइप ट्री मिल जाता है जिसे सीधे किसी .ts फ़ाइल में डाला जा सकता है।

यह उन TypeScript डेवलपर्स के लिए बनाया गया है जो अनटाइप्ड डेटा के साथ काम करते हैं: REST एंडपॉइंट्स इस्तेमाल करने वाले फ्रंट-एंड इंजीनियर, बिना पब्लिश्ड टाइप्स वाली किसी थर्ड-पार्टी API को जोड़ने वाला कोई भी व्यक्ति, और वे टीमें जो चाहती हैं कि उनका रनटाइम डेटा और कंपाइल-टाइम टाइप्स वाकई एक-दूसरे से मेल खाएं।

सब कुछ आपके ब्राउज़र में ही चलता है। आपका JSON आपकी अपनी डिवाइस पर पार्स और कन्वर्ट होता है, बिना किसी अपलोड, अकाउंट या साइनअप के, जो तब मायने रखता है जब पेलोड में टोकन, इंटरनल फ़ील्ड नेम, या प्रोडक्शन रिस्पॉन्स बॉडी हों जिन्हें आप किसी रिमोट सर्विस में पेस्ट नहीं करना चाहेंगे।

सिर्फ इंटरफ़ेस नहीं, चार आउटपुट फ़ॉर्मैट

यह टूल सिर्फ़ प्लेन इंटरफ़ेस से ज़्यादा जनरेट करता है। आप आउटपुट को इनके बीच बदल सकते हैं:

  • TypeScript interface — क्लासिक interface User { ... } डेक्लेरेशन, जिसमें नेस्टेड ऑब्जेक्ट्स को उनके अपने नाम वाले इंटरफ़ेस में अलग निकाल लिया जाता है।
  • TypeScript type alias — वही ढांचा इंटरफ़ेस की बजाय type एलियास के रूप में व्यक्त किया गया, जो यूनियन और ज़्यादा सख़्त कंपोज़िशन के लिए उपयोगी है।
  • Zod schema — एक रनटाइम-वैलिडेशन स्कीमा (z.object({ ... })) ताकि आप डेटा को उसकी बाउंड्री पर टाइप और वैलिडेट दोनों कर सकें।
  • JSON Schema — डॉक्यूमेंटेशन, वैलिडेशन, या दूसरे कोड जनरेटर में इस्तेमाल के लिए एक पोर्टेबल स्कीमा डेफिनिशन।

टाइप्स कैसे इन्फर हों, यह आप तय करें

टाइप जनरेशन शायद ही कभी एक-जैसा फ़िट होता है, इसलिए यह कन्वर्ज़न पूरी तरह कॉन्फ़िगर करने लायक है। आप रूट टाइप का नाम सेट कर सकते हैं, एक्सपोर्ट स्टाइल (named export, default export, या none) चुन सकते हैं, और जनरेट किए गए टाइप नामों के लिए एक नेमिंग कन्वेंशन (PascalCase या camelCase) चुन सकते हैं। फ़ील्ड-लेवल ऑप्शन आपको हर प्रॉपर्टी को ऑप्शनल मार्क करने, readonly मॉडिफ़ायर जोड़ने, और यह चुनने देते हैं कि null को कैसे दर्शाया जाए — null, undefined, या एक T | null यूनियन के रूप में। JSDoc कमेंट जनरेशन आम फ़ील्ड्स के ऊपर छोटे विवरण जोड़ता है, और ऐरे आइटम टाइप्स को सिंगुलर किया जा सकता है ताकि users ऐरे से Users की बजाय User टाइप मिले।

यह इन्फरेंस कुछ व्यावहारिक तरीकों से भोले-भाले टाइप-अंदाज़े से कहीं ज़्यादा स्मार्ट है। यह टपल-आकार वाले ऐरे (फ़िक्स्ड-लेंथ, मिक्स्ड-टाइप) को पहचान सकता है, बजाय इसके कि उन्हें एक ही एलिमेंट टाइप में समेट दिया जाए, और जब आप स्पेशल-टाइप डिटेक्शन ऑन करते हैं तो यह आम स्ट्रिंग फ़ॉर्मैट को भी पहचानता है — UUID, ईमेल, URL, और ISO डेट स्ट्रिंग। Strict, Minimal, API Response, Zod Validation, और Form Data जैसे सेव्ड प्रीसेट एक क्लिक में इन ऑप्शनों के सही कॉम्बिनेशन लागू कर देते हैं।

सटीक ऑप्शनल फ़ील्ड्स के लिए कई सैंपल मर्ज करें

एक अकेला JSON उदाहरण अक्सर आपके डेटा के बारे में झूठ बोलता है। हो सकता है एक API रिस्पॉन्स में कोई फ़ील्ड छूट जाए जो दूसरे में मौजूद हो, और एक भोला-भाला कन्वर्टर उसे हमेशा मौजूद मान लेगा। यह टूल आपको कई JSON सैंपल देने देता है और उन्हें मर्ज करता है: जो key हर सैंपल में मौजूद हो वह ज़रूरी (required) ही रहती है, जबकि जो key किसी सैंपल में गायब हो उसे सही तरीके से ऑप्शनल माना जाता है। नतीजा ऐसे टाइप डेफिनिशन होते हैं जो यह दर्शाते हैं कि एंडपॉइंट असल में सभी रिस्पॉन्सेज़ में कैसे व्यवहार करता है, न कि सिर्फ़ एक सौभाग्यशाली पेलोड में।

आपको क्या मिलता है

कन्वर्ज़न तुरंत होता है और जैसे-जैसे आप एडिट करते हैं, अपडेट होता रहता है। आउटपुट पढ़ने में आसानी के लिए सिंटैक्स-हाइलाइटेड होता है और साथ में जनरेट किए गए कोड का एक संक्षिप्त सारांश आता है — टाइप्स की संख्या, कुल प्रॉपर्टीज़, अधिकतम नेस्टिंग गहराई, और लाइन काउंट। जब आप संतुष्ट हों, तो नतीजे को क्लिपबोर्ड पर कॉपी करें या इसे .ts फ़ाइल के रूप में डाउनलोड करें। एक बिल्ट-इन सैंपल मान्य JSON लोड कर देता है अगर आप सिर्फ़ यह देखना चाहते हैं कि कोई ऑप्शन आउटपुट को कैसे बदलता है, और आपके हाल के कन्वर्ज़न लोकल ब्राउज़र हिस्ट्री में रखे जाते हैं ताकि आप बिना दोबारा पेस्ट किए पहले वाले नतीजे पर लौट सकें।