import type { ExtensionContext, InputEvent } from '@earendil-works/pi-coding-agent'; import type { WaggleConfig, WaggleTurn } from '@openwaggle/waggle-core'; import type { StartDefaultPiWaggleRun } from './default-command-types.js'; import { type DefaultPiWaggleModel } from './default-run-model.js'; import { type PiWaggleAgentEndHandler, type PiWaggleTurnEndHandler } from './loop.js'; import { type PiWaggleStopPolicyState } from './stop-policy.js'; type PiInputImage = NonNullable[number]; export interface DefaultPiWaggleRunState { readonly config: WaggleConfig; readonly inheritedModel: DefaultPiWaggleModel; readonly inheritedModelReference: string; readonly policyState: PiWaggleStopPolicyState; readonly runId: string; readonly turnNumber: number; readonly userPrompt: string; readonly userImages: readonly PiInputImage[]; readonly onTurnEnd: PiWaggleTurnEndHandler; readonly onAgentEnd: PiWaggleAgentEndHandler; } export declare function setWaggleStatus(ctx: ExtensionContext, text: string | undefined): void; export declare function buildDefaultTurnMessage(run: Pick, turn: WaggleTurn, resolvedModelReference?: string): { customType: string; content: string; display: boolean; details: import("./protocol.js").PiWaggleTurnDetails; }; export declare function clearRunStatus(ctx: ExtensionContext, setActiveRun: (run: DefaultPiWaggleRunState | null) => void): void; export declare function createStartDefaultWaggleRun(input: { readonly getActiveRun: () => DefaultPiWaggleRunState | null; readonly setActiveRun: (run: DefaultPiWaggleRunState | null) => void; }): StartDefaultPiWaggleRun; export {};