Avatar ·

TypeScript में *.d.ts फ़ाइलें क्या हैं और उनकी आवश्यकता क्यों है?

सभी को नमस्कार! मैंने हाल ही में TypeScript सीखना शुरू किया है और मुझे एक ऐसी चीज़ मिली जो मुझे समझ नहीं आई। प्रोजेक्ट्स में मैं अक्सर `.d.ts` एक्सटेंशन वाली फ़ाइलें देखता हूँ। उदाहरण के लिए, एक `node_modules` फ़ोल्डर है, और उसके अंदर लाइब्रेरीज़ में ऐसी फ़ाइलें होती हैं। मैंने उनमें से एक खोला, और उसमें कुछ इस तरह था: ```typescript declare module 'lodash' { export function chunk(array: T[], size?: number): T[][]; } ``` मुझे पूरी तरह से समझ नहीं आया कि यह क्या है। क्या यह TypeScript फ़ाइलों का कोई अलग प्रकार है? अगर हमारे पास सामान्य `.ts` फ़ाइलें हैं तो इनकी आवश्यकता क्यों है? मैंने खुद ऐसी फ़ाइल बनाने की कोशिश की और उसमें कुछ कोड लिखा, लेकिन जब मैंने `declare` कीवर्ड के बिना वेरिएबल घोषित करने की कोशिश की तो कंपाइलर ने त्रुटि दी। इसके अलावा, मैंने देखा कि अगर मैं किसी ऐसी लाइब्रेरी से `import` लिखता हूँ जिसमें ऐसी फ़ाइलें नहीं हैं, तो TypeScript "Cannot find module" त्रुटि देता है। तो क्या ये `.d.ts` फ़ाइलें TypeScript को यह समझने में मदद करती हैं कि सामान्य JavaScript कोड में कौन से types हैं? मैं विस्तृत स्पष्टीकरण के लिए आभारी रहूंगा, अधिमानतः उदाहरणों के साथ।