import type { ExtensionAPI, ExtensionCommandContext, ExtensionContext, InputEvent } from '@earendil-works/pi-coding-agent'; import type { WaggleConfig } from '@openwaggle/waggle-core'; import type { DefaultPiWaggleRunState } from './default-run.js'; export type SetDefaultPiWaggleRun = (run: DefaultPiWaggleRunState | null) => void; export type StartDefaultPiWaggleRun = (input: { readonly pi: Pick; readonly ctx: ExtensionContext; readonly config: WaggleConfig; readonly prompt: string; readonly images?: InputEvent['images']; readonly setActiveRun: SetDefaultPiWaggleRun; readonly dispatchPrompt?: boolean; }) => Promise; export type DefaultWaggleCommandPi = Pick; export interface DefaultWaggleCommandInput { readonly pi: DefaultWaggleCommandPi; readonly ctx: ExtensionCommandContext; readonly setActiveRun: SetDefaultPiWaggleRun; readonly startRun: StartDefaultPiWaggleRun; }