import type { LibroView } from '@difizen/libro-core'; import type { Disposable, Event } from '@difizen/mana-app'; import { Emitter, DisposableCollection } from '@difizen/mana-app'; import { LibroCellTOCProvider } from './cell-toc-provider.js'; import type { CellTOCProvider, IHeading } from './toc-protocol.js'; import { TOCProviderOption } from './toc-protocol.js'; export type LibroTOCProviderFactory = (option: TOCProviderOption) => LibroTOCProvider; export declare const LibroTOCProviderFactory: unique symbol; export declare class LibroTOCProvider implements Disposable { protected libroCellTOCProvider: LibroCellTOCProvider; protected providerMap: Map; headings: IHeading[]; protected view: LibroView; protected toDispose: DisposableCollection; protected toDisposeWatcher: DisposableCollection; disposed: boolean; protected activeCellChangeEmitter: Emitter; get activeCellChange(): Event; constructor(option: TOCProviderOption, libroCellTOCProvider: LibroCellTOCProvider); protected initUpdateWatch(): void; protected setupUpdaterWatcher(): void; protected handleActiveCellChange: () => void; protected updateTOC: () => void; protected onActiveCellChanged: () => void; protected onCellsChanged: () => void; protected onContentChanged: () => void; getCellTocProviderList(): { cellId: string; tocProvider: CellTOCProvider | undefined; }[]; protected getCellTocProviders(): CellTOCProvider[]; protected getHeadings(): IHeading[]; selectCellByHeading(heading: IHeading): void; getHeadingByCellIndex(index: number): IHeading | undefined; dispose(): void; } //# sourceMappingURL=toc-provider.d.ts.map