export interface ElementChildren { tagName: string; getAttribute(name: string): string | null; cloneNode(deep: boolean): unknown; } export type TargetViewInstruction = ['append', T] | ['reuse', number] | ['remove', number]; export type PatchPair = [T, T]; export type ViewTransform = [TargetViewInstruction[], PatchPair[]]; export declare function interpretTargetView(originChildren: T[], targetChildren: T[], tIsU?: (_x: T) => _x is U): ViewTransform; export type OriginViewInstruction = ['insert', number, T] | ['swap_in', number, number] | ['remove', number]; export declare function changeViewPerspective(originChildren: T[], targetView: TargetViewInstruction[], tIsU?: (_x: T) => _x is U): OriginViewInstruction[]; export declare function patchRoot(prev: SVGElement, next: SVGElement): void; //# sourceMappingURL=patch.d.mts.map