import { PDFDocumentProxy } from '../../pdfjs';
import { Dispatcher } from '../../bus';
import { ViewerType } from '../../viewer';
export declare class ScriptingManager extends Dispatcher {
    protected readonly viewer: ViewerType;
    private closeCapability?;
    private destroyCapability?;
    private eventAbortController?;
    private pdfDocument?;
    private _ready;
    private scripting?;
    private willPrintCapability?;
    private pageOpenPending;
    private visitedPages;
    constructor(viewer: ViewerType);
    get eventBus(): import('../../bus').EventBus<Record<string, import('../../bus').ListenerCallback>, string>;
    get signal(): AbortSignal | undefined;
    clearDocument(): Promise<void>;
    setDocument(pdfDocument: PDFDocumentProxy): Promise<void>;
    dispatchWillSave(): Promise<void | undefined>;
    dispatchDidSave(): Promise<void | undefined>;
    dispatchWillPrint(): Promise<void>;
    dispatchDidPrint(): Promise<void | undefined>;
    get destroyPromise(): Promise<void> | null;
    get ready(): boolean;
    private updateFromSandbox;
    private dispatchPageOpen;
    private dispatchPageClose;
    private initScripting;
    private destroyScripting;
}
