UNPKG

@paperlinkai/chat

Version:

PaperLink AI Chat Widget - Easy integration for any website

73 lines (71 loc) 1.62 kB
import { ChatSession, WidgetConfig } from '../types/widget'; import { Component } from 'preact'; interface WidgetProps { config: WidgetConfig; } interface WidgetState { isOpen: boolean; isLoading: boolean; session: ChatSession; error: string | null; isMinimized: boolean; hasNewMessage: boolean; isRetrying: boolean; lastFailedMessage?: string; } export declare class Widget extends Component<WidgetProps, WidgetState> { private apiClient; constructor(props: WidgetProps); componentDidMount(): Promise<void>; componentWillUnmount(): void; /** * Initialize chat session */ private initializeSession; /** * Handle sending a message */ private handleSendMessage; /** * Retry the last failed message */ private handleRetryLastMessage; /** * Save messages to storage */ private saveMessagesToStorage; /** * Handle widget toggle */ private handleToggleWidget; /** * Handle widget minimize */ private handleMinimize; /** * Handle widget close */ private handleClose; /** * Open widget programmatically */ private openWidget; /** * Close widget programmatically */ private closeWidget; /** * Toggle widget programmatically */ private toggleWidget; /** * Handle before unload */ private handleBeforeUnload; /** * Send analytics event (placeholder for future implementation) */ private sendAnalytics; render(): import("preact").JSX.Element; } export {};