import { ClientConfig, RequestOptions } from './Intellipush.types'; export interface IIntellipushClient { request(endpoint: string, options: Record): Promise; authenticate(): Promise; setToken(token: string): void; getToken(): string; } export default class IntellipushClient implements IIntellipushClient { readonly baseApiUrl = "https://api.intellipush.com"; private config; private accessToken; constructor(config: ClientConfig); /** * Authenticate */ authenticate(): Promise; /** * Unified request method * * @param endpoint * @param options */ request(endpoint?: string, options?: RequestOptions): Promise; private serializeQuery; getToken(): string; setToken(token: string): void; }