import { IRenderableView } from '../../pdfjs';
import { VisibleElements } from '../../utils';
type Handler = () => boolean | undefined;
export interface Renderable {
    forceRendering(currentlyVisible?: VisibleElements): boolean;
}
export declare class RenderingQueue {
    private render;
    private onIdle?;
    private highestPriority?;
    private idleTimeout?;
    private handlers;
    private _printing;
    constructor(render: Renderable, onIdle?: (() => void) | undefined);
    get printing(): boolean;
    startPrinting(): void;
    stopPrinting(): void;
    registerHandler(handler: Handler): void;
    isHighestPriority(view: IRenderableView): boolean;
    renderHighestPriority(currentlyVisible?: VisibleElements): void;
    getHighestPriority(visible: VisibleElements, views: IRenderableView[], scrolledDown: boolean, preRenderExtra?: boolean): IRenderableView | null;
    renderView(view: IRenderableView): boolean;
}
export {};
