export type SharedRetryNotifier = { started: (state: { remaining: number; }) => Promise; progress: (state: { remaining: number; }) => Promise; repairWarning: (state: { remaining: number; }) => Promise; completed: (state: { remaining: number; }) => Promise; stopped: (state: { remaining: number; }) => Promise; }; export declare const noopSharedRetryNotifier: SharedRetryNotifier; export declare function notifySharedRetryEvent(notifier: SharedRetryNotifier, event: keyof SharedRetryNotifier, remaining: number): Promise; export type SharedRetryErrorContainer = { retryableMessages: string[]; isAbortError?: (error: unknown) => boolean; }; export declare function getSharedErrorMessage(error: unknown): string; export declare function isRetryableErrorByContainer(error: unknown, container: SharedRetryErrorContainer): boolean; export type SharedFailOpenResult = { ok: true; value: T; } | { ok: false; error: unknown; }; export declare function runSharedFailOpenBoundary(options: { action: () => Promise; isFailOpenError: (error: unknown) => boolean; onFailOpen?: (error: unknown) => void; }): Promise>; export type SharedRetryIterationResult = { handled: boolean; stop: boolean; shouldContinue: boolean; }; export declare function runSharedRetryScheduler(options: { initialShouldContinue: boolean; runIteration: (input: { attempts: number; }) => Promise; }): Promise<{ attempts: number; }>;