TypeScript में किसी प्रकार से गुण को बाहर कैसे करें (Exclude property from type)
सभी को नमस्कार! मैं TypeScript में नया हूँ और ऑब्जेक्ट प्रकारों के साथ काम करते समय एक समस्या का सामना करना पड़ा। मेरे पास एक इंटरफ़ेस `User` है जिसमें कई फ़ील्ड हैं: `id`, `name`, `email`, `password`, `createdAt`, `role` आदि। जब मैं API से उपयोगकर्ता डेटा लौटाता हूँ, तो मैं क्लाइंट को `password` और `createdAt` नहीं देना चाहता (ये आंतरिक फ़ील्ड हैं)।
समस्या यह है कि मैं उपयोगकर्ता के सार्वजनिक प्रतिनिधित्व के लिए एक अलग इंटरफ़ेस नहीं बनाना चाहता, क्योंकि इससे कोड डुप्लिकेट होता है। यदि मैं `User` में एक नया फ़ील्ड जोड़ता हूँ, तो मुझे इसे सार्वजनिक इंटरफ़ेस में भी जोड़ना याद रखना होगा।
यहाँ एक उदाहरण है:
```typescript
interface User {
id: number;
name: string;
email: string;
password: string;
createdAt: Date;
role: 'admin' | 'user';
}
// बिना password और createdAt के प्रकार कैसे प्राप्त करें?
// कुछ इस तरह चाहिए:
// type PublicUser = ExcludeProperty;
```
मैंने `Omit` का उपयोग करने की कोशिश की, लेकिन मुझे यकीन नहीं है कि यह सही है।