import { Loader, ModuleName } from "@readium/navigator-html-injectables";
import { FrameComms } from "../epub/frame/FrameComms.ts";
import { IContentProtectionConfig, IKeyboardPeripheralsConfig } from "../Navigator.ts";
export declare class WebPubFrameManager {
    private frame;
    private loader;
    readonly source: string;
    private comms;
    private hidden;
    private destroyed;
    private readonly contentProtectionConfig;
    private readonly keyboardPeripheralsConfig;
    private conditionBridge?;
    private currModules;
    constructor(source: string, contentProtectionConfig?: IContentProtectionConfig, keyboardPeripheralsConfig?: IKeyboardPeripheralsConfig);
    load(modules?: ModuleName[]): Promise<Window>;
    private applyContentProtection;
    destroy(): Promise<void>;
    hide(): Promise<void>;
    show(atProgress?: number): Promise<void>;
    setCSSProperties(properties: {
        [key: string]: string;
    }): void;
    get iframe(): HTMLIFrameElement;
    get realSize(): DOMRect;
    get window(): Window;
    get msg(): FrameComms | undefined;
    get ldr(): Loader<ModuleName> | undefined;
}
