import type { Agent, AgentApp, AgentSideConnection, AuthenticateRequest, AuthenticateResponse, CancelNotification, InitializeRequest, InitializeResponse, NewSessionRequest, NewSessionResponse, PromptRequest, PromptResponse } from "../acp.js"; export interface TestAgentOptions { readonly chunkCount?: number; readonly chunkDelayMs?: number; readonly enablePermission?: boolean; } export interface TestAgentAppOptions extends TestAgentOptions { readonly initialize?: (params: InitializeRequest) => Promise | InitializeResponse; readonly onInitialize?: () => void; readonly newSession?: (params: NewSessionRequest) => Promise | NewSessionResponse; } export declare class TestAgent implements Agent { private readonly connection; private readonly chunkCount; private readonly chunkDelayMs; private readonly enablePermission; constructor(connection: AgentSideConnection, options?: TestAgentOptions); initialize(_params: InitializeRequest): Promise; newSession(_params: NewSessionRequest): Promise; authenticate(_params: AuthenticateRequest): Promise; prompt(params: PromptRequest): Promise; cancel(_params: CancelNotification): Promise; } export declare function createTestAgentApp(options?: TestAgentAppOptions): AgentApp;