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;
