import type { PropType as __PropType } from 'vue';
import type { Type as GeometryType } from 'ol/geom/Geometry';
import type { GeometryFunction } from 'ol/interaction/Draw';
import type { Condition } from 'ol/events/condition';
declare const _sfc_main: import("vue").DefineComponent<{
    type: {
        type: __PropType<GeometryType>;
        required: true;
    };
    clickTolerance: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    dragVertexDelay: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    snapTolerance: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    stopClick: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
    maxPoints: {
        type: __PropType<number | undefined>;
        required: false;
    };
    minPoints: {
        type: __PropType<number | undefined>;
        required: false;
    };
    finishCondition: {
        type: __PropType<(() => boolean) | undefined>;
        required: false;
    };
    geometryFunction: {
        type: __PropType<GeometryFunction | undefined>;
        required: false;
    };
    geometryName: {
        type: __PropType<string | undefined>;
        required: false;
    };
    condition: {
        type: __PropType<(() => boolean) | undefined>;
        required: false;
    };
    freehand: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
    freehandCondition: {
        type: __PropType<Condition | undefined>;
        required: false;
    };
    wrapX: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("drawstart" | "drawend")[], "drawstart" | "drawend", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    type: {
        type: __PropType<GeometryType>;
        required: true;
    };
    clickTolerance: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    dragVertexDelay: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    snapTolerance: {
        type: __PropType<number | undefined>;
        required: false;
        default: number;
    };
    stopClick: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
    maxPoints: {
        type: __PropType<number | undefined>;
        required: false;
    };
    minPoints: {
        type: __PropType<number | undefined>;
        required: false;
    };
    finishCondition: {
        type: __PropType<(() => boolean) | undefined>;
        required: false;
    };
    geometryFunction: {
        type: __PropType<GeometryFunction | undefined>;
        required: false;
    };
    geometryName: {
        type: __PropType<string | undefined>;
        required: false;
    };
    condition: {
        type: __PropType<(() => boolean) | undefined>;
        required: false;
    };
    freehand: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
    freehandCondition: {
        type: __PropType<Condition | undefined>;
        required: false;
    };
    wrapX: {
        type: __PropType<boolean | undefined>;
        required: false;
        default: boolean;
    };
}>> & {
    onDrawstart?: ((...args: any[]) => any) | undefined;
    onDrawend?: ((...args: any[]) => any) | undefined;
}, {
    clickTolerance: number | undefined;
    dragVertexDelay: number | undefined;
    snapTolerance: number | undefined;
    stopClick: boolean | undefined;
    freehand: boolean | undefined;
    wrapX: boolean | undefined;
}>;
export default _sfc_main;
