import type { KeyType, Value } from '../../../../..'; export interface FullPathSource { dottedPathId: number; pathRepo: PathsRepo; } import PathsRepo from '../../paths'; declare class AtomNode { static createRoot(): AtomNode; private _atom; private _branches; private _fullPathId; private _fullPathRepo; private _head; private _key; private _pathToRootAtom; private _rootAtomNode; private _sectionData; private constructor(); get branches(): Record>; get fullPath(): string[]; get isActive(): boolean; get isLeaf(): boolean; get isRoot(): boolean; get isRootAtom(): boolean; get key(): KeyType; get rootAtomNode(): AtomNode; set value(v: T); get value(): Readonly; addAccessor(accessorId: number): number; findActiveNodeAt(fullPath: Array): AtomNode; insertAtomAt(sanitizedPathId: number, pathRepo: PathsRepo, origin: T): void; removeAccessor(accessorId: number): number; remove(): void; setValueAt(fullPath: Array, value: T): void; private _activateWith; private _addActiveDescendantNodeAt; private _adjustToNewRootAtom; private _convertToRootAtomNodeFrom; private _deactivate; private _destroy; private _findNearestActiveDescendants; private _findNodeAt; private _findRoot; private _notifyNearestActiveDescendantsOfNewRootAtom; private _retainUnchangedDescendants; } export default AtomNode;