import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import type { FleetAgentRecord } from "../integration/fleet-view.js"; import { type WorkerNotice } from "../integration/worker-completion-notifier.js"; import { type WorkerLifecycleProjectionV1 } from "../workflow/lifecycle-projection.js"; import type { RunProjectionV2, WorkerProjection } from "../workflow/workflow-types.js"; import type { CancelWorkerToolParameters, CollectWorkerToolParameters, CleanupRunsToolParameters, ListWorkersToolParameters, ReviseContractToolParameters, SpawnWorkerToolParameters, SteerWorkerToolParameters, WorkerToolProvider } from "./worker-tools.js"; export declare class PiWorkerRuntime implements WorkerToolProvider { #private; constructor(publishFleet?: (records: readonly FleetAgentRecord[]) => void, unlimitedDeclaration?: () => unknown, publishLifecycle?: (projection: WorkerLifecycleProjectionV1) => Promise, publishNotice?: (notice: WorkerNotice) => void); start(ctx: ExtensionContext): Promise; shutdown(): Promise; refreshGuidance(ctx: ExtensionContext): Promise; appendGuidance(systemPrompt: string): string; spawn(params: SpawnWorkerToolParameters, signal: AbortSignal | undefined, ctx: ExtensionContext): Promise; list(params: ListWorkersToolParameters, _ctx: ExtensionContext): Promise; collect(params: CollectWorkerToolParameters, signal: AbortSignal | undefined, ctx: ExtensionContext): Promise; cancel(params: CancelWorkerToolParameters, _signal: AbortSignal | undefined, _ctx: ExtensionContext): Promise; steer(params: SteerWorkerToolParameters, _signal: AbortSignal | undefined, _ctx: ExtensionContext): Promise; reviseContract(params: ReviseContractToolParameters, _signal: AbortSignal | undefined, _ctx: ExtensionContext): Promise; cleanupRuns(params: CleanupRunsToolParameters, _signal: AbortSignal | undefined, ctx: Pick): Promise; doctorWorkflow(_signal: AbortSignal | undefined, _ctx: Pick): Promise; canReplaceSession(): Promise; steerFromFleet(workerId: string, generation: string, message: string): Promise; cancelFromFleet(workerId: string, generation: string): Promise; } export declare function projectFleetRecords(run: RunProjectionV2): readonly FleetAgentRecord[]; export declare function canReplaceWorkerRun(run: RunProjectionV2): boolean; declare const RUN_BUDGET_DIMENSIONS: readonly ["workers", "concurrency", "depth", "attempts", "wall-clock", "tokens", "cost", "output"]; type RunBudgetDimension = (typeof RUN_BUDGET_DIMENSIONS)[number]; export declare function parseUnlimitedBudgetDimensions(value: unknown): readonly RunBudgetDimension[]; export declare function confirmedRunBudget(ctx: ExtensionContext, declaration: unknown): Promise; export declare function defaultWorkerBudget(run: RunProjectionV2, nowMs?: number): NonNullable; export declare function projectWorkerForTools(worker: WorkerProjection): unknown; export {}; //# sourceMappingURL=worker-runtime.d.ts.map