type NumId = string | number;
type Level = number;
type Position = number;
type CounterValue = number;
type CounterLevelMap = Record<Position, CounterValue>;
type CounterMap = Record<string, Record<Level, CounterLevelMap>>;
export declare function createNumberingManager(): {
    setStartSettings(numId: NumId, level: number, startValue: number, restartValue?: number, startOverridden?: boolean): void;
    setCounter(numId: NumId, level: number, pos: number, value: number, abstractId?: string | number): void;
    getCounter(numId: NumId, level: number, pos: number): number | null;
    calculateCounter(numId: NumId, level: number, pos: number, abstractId?: string | number): number;
    getAncestorsPath(numId: NumId, level: number, pos: number): number[];
    calculatePath(numId: NumId, level: number, pos: number): number[];
    getCountersMap(): CounterMap;
    _clearCache(): void;
    enableCache(): void;
    disableCache(): void;
    clearAllState(): void;
};
export {};
//# sourceMappingURL=numbering-manager.d.ts.map