/** * TONLDocument - Browser-Safe Version * * Browser-compatible version excluding Node.js-specific features */ import type { TONLValue, EncodeOptions, DecodeOptions } from './types.js'; import { type WalkCallback, type WalkOptions } from './navigation/index.js'; import { type DiffResult } from './modification/change-tracker.js'; import { type IndexOptions, type IIndex } from './indexing/index.js'; export interface DocumentStats { sizeBytes: number; nodeCount: number; maxDepth: number; arrayCount: number; objectCount: number; primitiveCount: number; } export declare class TONLDocumentBrowser { private data; private evaluator; private indexManager; private constructor(); static parse(tonlText: string, options?: DecodeOptions): TONLDocumentBrowser; static fromJSON(data: any): TONLDocumentBrowser; get(pathExpression: string): any; query(pathExpression: string): any; exists(pathExpression: string): boolean; typeOf(pathExpression: string): string | undefined; entries(): IterableIterator<[string, any]>; keys(): IterableIterator; values(): IterableIterator; deepEntries(): Generator<[string, any], void, undefined>; deepKeys(): Generator; deepValues(): Generator; walk(callback: WalkCallback, options?: WalkOptions): void; countNodes(): number; find(predicate: (value: any, path: string) => boolean): [string, any] | undefined; findAll(predicate: (value: any, path: string) => boolean): Array<[string, any]>; some(predicate: (value: any, path: string) => boolean): boolean; every(predicate: (value: any, path: string) => boolean): boolean; toJSON(): any; toTONL(options?: EncodeOptions): string; size(): number; stats(): DocumentStats; getData(): TONLValue; set(pathExpression: string, value: any): this; delete(pathExpression: string): this; push(arrayPath: string, ...values: any[]): number; pop(arrayPath: string): any; merge(pathExpression: string, updates: Record): this; diff(other: TONLDocumentBrowser): DiffResult; diffString(other: TONLDocumentBrowser): string; snapshot(): TONLDocumentBrowser; createIndex(options: IndexOptions): IIndex; getIndex(name: string): IIndex | undefined; dropIndex(name: string): boolean; listIndices(): string[]; indexStats(): Record; } //# sourceMappingURL=document-browser.d.ts.map