我有一個使用JavaScript編寫的外部SDK。其中一個模塊Blob
是新功能,但也暴露了枚舉FooEnum
(成員Bar
和Baz
)。TypeScript newable和枚舉參考
JavaScript中使用該SDK代碼是像這樣:
const blobInstance = new Sdk.Blob();
const fooType = Sdk.Blob.FooEnum.Baz;
我現在想寫,我可以爲了給我一些類型的安全施放此SDK給的接口。以下是我到目前爲止有:
interface BlobInterface { }
enum Foo {
Bar,
Baz
}
interface Sdk {
Blob: {
new(): BlobInterface;
FooEnum: Foo;
}
}
我的問題,但是,當我引用Blob.FooEnum
,它認爲FooEnum
本身實際上是枚舉Foo
的成員(即它認爲它是Bar
或Baz
),因此,不讓我從中得到Baz
。
我該如何告訴TypeScript Blob.FooEnum
實際上指向枚舉本身並且不是枚舉的成員?