export type VisualSnapshotType = 'table' | 'chart'; export interface VisualCopyFeedbackConfig { enabled?: boolean; durationMs?: number; message?: string; } export interface VisualSnapshot { id: string; schemaVersion: 1; type: VisualSnapshotType; label: string; createdAt: string; updatedAt: string; config: Record; state: Record; data: unknown[]; warnings: string[]; } export type VisualSnapshotDraft = Omit; export interface VisualSnapshotCollection { schemaVersion: 1; snapshots: VisualSnapshot[]; } export interface VisualSnapshotApplyResult { applied: boolean; restored: string[]; skipped: string[]; warnings: string[]; data?: unknown[]; } export interface VisualSnapshotStorageOptions { storage?: Storage; storageKey?: string; maxBytes?: number; } export declare class DuplicateVisualSnapshotLabelError extends Error { constructor(label: string); } export declare const VISUAL_SNAPSHOT_SCHEMA_VERSION: 1; export declare const VISUAL_SNAPSHOT_STORAGE_KEY = "jquery_visual_snapshots"; export declare const VISUAL_SNAPSHOT_DEFAULT_MAX_BYTES: number; export declare function isVisualSnapshot(value: unknown): value is VisualSnapshot; export declare function isRecord(value: unknown): value is Record;