import { IControlContext } from '../../interface/Control';
import { IElement } from '../../interface/Element';
import { IRange, IRangeParagraphInfo, RangeRowArray, RangeRowMap } from '../../interface/Range';
import { DrawPdf } from '../draw/DrawPdf';

export declare class RangeManager {
    private draw;
    private options;
    private range;
    private position;
    constructor(draw: DrawPdf);
    getRange(): IRange;
    clearRange(): void;
    getIsCollapsed(): boolean;
    getSelection(): IElement[] | null;
    getSelectionElementList(): IElement[] | null;
    getTextLikeSelection(): IElement[] | null;
    getTextLikeSelectionElementList(): IElement[] | null;
    getRangeRow(): RangeRowMap | null;
    getRangeRowElementList(): IElement[] | null;
    getRangeParagraph(): RangeRowArray | null;
    getRangeParagraphInfo(): IRangeParagraphInfo | null;
    getRangeParagraphElementList(): IElement[] | null;
    getRangeTableElement(): IElement | null;
    getIsSelectAll(): boolean;
    getIsPointInRange(x: number, y: number): boolean;
    getKeywordRangeList(): IRange[];
    getIsCanInput(): boolean;
    setRange(startIndex: number, endIndex: number, tableId?: string, startTdIndex?: number, endTdIndex?: number, startTrIndex?: number, endTrIndex?: number): void;
    replaceRange(range: IRange): void;
    setRangeStyle(): void;
    recoveryRangeStyle(): void;
    shrinkBoundary(context?: IControlContext): void;
    render(ctx: CanvasRenderingContext2D, x: number, y: number, width: number, height: number): void;
    toString(): string;
}
