import type { TagToken } from '../common/token.js'; import type { TreeAdapter, TreeAdapterTypeMap } from '../tree-adapters/interface'; export declare enum EntryType { Marker = 0, Element = 1 } interface MarkerEntry { type: EntryType.Marker; } export interface ElementEntry { type: EntryType.Element; element: T['element']; token: TagToken; } export declare type Entry = MarkerEntry | ElementEntry; export declare class FormattingElementList { private treeAdapter; entries: Entry[]; bookmark: Entry | null; constructor(treeAdapter: TreeAdapter); private _getNoahArkConditionCandidates; private _ensureNoahArkCondition; insertMarker(): void; pushElement(element: T['element'], token: TagToken): void; insertElementAfterBookmark(element: T['element'], token: TagToken): void; removeEntry(entry: Entry): void; clearToLastMarker(): void; getElementEntryInScopeWithTagName(tagName: string): ElementEntry | null; getElementEntry(element: T['element']): ElementEntry | undefined; } export {}; //# sourceMappingURL=formatting-element-list.d.ts.map