import Watermark from './src/watermark.vue';
export declare const LlWatermark: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    content: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | string[]>, unknown, unknown, string, boolean>;
    layer: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    image: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    width: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    height: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    rotate: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    zIndex: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    gap: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
    offset: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
    fontSize: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    fontColor: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    textAlpha: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    fontFamily: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    fontWeight: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | number>, unknown, unknown, string, boolean>;
    imageZoom: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    imageOpacity: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    monitor: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    responsive: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    single: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    singleScale: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    position: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
}>, {
    bem: {
        b: (blockSuffix?: string) => string;
        e: (element?: string) => string;
        m: (modifier?: string) => string;
        be: (blockSuffix?: string, element?: string) => string;
        em: (element: string, modifier: string) => string;
        bm: (blockSuffix: string, modifier: string) => string;
        bem: (blockSuffix: string, element: string, modifier: string) => string;
        is: (name?: string) => string;
    };
    props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
        content: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | string[]>, unknown, unknown, string, boolean>;
        layer: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
        image: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
        width: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        height: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        rotate: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        zIndex: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        gap: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
        offset: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
        fontSize: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        fontColor: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
        textAlpha: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        fontFamily: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
        fontWeight: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | number>, unknown, unknown, string, boolean>;
        imageZoom: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        imageOpacity: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        monitor: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
        responsive: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
        single: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
        singleScale: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
        position: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    }>> & Readonly<{}> & {}>;
    containerRef: import("vue").Ref<HTMLElement, HTMLElement>;
    watermarkRef: import("vue").Ref<HTMLDivElement, HTMLDivElement>;
    observer: import("vue").Ref<MutationObserver, MutationObserver>;
    resizeObserver: import("vue").Ref<ResizeObserver, ResizeObserver>;
    cleanupFunctions: (() => void)[];
    updateTimer: number;
    isUpdating: boolean;
    positionMap: {
        topLeft: string;
        top: string;
        topRight: string;
        leftTop: string;
        left: string;
        leftBottom: string;
        rightTop: string;
        right: string;
        rightBottom: string;
        bottomLeft: string;
        bottom: string;
        bottomRight: string;
        center: string;
    };
    calculateWatermarkSize: (ctx: CanvasRenderingContext2D) => {
        width: number;
        height: number;
    };
    createDiamondPattern: (watermarkPattern: string, unitWidth: number, unitHeight: number) => Promise<string>;
    generateWatermarkPattern: () => Promise<{
        dataURL: string;
        width: number;
        height: number;
    }>;
    loadImage: (src: string) => Promise<HTMLImageElement>;
    hexToRgba: (hex: string, alpha: number) => string;
    setupMutationObserver: () => void;
    setupResponsive: () => void;
    destroyWatermark: (immediate?: boolean) => void;
    removeWatermarkDOM: () => void;
    createWatermark: () => Promise<void>;
    debouncedUpdate: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    content: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | string[]>, unknown, unknown, string, boolean>;
    layer: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    image: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    width: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    height: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    rotate: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    zIndex: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    gap: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
    offset: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<number[]>, unknown, unknown, () => number[], boolean>;
    fontSize: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    fontColor: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    textAlpha: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    fontFamily: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
    fontWeight: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<string | number>, unknown, unknown, string, boolean>;
    imageZoom: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    imageOpacity: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    monitor: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    responsive: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    single: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
    singleScale: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
    position: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
}>> & Readonly<{}>, {
    content: import("ll-plus/es/utils").EpPropMergeType<import("vue").PropType<string | string[]>, unknown, unknown>;
    offset: number[];
    width: number;
    zIndex: number;
    fontFamily: string;
    fontSize: number;
    fontWeight: import("ll-plus/es/utils").EpPropMergeType<import("vue").PropType<string | number>, unknown, unknown>;
    height: number;
    position: string;
    rotate: number;
    gap: number[];
    responsive: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
    image: string;
    layer: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
    single: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
    fontColor: string;
    textAlpha: number;
    imageZoom: number;
    imageOpacity: number;
    monitor: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
    singleScale: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
export default LlWatermark;
export * from './src/watermark';
declare module 'vue' {
    interface GlobalComponents {
        LlWatermark: typeof Watermark;
    }
}
