import type { ProviderToolApprovalItem } from '../../lib/providers';
import type { ToolApprovalInterruptionDetails } from './useChatAgent.types';
/**
 * Safely stringifies interruption arguments for storage and display.
 */
export declare const serializeInterruptionPayload: (value: unknown) => string;
export type InternalToolApprovalInterruption = ToolApprovalInterruptionDetails & {
    source?: ProviderToolApprovalItem;
    rawInterruption?: ProviderToolApprovalItem;
};
/**
 * Drops internal handles from an interruption while preserving user-facing fields.
 */
export declare const toPublicInterruption: (entry: InternalToolApprovalInterruption) => ToolApprovalInterruptionDetails;
/**
 * Normalizes a raw tool approval interruption into our tracked shape.
 */
export declare const buildToolApprovalInterruption: (runId: string, interruption: ProviderToolApprovalItem, timestamp: number, index: number) => InternalToolApprovalInterruption;
/**
 * Re-links serialized interruptions with live run handles where possible.
 */
export declare const hydrateInternalInterruptions: (runId: string, details: ToolApprovalInterruptionDetails[], rawInterruptions: ProviderToolApprovalItem[]) => InternalToolApprovalInterruption[];
//# sourceMappingURL=interruptions.d.ts.map