@goplayerzero/sdk-web
Version:
The official PlayerZero Web SDK
47 lines • 1.66 kB
TypeScript
export interface PlayerZeroWindow {
init: (projectToken: string, endpoint?: string | PlayerZeroConfiguration) => void;
identify: (userId: string, metadata?: {
name?: string;
email?: string;
group?: string;
[key: string]: string | undefined;
}) => void;
setUserVars: (metadata: Record<string, string | undefined>) => void;
track: (event: string, metadata?: Record<string, unknown>) => void;
prompt: () => void;
devtools: () => Promise<string>;
kill: () => Promise<boolean>;
}
interface PlayerZeroConfiguration {
endpoint?: string;
privacyFnUrl?: string;
}
interface PlayerZeroFetchWrapper {
monkey_patch_ts: number;
before_fetch_apply: (url: RequestInfo | URL, options?: RequestInit) => any;
after_fetch_apply: (response: Response, beforeResult: any) => any;
}
declare global {
interface Window {
playerzero: PlayerZeroWindow & PlayerZeroFetchWrapper;
}
}
export declare class PlayerZeroSdk implements PlayerZeroWindow {
private get playerzero();
init(projectToken: string, configOrEndpoint: string | PlayerZeroConfiguration | undefined): void;
identify(userId: string, metadata?: {
name?: string;
email?: string;
group?: string;
[key: string]: string | undefined;
}): void;
setUserVars(metadata: Record<string, string | undefined>): void;
track(event: string, metadata?: Record<string, unknown>): void;
prompt(): void;
devtools(): Promise<string>;
kill(): Promise<boolean>;
isInitialized(): boolean;
private injectFetchWrappers;
}
export {};
//# sourceMappingURL=playerzero.d.ts.map