export type { BaseWebSocketMessage, ErrorMessage, RequestMessage, ResponseMessage, RpcMethodDefinition, RpcMethodHandler, RpcMethods, UpdateMessage, WebSocketMessage, WebSocketMessageType } from '../bridge/srpc-websocket-bridge.js';
export interface ToolbarSessionInfo {
    sessionId: string;
    appName: string;
    displayName: string;
    port: string | number;
    version: string;
    features: string[];
}
export interface RPCUpdateMessage {
    sessionId: string;
    updateText: string;
    status: 'processing' | 'completed' | 'error' | 'forwarding' | 'forwarded';
    result?: any;
}
export interface ToolbarConfig {
    enabled: boolean;
    port?: number;
    portRange?: {
        start: number;
        end: number;
    };
    logging?: {
        enabled: boolean;
        level: 'debug' | 'info' | 'warn' | 'error';
    };
}
export interface ToolbarStatus {
    connected: boolean;
    clientCount: number;
    registeredMethods: string[];
    lastActivity?: Date;
    uptime: number;
}
export type ToolbarEventType = 'client_connected' | 'client_disconnected' | 'method_called' | 'prompt_processed' | 'error_occurred';
export interface ToolbarEvent {
    type: ToolbarEventType;
    timestamp: Date;
    data?: any;
    sessionId?: string;
    methodName?: string;
    error?: string;
}
export interface WebSocketClient {
    id: string;
    ws: any;
    connected: boolean;
    lastActivity: Date;
}
export interface PromptBroadcastData {
    prompt: string;
    sessionId: string;
    model?: string;
    files?: any[];
    images?: any[];
    mode?: string;
    metadata?: any;
    timestamp: number;
}
