@vonage/client-sdk
Version:
The Client SDK is intended to provide a ready solution for developers to build Programmable Conversation applications across multiple Channels including: Messages, Voice, SIP, websockets, and App.
11 lines (10 loc) • 634 B
TypeScript
export type KotlinClass = Function & {
prototype: {
name: string;
};
};
export type KotlinEnum<T extends KotlinClass> = Lowercase<T['prototype']['name']> | {
[K in keyof T]: T[K extends T['prototype']['name'] ? K : never];
}[keyof T];
export type KotlinEnumValue<T extends KotlinClass, V extends KotlinEnum<T> = KotlinEnum<T>> = V extends Lowercase<T['prototype']['name']> ? T[keyof T extends string ? Uppercase<V> : never] : V;
export declare const jsEnumToVonageObject: <K extends KotlinClass, T extends KotlinEnum<K>, R extends KotlinEnumValue<K, T>>(kotlinType: K, value: T) => R | null | undefined;