import { Static } from '../typebox'; export type Insert = Static; export declare const Insert: import("../typebox").TObject<{ type: import("../typebox").TLiteral<"insert">; path: import("../typebox").TString; value: import("../typebox").TUnknown; }>; export type Update = Static; export declare const Update: import("../typebox").TObject<{ type: import("../typebox").TLiteral<"update">; path: import("../typebox").TString; value: import("../typebox").TUnknown; }>; export type Delete = Static; export declare const Delete: import("../typebox").TObject<{ type: import("../typebox").TLiteral<"delete">; path: import("../typebox").TString; }>; export type Edit = Static; export declare const Edit: import("../typebox").TUnion<[import("../typebox").TObject<{ type: import("../typebox").TLiteral<"insert">; path: import("../typebox").TString; value: import("../typebox").TUnknown; }>, import("../typebox").TObject<{ type: import("../typebox").TLiteral<"update">; path: import("../typebox").TString; value: import("../typebox").TUnknown; }>, import("../typebox").TObject<{ type: import("../typebox").TLiteral<"delete">; path: import("../typebox").TString; }>]>; export declare class ValueDeltaObjectWithSymbolKeyError extends Error { readonly key: unknown; constructor(key: unknown); } export declare class ValueDeltaUnableToDiffUnknownValue extends Error { readonly value: unknown; constructor(value: unknown); } export declare namespace ValueDelta { function Diff(current: unknown, next: unknown): Edit[]; function Patch(current: unknown, edits: Edit[]): T; }