import { ArenaNodeInline } from '../interfaces/ArenaNode';
declare type Interval = {
    node: ArenaNodeInline;
    start: number;
    end: number;
};
export default class InlineIntervaler {
    private intervals;
    constructor(intervals?: Interval[]);
    getIntervals(): Interval[];
    shift(offset: number, step: number, keep?: boolean): void;
    cut(start: number, end?: number): InlineIntervaler;
    protected checkIntersection(intervals: Interval[]): Interval[];
    merge(intervaler: InlineIntervaler, offset: number): void;
    addInterval(start: number, end: number, node: ArenaNodeInline): void;
    getNode(start: number, end: number): ArenaNodeInline | undefined;
    removeNode(node: ArenaNodeInline): void;
    updateNode(node: ArenaNodeInline, start: number, end: number): void;
    hasInterval(start: number, end: number): boolean;
    clone(): InlineIntervaler;
}
export {};
//# sourceMappingURL=InlineIntervaler.d.ts.map