import { Node, ChildResult } from './types'; export declare type Shifts = { [key: string]: Node[]; }; export declare type Removals = { [key: string]: number[]; }; export declare class Path { node: Node; parentPath: Path; childPath: string; unshifts: Shifts; shifts: Shifts; removals: Removals; constructor(node: Node, parentPath?: Path, childPath?: string); replaceWith(node: Node): Path; remove(): Path; findParent(parentType: string): Path; unshiftContainer(property: string, node: Node): this; pushContainer(property: string, node: Node): this; added(): ChildResult[]; removed(): void; }