import type { GoalRuntimeEngine, GoalRuntimeView } from "../runtime/engine.js"; import type { ExtensionAPI } from "./pi-types.js"; export type GoalActivationMode = "manual" | "validation" | "auto"; export declare const DEFAULT_GOAL_ACTIVATION_MODE: GoalActivationMode; export interface GoalsRuntime { readonly pi: ExtensionAPI; readonly engine: GoalRuntimeEngine; readonly stateDir: string; readonly runtimeDir: string; /** Pi session id — stable across /reload. */ readonly sessionId: string; readonly startedAt: number; /** Session-level activation mode (zob /goal mode parity). */ mode: GoalActivationMode; /** Best-effort session-mirror counters (see session-mirror.ts). */ mirrorWrites: number; mirrorFailures: number; } export type GetRuntime = () => GoalsRuntime | null; export declare const GOAL_TOOL_NAMES: readonly string[]; export declare function nextActionFor(status: string): string; /** Multi-line status block shared by the get_goal tool and /goal status. */ export declare function formatGoalStatusLines(view: GoalRuntimeView, mode: GoalActivationMode): string; export declare function registerTools(pi: ExtensionAPI, getRuntime: GetRuntime, onChanged?: () => void): void;