/// <reference types="@vuemap/amap-jsapi-types" />
import MouseTool from './MouseTool.vue';
import type { Plugin } from "vue";
export declare const ElAmapMouseTool: {
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        type: {
            type: import("vue").PropType<"marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut">;
            required: true;
            default: string;
            validator: (value: string) => boolean;
        };
        drawOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        autoClear: {
            type: BooleanConstructor;
            default: boolean;
        };
        showTooltip: {
            type: BooleanConstructor;
            default: boolean;
        };
        tooltipTextMap: {
            type: import("vue").PropType<import("./MouseTool.vue").TooltipText>;
            default: () => null;
        };
        textOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        drawCursor: {
            type: StringConstructor;
            default: string;
        };
    } & {
        visible: import("../../..").IPropOptions<boolean>;
        zIndex: import("../../..").IPropOptions<number>;
        reEventWhenUpdate: import("../../..").IPropOptions<boolean>;
        extraOptions: import("../../..").IPropOptions<any>;
    }>> & {
        onInit?: ((...args: any[]) => any) | undefined;
        onDraw?: ((...args: any[]) => any) | undefined;
    }, {
        props: import("@vue/shared").LooseRequired<{
            readonly type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
            readonly drawOptions: Record<string, any>;
            readonly autoClear: boolean;
            readonly showTooltip: boolean;
            readonly tooltipTextMap: import("./MouseTool.vue").TooltipText;
            readonly textOptions: Record<string, any>;
            readonly drawCursor: string;
            readonly visible?: boolean | undefined;
            readonly zIndex?: number | undefined;
            readonly reEventWhenUpdate?: boolean | undefined;
            readonly extraOptions?: any;
            readonly onInit?: ((...args: any[]) => any) | undefined;
            readonly onDraw?: ((...args: any[]) => any) | undefined;
        } & {}>;
        emits: (event: "init" | "draw", ...args: any[]) => void;
        $amapComponent: AMap.MouseTool;
        preMapCursor: string;
        tipTexts: {
            marker: string;
            circle: string;
            rectangle: string;
            polyline: string;
            polygon: string;
            measureArea: string;
            rule: string;
            rectZoomIn: string;
            rectZoomOut: string;
        };
        isDrawing: boolean;
        __type: () => void;
        $$getInstance: () => AMap.MouseTool;
        parentInstance: import("../../..").IProvideType | undefined;
        $text: AMap.Text;
        createTooltip: () => void;
        getMousePosition: (e: any) => void;
        setText: (content: string) => void;
        bindEvent: () => void;
        _close: (ifClear?: boolean) => void;
        $$close: (ifClear?: boolean) => void;
        $$open: () => void;
        $$clear: () => void;
        changeMapCursor: () => void;
        revertMapCursor: () => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("init" | "draw")[], import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        type: {
            type: import("vue").PropType<"marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut">;
            required: true;
            default: string;
            validator: (value: string) => boolean;
        };
        drawOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        autoClear: {
            type: BooleanConstructor;
            default: boolean;
        };
        showTooltip: {
            type: BooleanConstructor;
            default: boolean;
        };
        tooltipTextMap: {
            type: import("vue").PropType<import("./MouseTool.vue").TooltipText>;
            default: () => null;
        };
        textOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        drawCursor: {
            type: StringConstructor;
            default: string;
        };
    } & {
        visible: import("../../..").IPropOptions<boolean>;
        zIndex: import("../../..").IPropOptions<number>;
        reEventWhenUpdate: import("../../..").IPropOptions<boolean>;
        extraOptions: import("../../..").IPropOptions<any>;
    }>> & {
        onInit?: ((...args: any[]) => any) | undefined;
        onDraw?: ((...args: any[]) => any) | undefined;
    }, {
        type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
        drawOptions: Record<string, any>;
        autoClear: boolean;
        showTooltip: boolean;
        tooltipTextMap: import("./MouseTool.vue").TooltipText;
        textOptions: Record<string, any>;
        drawCursor: string;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        type: {
            type: import("vue").PropType<"marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut">;
            required: true;
            default: string;
            validator: (value: string) => boolean;
        };
        drawOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        autoClear: {
            type: BooleanConstructor;
            default: boolean;
        };
        showTooltip: {
            type: BooleanConstructor;
            default: boolean;
        };
        tooltipTextMap: {
            type: import("vue").PropType<import("./MouseTool.vue").TooltipText>;
            default: () => null;
        };
        textOptions: {
            type: ObjectConstructor;
            default: () => null;
        };
        drawCursor: {
            type: StringConstructor;
            default: string;
        };
    } & {
        visible: import("../../..").IPropOptions<boolean>;
        zIndex: import("../../..").IPropOptions<number>;
        reEventWhenUpdate: import("../../..").IPropOptions<boolean>;
        extraOptions: import("../../..").IPropOptions<any>;
    }>> & {
        onInit?: ((...args: any[]) => any) | undefined;
        onDraw?: ((...args: any[]) => any) | undefined;
    }, {
        props: import("@vue/shared").LooseRequired<{
            readonly type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
            readonly drawOptions: Record<string, any>;
            readonly autoClear: boolean;
            readonly showTooltip: boolean;
            readonly tooltipTextMap: import("./MouseTool.vue").TooltipText;
            readonly textOptions: Record<string, any>;
            readonly drawCursor: string;
            readonly visible?: boolean | undefined;
            readonly zIndex?: number | undefined;
            readonly reEventWhenUpdate?: boolean | undefined;
            readonly extraOptions?: any;
            readonly onInit?: ((...args: any[]) => any) | undefined;
            readonly onDraw?: ((...args: any[]) => any) | undefined;
        } & {}>;
        emits: (event: "init" | "draw", ...args: any[]) => void;
        $amapComponent: AMap.MouseTool;
        preMapCursor: string;
        tipTexts: {
            marker: string;
            circle: string;
            rectangle: string;
            polyline: string;
            polygon: string;
            measureArea: string;
            rule: string;
            rectZoomIn: string;
            rectZoomOut: string;
        };
        isDrawing: boolean;
        __type: () => void;
        $$getInstance: () => AMap.MouseTool;
        parentInstance: import("../../..").IProvideType | undefined;
        $text: AMap.Text;
        createTooltip: () => void;
        getMousePosition: (e: any) => void;
        setText: (content: string) => void;
        bindEvent: () => void;
        _close: (ifClear?: boolean) => void;
        $$close: (ifClear?: boolean) => void;
        $$open: () => void;
        $$clear: () => void;
        changeMapCursor: () => void;
        revertMapCursor: () => void;
    }, {}, {}, {}, {
        type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
        drawOptions: Record<string, any>;
        autoClear: boolean;
        showTooltip: boolean;
        tooltipTextMap: import("./MouseTool.vue").TooltipText;
        textOptions: Record<string, any>;
        drawCursor: string;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    type: {
        type: import("vue").PropType<"marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut">;
        required: true;
        default: string;
        validator: (value: string) => boolean;
    };
    drawOptions: {
        type: ObjectConstructor;
        default: () => null;
    };
    autoClear: {
        type: BooleanConstructor;
        default: boolean;
    };
    showTooltip: {
        type: BooleanConstructor;
        default: boolean;
    };
    tooltipTextMap: {
        type: import("vue").PropType<import("./MouseTool.vue").TooltipText>;
        default: () => null;
    };
    textOptions: {
        type: ObjectConstructor;
        default: () => null;
    };
    drawCursor: {
        type: StringConstructor;
        default: string;
    };
} & {
    visible: import("../../..").IPropOptions<boolean>;
    zIndex: import("../../..").IPropOptions<number>;
    reEventWhenUpdate: import("../../..").IPropOptions<boolean>;
    extraOptions: import("../../..").IPropOptions<any>;
}>> & {
    onInit?: ((...args: any[]) => any) | undefined;
    onDraw?: ((...args: any[]) => any) | undefined;
}, {
    props: import("@vue/shared").LooseRequired<{
        readonly type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
        readonly drawOptions: Record<string, any>;
        readonly autoClear: boolean;
        readonly showTooltip: boolean;
        readonly tooltipTextMap: import("./MouseTool.vue").TooltipText;
        readonly textOptions: Record<string, any>;
        readonly drawCursor: string;
        readonly visible?: boolean | undefined;
        readonly zIndex?: number | undefined;
        readonly reEventWhenUpdate?: boolean | undefined;
        readonly extraOptions?: any;
        readonly onInit?: ((...args: any[]) => any) | undefined;
        readonly onDraw?: ((...args: any[]) => any) | undefined;
    } & {}>;
    emits: (event: "init" | "draw", ...args: any[]) => void;
    $amapComponent: AMap.MouseTool;
    preMapCursor: string;
    tipTexts: {
        marker: string;
        circle: string;
        rectangle: string;
        polyline: string;
        polygon: string;
        measureArea: string;
        rule: string;
        rectZoomIn: string;
        rectZoomOut: string;
    };
    isDrawing: boolean;
    __type: () => void;
    $$getInstance: () => AMap.MouseTool;
    parentInstance: import("../../..").IProvideType | undefined;
    $text: AMap.Text;
    createTooltip: () => void;
    getMousePosition: (e: any) => void;
    setText: (content: string) => void;
    bindEvent: () => void;
    _close: (ifClear?: boolean) => void;
    $$close: (ifClear?: boolean) => void;
    $$open: () => void;
    $$clear: () => void;
    changeMapCursor: () => void;
    revertMapCursor: () => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("init" | "draw")[], "init" | "draw", {
    type: "marker" | "circle" | "rectangle" | "polyline" | "polygon" | "measureArea" | "rule" | "rectZoomIn" | "rectZoomOut";
    drawOptions: Record<string, any>;
    autoClear: boolean;
    showTooltip: boolean;
    tooltipTextMap: import("./MouseTool.vue").TooltipText;
    textOptions: Record<string, any>;
    drawCursor: string;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Plugin<any[]>;
export default ElAmapMouseTool;
export declare type ElAmapMouseToolInstance = InstanceType<typeof MouseTool>;
