import { IncomingMessage, ServerResponse } from 'http'; import { Tracer } from '../telemetry'; export interface WorkflowNode { id: string; type: 'agent' | 'tool' | 'condition' | 'loop' | 'parallel' | 'input' | 'output'; name: string; x: number; y: number; config: Record; } export interface WorkflowEdge { id: string; from: string; to: string; fromPort: string; toPort: string; } export interface WorkflowDefinition { id: string; name: string; nodes: WorkflowNode[]; edges: WorkflowEdge[]; created: string; updated: string; } interface StudioConfig { port: number; agentDir: string; staticDir: string; openBrowser?: boolean; } declare class StudioServer { private server; private config; private tracer?; private skillMarketplace; private cronEngine; private imageGenerator; private openSockets; constructor(portOrConfig?: number | Partial); setTracer(tracer: Tracer): void; getTracer(): Tracer | undefined; getConfig(): StudioConfig; start(): Promise; stop(): Promise; private startSubModules; handleRequest(req: IncomingMessage, res: ServerResponse): Promise; private handleAPI; private getAgentsDir; private createAgent; private listAgents; private getAgentById; private updateAgent; private deleteAgent; private getAgentWorkspaceDir; private getAgentConfigById; private updateAgentConfigById; private listAgentFiles; private updateAgentFile; private deepMerge; private getTemplates; private getTemplateById; private getAgentMemory; private handleGeneratePrompt; private handleAgentChat; private handleSimpleChat; private sendSimulatedResponse; private detectLocalOllama; private testModelConnection; private getSettingsStatus; private getUsageStats; private getAgentInfo; private getAgentConfig; private saveConfig; private handleChat; private getMemoryList; private searchMemory; private getMemoryStats; private getSkills; private getTools; private getWorkflowsDir; private listWorkflows; private getWorkflowById; private saveWorkflow; private deleteWorkflow; private runWorkflow; private topoSort; private getJobs; private getRecentLogs; private getAnalytics; private runDoctor; private getChannels; private getPlugins; private getProtocols; private getPendingApprovals; private getMCPServerStatus; private getTelemetryTraces; private getEvalSuites; private runEvalSuite; private getEvalReports; private getA2ACard; private getA2ATasks; private discoverA2AAgent; private getFirstRunStatus; private completeFirstRun; private proxyToModule; private checkPort; getModulesStatus(): Promise<{ modules: { name: string; path: string; port: number; icon: string; running: boolean; }[]; }>; private loadOAD; private loadPackageJson; serveStatic(req: IncomingMessage, res: ServerResponse, url: URL): void; private handlePlaygroundChat; private getDocumentsDir; private handleDocumentUpload; private parseMultipart; private getDocumentList; private deleteDocument; private readBody; } export { StudioServer, StudioConfig }; //# sourceMappingURL=server.d.ts.map