export type RuntimeLifecycleStage = "idle" | "prepared" | "packetized" | "validating" | "checkpointed" | "handed-off" | "blocked";
export type RuntimeEventType = "prepare_completed" | "packets_generated" | "validation_completed" | "validation_checkpoint" | "checkpoint_recorded" | "handoff_recorded";
export interface RuntimeLifecycleEvent {
    timestamp: string;
    type: RuntimeEventType;
    stage: RuntimeLifecycleStage;
    status: "ok" | "warn" | "error";
    summary: string;
    task: string | null;
    command: string | null;
    validation: string | null;
    failureReason: string | null;
    files: string[];
    skillsApplied: string[];
    tokenUsage: {
        measuredTokens: number | null;
        estimatedTokens: number | null;
        source: "measured" | "estimated" | "mixed" | "none";
    };
}
export interface RuntimeLifecycleState {
    artifactType: "kiwi-control/runtime-lifecycle";
    version: 1;
    timestamp: string;
    currentTask: string | null;
    currentStage: RuntimeLifecycleStage;
    validationStatus: "ok" | "warn" | "error" | null;
    nextSuggestedCommand: string | null;
    nextRecommendedAction: string | null;
    recentEvents: RuntimeLifecycleEvent[];
}
export interface RuntimeProgressEntry {
    type: RuntimeEventType;
    stage: RuntimeLifecycleStage;
    status: "ok" | "warn" | "error";
    summary: string;
    task?: string | null;
    command?: string | null;
    files?: string[];
    skillsApplied?: string[];
    measuredTokens?: number | null;
    estimatedTokens?: number | null;
    failureReason?: string | null;
    validation?: string | null;
    validationStatus?: "ok" | "warn" | "error" | null;
    nextSuggestedCommand?: string | null;
    nextRecommendedAction?: string | null;
}
export declare function loadRuntimeLifecycle(targetRoot: string): Promise<RuntimeLifecycleState>;
export declare function recordRuntimeProgress(targetRoot: string, entry: RuntimeProgressEntry): Promise<RuntimeLifecycleState>;
export declare function persistRuntimeLifecycle(targetRoot: string, state: RuntimeLifecycleState): Promise<string>;
//# sourceMappingURL=runtime-lifecycle.d.ts.map