/** * WHOOSH Client * * Handles communication with the WHOOSH backend API */ import WebSocket from 'ws'; export interface WHOOSHConfig { baseUrl: string; wsUrl: string; timeout: number; } export interface Agent { id: string; endpoint: string; model: string; specialty: string; status: 'available' | 'busy' | 'offline'; current_tasks: number; max_concurrent: number; agent_type?: 'ollama' | 'cli'; cli_config?: { host?: string; node_version?: string; model?: string; specialization?: string; max_concurrent?: number; command_timeout?: number; ssh_timeout?: number; agent_type?: string; }; } export interface Task { id: string; type: string; priority: number; context: Record; status: 'pending' | 'in_progress' | 'completed' | 'failed'; assigned_agent?: string; result?: Record; created_at: string; completed_at?: string; } export interface ClusterStatus { system: { status: string; uptime: number; version: string; }; agents: { total: number; available: number; busy: number; }; tasks: { total: number; pending: number; running: number; completed: number; failed: number; }; } export declare class WHOOSHClient { private api; private config; private wsConnection?; constructor(config?: Partial); testConnection(): Promise; getAgents(): Promise; registerAgent(agentData: Partial): Promise<{ agent_id: string; }>; getCliAgents(): Promise; registerCliAgent(agentData: { id: string; host: string; node_version: string; model?: string; specialization?: string; max_concurrent?: number; agent_type?: string; command_timeout?: number; ssh_timeout?: number; }): Promise<{ agent_id: string; endpoint: string; health_check?: any; }>; registerPredefinedCliAgents(): Promise<{ results: any[]; }>; healthCheckCliAgent(agentId: string): Promise; getCliAgentStatistics(): Promise; unregisterCliAgent(agentId: string): Promise<{ success: boolean; }>; createTask(taskData: { type: string; priority: number; context: Record; }): Promise; getTask(taskId: string): Promise; getTasks(filters?: { status?: string; agent?: string; limit?: number; }): Promise; getWorkflows(): Promise; createWorkflow(workflowData: Record): Promise<{ workflow_id: string; }>; executeWorkflow(workflowId: string, inputs?: Record): Promise<{ execution_id: string; }>; getClusterStatus(): Promise; getMetrics(): Promise; getExecutions(workflowId?: string): Promise; connectWebSocket(topic?: string): Promise; disconnect(): Promise; } //# sourceMappingURL=whoosh-client.d.ts.map