export type HostActionState = 'waiting' | 'running' | 'reported' | 'verified' | 'failed' | 'cancelled' | 'degraded'; export interface HostActionRecord { actionId: string; runId: string; engineRunId: string; stepId: string; projectRoot: string; sessionId?: string; executionId?: string; contextReceipt?: string; state: HostActionState; report: Record; evidenceHash?: string; createdAt: number; updatedAt: number; finishedAt?: number; } export interface RequestHostActionInput { actionId?: string; runId: string; engineRunId: string; stepId: string; projectRoot: string; sessionId?: string; executionId?: string; contextReceipt?: string; } export interface StartHostActionInput { actionId: string; projectRoot: string; } export interface ReportHostActionInput { actionId: string; projectRoot: string; report: Record; evidenceHash?: string; } export interface VerifyHostActionInput extends ReportHostActionInput { evidenceHash: string; } export interface FailHostActionInput extends ReportHostActionInput { outcome?: 'failed' | 'cancelled' | 'degraded'; } export declare function isHostActionState(value: unknown): value is HostActionState; export declare function mapHostActionRow(row: Record): HostActionRecord; export declare function serializeHostActionReport(report: Record): string; export declare function hostActionReportsEqual(left: Record, right: Record): boolean;