import EventEmitter from './utilities/event-emitter'; import type { GistConfig, GistMessage, DisplaySettings, ColorScheme } from './types'; import type { InboxMessage } from './managers/inbox-message-manager'; export default class Gist { static events: EventEmitter; static config: GistConfig; static initialized: boolean; static currentMessages: GistMessage[]; static overlayInstanceId: string | null; static currentRoute: string | null; static routeInitialized: boolean; static isDocumentVisible: boolean; static setup(config: GistConfig): Promise; static setupDebugOverlay(): void; static setCurrentRoute(route: string): Promise; static setUserToken(userToken: string, expiryDate?: Date): Promise; static setUserLocale(userLocale: string): void; static setColorScheme(colorScheme: ColorScheme): void; static setCustomAttribute(key: string, value: unknown): boolean; static clearCustomAttributes(): void; static removeCustomAttribute(key: string): boolean; static clearUserToken(): Promise; static dismissMessage(instanceId: string): Promise; static embedMessage(message: GistMessage, elementId: string): Promise; static showMessage(message: GistMessage): Promise; static updateMessageDisplaySettings(instanceId: string, displaySettings: DisplaySettings): boolean; static messageShown(message: GistMessage): void; static messageDismissed(message: GistMessage | null): void; static messageError(message: GistMessage): void; static messageAction(message: GistMessage, action: string, name: string): void; static getInboxUnopenedCount(): Promise; static getInboxMessages(): Promise; static updateInboxMessageOpenState(queueId: string, opened: boolean): Promise; static removeInboxMessage(queueId: string): Promise; static isInboxEnabled(): boolean; }