UNPKG

quala-widget

Version:

Smart feedback widget for SaaS trial optimization

111 lines 3.67 kB
import { AntiSpamManager } from './AntiSpamManager'; import { QualaUser, MicroWidgetConfig, SdkOptions, SessionInfo, TechnicalContext } from '../types'; interface ConfigValidationResult { isValid: boolean; errors: string[]; warnings: string[]; } interface EventCallback { (data: any): void; } declare class QualaSdkClass { private isInitialized; private apiKey; private apiBaseUrl; private sessionToken; private currentQuestionGroupId; private currentTriggerId; private container?; private microContainer?; private root?; private microRoot?; private customStyles?; private renderer; private debug; private contextCollector?; private microWidgetConfig; private triggerTimeouts; private triggerListeners; private antiSpamManager?; private cleanupInterval?; private eventListeners; private offlineQueue; private retryQueue; private isOnline; private sensitiveHosts; private configRefreshInterval?; private configLastUpdated?; private configCacheUntil?; private microWidgetsEnabled; private log; private emit; private debounce; initialize(apiKey: string, options?: SdkOptions): Promise<void>; private setupNetworkListeners; private apiRequest; private validateInitResponse; private validateKey; identifyUser(user: QualaUser): Promise<void>; private startConfigRefresh; private refreshMicroWidgetConfig; private validateMicroWidgetConfig; validateConfig(config: Partial<MicroWidgetConfig>): ConfigValidationResult; private startCleanupInterval; private cleanupOldData; private cleanupLocalStorage; private cleanupRetryQueue; private setupMicroWidgetTriggers; private clearTriggers; private setupTimeTrigger; private setupExitIntentTrigger; private setupErrorTrigger; private setupFormFailureTrigger; private setupApiFailureTrigger; private shouldShowMicroWidget; private considerShowingMicroWidget; private getTriggerQuestion; private getTriggerEmojiSet; private showMicroWidget; private hideMicroWidget; private queueFeedbackOffline; private getStoredOfflineQueue; private loadOfflineQueue; private processOfflineQueue; private processRetryQueue; private isSensitiveDomain; private submitMicroFeedback; trackEvent(eventName: string, properties?: Record<string, any>): void; private mapEventName; triggerSmartFeedback(): Promise<void>; private shouldShowFeedback; private showDashboardWidget; private showWidget; private renderWidget; private markTriggerShown; private submitAnswers; triggerMicroWidget(question?: string): Promise<void>; configureMicroWidget(config: Partial<MicroWidgetConfig>): void; getTechnicalContext(): TechnicalContext | null; getSessionInfo(): SessionInfo & { antiSpam?: ReturnType<AntiSpamManager['getStatus']>; }; checkTriggerAvailable(): Promise<boolean>; refreshTriggerStatus(): Promise<boolean>; forceConfigRefresh(): Promise<void>; getConfigInfo(): { lastUpdated?: string; cacheUntil?: string; hasConfig: boolean; nextRefresh?: Date; microWidgetsEnabled: boolean; }; on(eventName: string, callback: EventCallback): void; off(eventName: string, callback?: EventCallback): void; getAntiSpamStatus(): ReturnType<AntiSpamManager['getStatus']> | null; forceAllowNextWidget(): void; resetAntiSpamState(): void; destroy(): void; } export declare const qualaSdk: QualaSdkClass; export {}; //# sourceMappingURL=qualaSdk.d.ts.map