import type { ChatSurfaceAdapter, ChatSurfaceEventSink, ChatSurfaceIncomingMessage, IAdminForth, IAdminForthEndpointHandlerInput } from "adminforth"; import type { HandleTurnInput, RunAndPersistAgentResponseInput, RunAndPersistAgentResponseResult } from "../../domain/turnTypes.js"; import type { AgentSessionStore } from "../../persistence/sessionStore.js"; import type { PluginOptions } from "../../types.js"; export declare class ChatSurfaceService { private getAdminforth; private options; private sessionStore; private handleTurn; private runAndPersistAgentResponse; constructor(getAdminforth: () => IAdminForth, options: PluginOptions, sessionStore: AgentSessionStore, handleTurn: (input: HandleTurnInput) => Promise, runAndPersistAgentResponse: (input: RunAndPersistAgentResponseInput) => Promise); private createEventEmitter; private handleLink; private handleAudioMessage; private handleAgentSurfaceResponse; private getAdminUserRecordForChatSurface; private isAdminUserAuthorized; handleMessage(adapter: ChatSurfaceAdapter, incoming: ChatSurfaceIncomingMessage, sink: ChatSurfaceEventSink, request: IAdminForthEndpointHandlerInput): Promise; }