import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import { type PinetControlCommand, type PinetRemoteControlRequestResult } from "./helpers.js"; export type PinetRuntimeControlContext = ExtensionContext & { abort?: () => void; shutdown?: () => void; }; export interface PinetRemoteControlDeps { flushDeferredRemoteControlAcks: (command: PinetControlCommand) => void; reloadPinetRuntime: (ctx: ExtensionContext) => Promise; formatError: (error: unknown) => string; } export interface PinetRemoteControl { requestRemoteControl: (command: PinetControlCommand, ctx: ExtensionContext) => PinetRemoteControlRequestResult; runRemoteControl: (command: PinetControlCommand, ctx: ExtensionContext) => void; resetRemoteControlState: () => void; } export declare function createPinetRemoteControl(deps: PinetRemoteControlDeps): PinetRemoteControl;