Slash-The-Hordes/assets/Plugins/Y8/Scripts/Y8def.ts

40 lines
1.1 KiB
TypeScript
Raw Permalink Normal View History

2023-01-12 09:12:47 +00:00
declare global {
const ID: Y8API.ID;
interface Window {
idAsyncInit: () => void;
}
}
export namespace Y8API {
export interface ID {
init: (appInfo: { appId: string }) => void;
getLoginStatus: (callback: (response?: Authorization) => void, skipCache?: boolean) => void;
login: (callback: (response?: Authorization) => void) => void;
register: (callback: (response?: Authorization) => void) => void;
Event: Event;
Analytics: Analytics;
}
export interface Event {
subscribe: (eventName: string, callback: (response?: any) => void) => void;
}
export interface Analytics {
custom_event: (name: string, data?: string | number) => void;
}
export interface Authorization {
status: string;
success?: boolean;
authResponse: {
state: string;
access_token: string;
token_type: string;
expires_in: number;
scope: string;
redirect_uri: string;
details: any;
};
}
}