import { type LaunchArgEntry, type LaunchEnvEntry } from './launch-spec-render.js'; export interface RecordedLaunchSpec { mode: 'session' | 'oneshot'; bin: string | null; args: LaunchArgEntry[]; args_attributed: boolean; cwd: string | null; env: LaunchEnvEntry[]; context: { ticket_id: string | null; role: string | null; harness_keys: string[]; effort: string | null; runtime_profile_id: string | null; }; recorded_at: string; } type EnvBag = Record; type BuilderSpec = Record; export interface LaunchAttributionInput { spec: BuilderSpec; build: (spec: BuilderSpec) => readonly string[] | null | undefined; profileArgs?: readonly string[]; safeValues?: Array; } export interface RecordLaunchInput { agentId: string | null | undefined; mode: 'session' | 'oneshot'; bin: string | null | undefined; args: readonly string[]; cwd: string | null | undefined; env: EnvBag | undefined; baseEnv: EnvBag | undefined; attribution?: LaunchAttributionInput | null; ticketId?: string | null; role?: string | null; harness?: object | null; effort?: string | null; runtimeProfileId?: string | null; now?: () => Date; } export declare function recordActualLaunch(input: RecordLaunchInput): void; export declare function lastActualLaunch(agentId: string): RecordedLaunchSpec | null; export declare function _resetRecordedLaunches(): void; export {};