import type { CapabilitiesResponse, ProjectDefaultsPatch, ProjectId, RequestOptions } from "./types.js"; /** Opaque, issuer-bound evidence from the server. Never construct it from local settings. */ export interface ProjectDefaultsReview { expected_source_hash: string; expected_revision: string; preview_token: string; idempotency_key: string; confirmed: true; } export interface ProjectDefaultsPreview { request: { kind: "patch"; values: ProjectDefaultsPatch & { project_id: ProjectId; }; }; draft: Omit & { project_id: ProjectId; country: string; device: string; location_key: string; frequency: string; timezone: string; jitter_minutes: number; serp_depth: number; serp_stop_on_match: boolean; }; expected_source_hash: string; expected_revision: string; preview_token: string; expires_at: string; resolved: { location_key: string; label: string; language_code: string; device: string; }; impact: { existing_target_retargets: number; new_targets: number; inherited_depth_targets: number; recurring_estimate: string; scope_changed: boolean; cadence_changed: boolean; }; policy_ready: boolean; } export type ReviewedProjectDefaultsPatch = ProjectDefaultsPatch & { review?: ProjectDefaultsReview; }; /** Keep ambiguous-response retries on the same reviewed command; never mint a new key. */ export declare function reviewedDefaultsOptions(input: ReviewedProjectDefaultsPatch, options?: RequestOptions): RequestOptions; export declare function validateDefaultsPreview(path: string, value: unknown): void; /** Old v1 servers ignore preview_only, so no PATCH is safe without explicit support. */ export declare function assertReviewedDefaultsSupport(capabilities: CapabilitiesResponse): void; //# sourceMappingURL=defaults-review.d.ts.map