@usekana/client-kana-js
Version:
Kana frontend JavaScript client
28 lines (25 loc) • 803 B
text/typescript
export type KanaBaseGroupClientConfig = {
endpoint?: string;
version?: string;
onError?: (error: Error) => Promise<void>;
retry?: (error: Error, retryNumber: number) => boolean;
};
export type KanaGroupTokenClientConfig = KanaBaseGroupClientConfig & {
groupToken: string;
};
export type KanaPublicApiKeyClientConfig = KanaBaseGroupClientConfig & {
apiKey: string;
groupId: string;
};
export type KanaGroupClientConfig =
| KanaGroupTokenClientConfig
| KanaPublicApiKeyClientConfig;
export type KanaGroupClientFullConfig = {
endpoint: string;
version: string;
onError?: (error: Error) => Promise<void>;
retry?: (error: Error, retryNumber: number) => boolean;
} & (
| { type: 'GroupToken'; groupToken: string }
| { type: 'PublicApiKey'; apiKey: string; groupId: string }
);