{"version":3,"file":"agent-runner.mjs","names":[],"sources":["../../../../src/v2/runtime/runner/agent-runner.ts"],"sourcesContent":["import type {\n  AbstractAgent,\n  BaseEvent,\n  Message,\n  RunAgentInput,\n} from \"@ag-ui/client\";\nimport type { Observable } from \"rxjs\";\n\nexport interface AgentRunnerRunRequest {\n  threadId: string;\n  agent: AbstractAgent;\n  input: RunAgentInput;\n  persistedInputMessages?: Message[];\n}\n\nexport interface AgentRunnerConnectRequest {\n  threadId: string;\n  headers?: Record<string, string>;\n  joinCode?: string;\n}\n\nexport interface AgentRunnerIsRunningRequest {\n  threadId: string;\n}\n\nexport interface AgentRunnerStopRequest {\n  threadId: string;\n}\n\nexport interface LocalThreadEndpointRecord {\n  id: string;\n  name: string | null;\n  agentId: string;\n  organizationId: string;\n  createdById: string;\n  archived: boolean;\n  createdAt: string;\n  updatedAt: string;\n}\n\nexport interface LocalThreadEndpointRunner extends AgentRunner {\n  readonly ɵsupportsLocalThreadEndpoints: true;\n  listThreads(): LocalThreadEndpointRecord[];\n  getThreadMessages(threadId: string): Message[];\n  getThreadEvents(threadId: string): BaseEvent[];\n  getThreadState(threadId: string): Record<string, unknown> | null;\n  clearThreads(): void;\n}\n\nexport function supportsLocalThreadEndpoints(\n  runner: AgentRunner,\n): runner is LocalThreadEndpointRunner {\n  return runner.ɵsupportsLocalThreadEndpoints === true;\n}\n\nexport abstract class AgentRunner {\n  readonly ɵsupportsLocalThreadEndpoints?: boolean;\n\n  abstract run(request: AgentRunnerRunRequest): Observable<BaseEvent>;\n  abstract connect(request: AgentRunnerConnectRequest): Observable<BaseEvent>;\n  abstract isRunning(request: AgentRunnerIsRunningRequest): Promise<boolean>;\n  abstract stop(request: AgentRunnerStopRequest): Promise<boolean | undefined>;\n}\n"],"mappings":";;AAiDA,SAAgB,6BACd,QACqC;AACrC,QAAO,OAAO,kCAAkC;;AAGlD,IAAsB,cAAtB,MAAkC"}