import type { JsonValue } from '../control-plane';
import type { QueueExecutionContext } from '../queue';
import type { BackupPolicy, RecoveryPoint } from './model';
import type { BackupSourceAdapter, BackupSourceResult } from './service';
import { ControlPlaneStore } from '../control-plane';
export declare class ControlPlaneBackupSource implements BackupSourceAdapter {
    private readonly controlPlane;
    private readonly root;
    private readonly restoreRoot;
    constructor(controlPlane: ControlPlaneStore, root: string, restoreRoot?: string);
    create(policy: BackupPolicy, context: QueueExecutionContext): Promise<BackupSourceResult>;
    restore(point: RecoveryPoint, body: Uint8Array | undefined, target: Record<string, unknown>, _context: QueueExecutionContext): Promise<Record<string, JsonValue>>;
    verify(point: RecoveryPoint, body: Uint8Array, _context: QueueExecutionContext): Promise<Record<string, JsonValue>>;
    validateHealth(target: Record<string, unknown>, _context: QueueExecutionContext): Promise<Record<string, JsonValue>>;
    cleanup(target: Record<string, unknown>, _context: QueueExecutionContext): Promise<void>;
}
