import type { AgentMessage } from '@earendil-works/pi-agent-core'; import type { Config } from '../../config/schema.js'; import type { AgentInstanceGateway } from '../agent-instance-gateway.js'; import type { ModelManager } from '../models/index.js'; import type { SessionStore } from '../../session/store.js'; import type { EmbeddedStreamEvent, RunXopcEmbeddedTurnResult } from './types.js'; export type RunEmbeddedForSessionParams = { sessionKey: string; runId?: string; userMessage: AgentMessage; llmImages?: import('@earendil-works/pi-ai').ImageContent[]; sessionStore: SessionStore; agentManager: AgentInstanceGateway; modelManager: ModelManager; thinkingOverride?: string | null; abortSignal?: AbortSignal; /** Absolute parent deadline. The turn's own timeout is capped to the remaining budget. */ deadlineAtMs?: number; onEvent?: (event: EmbeddedStreamEvent) => void; getConfig?: () => Config | undefined; beforeTurn?: () => void | Promise; afterTurn?: (userPlain: string) => void | Promise; startupAction?: 'new' | 'reset'; forceStartupContext?: boolean; applyStartupContext?: boolean; }; export declare function runEmbeddedTurnForSession(params: RunEmbeddedForSessionParams): Promise;