मेरे पास जावास्क्रिप्ट में लिखा गया एक बाहरी एसडीके है जिसका मैं उपयोग कर रहा हूं। इन मॉड्यूल में से एक, Blob
नया सक्षम है, लेकिन यह भी एक enum FooEnum
(सदस्यों Bar
और Baz
) का खुलासा करता है।टाइपस्क्रिप्ट नया और enum संदर्भ
जावास्क्रिप्ट में इस SDK का उपयोग करने के लिए कोड तो की तरह है:
const blobInstance = new Sdk.Blob();
const fooType = Sdk.Blob.FooEnum.Baz;
मैं अब एक अंतरफलक है कि मैं आदेश मुझे कुछ प्रकार सुरक्षा देने के लिए करने के लिए इस एसडीके डाल सकता लिखने की कोशिश कर रहा हूँ।
interface BlobInterface { }
enum Foo {
Bar,
Baz
}
interface Sdk {
Blob: {
new(): BlobInterface;
FooEnum: Foo;
}
}
मेरे समस्या है, तथापि, जब मैं संदर्भ Blob.FooEnum
, यह सोचता है कि कि FooEnum
ही वास्तव में enum Foo
का एक सदस्य है है (यानी यह मानना है कि यह Bar
है: यहाँ मैं अब तक क्या मिल गया है है या Baz
) और इसलिए, मुझे Baz
इससे प्राप्त नहीं होने देता है।
मैं टाइपस्क्रिप्ट को कैसे बता सकता हूं कि Blob.FooEnum
वास्तव में enum को इंगित करता है और enum का सदस्य नहीं है?