import { s as Task } from "./task-hLh4BOO7.mjs"; import { o as TaskFailureReporter } from "./telemetry-DOyZLj8E.mjs"; import { t as TaskStore } from "./index-B7oVjSey.mjs"; import { r as DelegationManager } from "./index-3-3ZJlaH.mjs"; import { _ as TaskParamsSchema } from "./task-lCI3ZCI6.mjs"; import { o as ToolResult } from "./index-C3DgOhEm.mjs"; import { WithRoot } from "@agimon-ai/doompi-core/extensionFile"; import { PiPluginContext } from "@agimon-ai/doompi-core/piExtension"; import { ExtensionAPI, ExtensionContext, ExtensionUIContext, ToolDefinition } from "@earendil-works/pi-coding-agent"; //#region src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.d.ts /** @deprecated Task usage policy now lives only in the tool description. */ declare const DEFAULT_PROMPT_SNIPPET = "Track only complex, multi-step jobs that benefit from persistent progress or delegation; skip simple work"; interface TaskToolDependencies { store: TaskStore; delegation: DelegationManager; maxTasks?: number; onChange?: () => void; report?: TaskFailureReporter; waitUntilReady?: (context: ExtensionContext, signal?: AbortSignal) => Promise; } declare function createTaskTool(dependencies: TaskToolDependencies, renderers?: Pick, 'renderCall' | 'renderResult'>): ToolDefinition; //#endregion //#region src/extensions/workspaces/sessions/(backend)/_lib/root.cli.d.ts interface TaskOverlayContract { setUICtx(context: ExtensionUIContext): void; update(): void; dispose(): void; toggleCollapse(): void; isRegistered(): boolean; } interface TaskRootPresentation { createOverlay(options: { getTasks: () => readonly Task[]; delegation: DelegationManager; }): TaskOverlayContract; registerCollapseShortcut(pi: Pick, overlay: TaskOverlayContract, waitUntilReady: (context: ExtensionContext) => Promise, isActive: () => boolean): void; } declare const createTaskRoot: (presentation: TaskRootPresentation) => import("@agimon-ai/doompi-core/extensionFile").RootFile<{ taskStore: TaskStore; delegationManager: DelegationManager; taskOverlay: TaskOverlayContract; toolDependencies: TaskToolDependencies; waitForSessionReadiness: (context: { readonly sessionManager: object; }, signal?: AbortSignal) => Promise; refresh: () => void; sessionStart: (_event: unknown, ctx: ExtensionContext) => Promise; toolExecutionEnd: (event: { toolName: string; }) => void; isActive: () => boolean; }, PiPluginContext>; type TaskPiScope = Awaited>>['value']; //#endregion export { createTaskTool as i, DEFAULT_PROMPT_SNIPPET as n, TaskToolDependencies as r, TaskPiScope as t }; //# sourceMappingURL=root.cli-Brg0bUuN.d.mts.map