import { WatermarkOptions } from './types';
export declare const defaultOptions: WatermarkOptions;
export declare class Watermark {
    /** 水印配置 */
    private options;
    /** 水印挂载容器 */
    private container?;
    /** 水印的宿主节点 */
    private watermarkHost?;
    /** 水印节点 */
    private watermarkDom?;
    /** 水印样式 */
    private style;
    private watermarkTag;
    private shadowRoot?;
    private mutationObserver;
    constructor(options?: WatermarkOptions);
    static decrypt: (ctx: CanvasRenderingContext2D) => void;
    update(options?: WatermarkOptions): void;
    show(): void;
    hide(): void;
    destroy(): void;
    _shouldRerender: (mutation: MutationRecord) => boolean;
    _getNodeRandomId: (node: Node) => string | undefined;
    _destroyMutationObserver: () => void;
    _getWatermarkDom: () => Promise<HTMLElement>;
    _render(): Promise<void>;
}
