import type { LngLatLike, MarkerOptions, PopupOptions } from 'maplibre-gl';
import { Marker } from 'maplibre-gl';
import type { PropType, Ref } from 'vue';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    coordinates: {
        type: PropType<LngLatLike>;
        default: () => {};
        required: true;
    };
    options: {
        type: PropType<MarkerOptions>;
        default: () => MarkerOptions;
        required: false;
    };
    popupOptions: {
        type: PropType<PopupOptions>;
        default: () => PopupOptions;
        required: false;
    };
    cursor: {
        type: PropType<string>;
        default: string;
        required: false;
    };
}>, {
    isMarkerAvailable: Ref<boolean, boolean>;
    marker: Ref<Marker, Marker>;
    setSlotRef: (el: HTMLElement) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    coordinates: {
        type: PropType<LngLatLike>;
        default: () => {};
        required: true;
    };
    options: {
        type: PropType<MarkerOptions>;
        default: () => MarkerOptions;
        required: false;
    };
    popupOptions: {
        type: PropType<PopupOptions>;
        default: () => PopupOptions;
        required: false;
    };
    cursor: {
        type: PropType<string>;
        default: string;
        required: false;
    };
}>> & Readonly<{
    [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}>, {
    options: MarkerOptions;
    coordinates: LngLatLike;
    popupOptions: PopupOptions;
    cursor: string;
}, {}, {
    VPopup: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        marker: {
            type: PropType<Marker>;
            default: () => Marker;
            required: false;
        };
        options: {
            type: PropType<PopupOptions>;
            default: () => PopupOptions;
            required: true;
        };
        coordinates: {
            type: PropType<LngLatLike>;
            default: () => {};
            required: true;
        };
    }>, {
        content: Ref<HTMLElement | null, HTMLElement | null>;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        marker: {
            type: PropType<Marker>;
            default: () => Marker;
            required: false;
        };
        options: {
            type: PropType<PopupOptions>;
            default: () => PopupOptions;
            required: true;
        };
        coordinates: {
            type: PropType<LngLatLike>;
            default: () => {};
            required: true;
        };
    }>> & Readonly<{
        [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
    }>, {
        options: PopupOptions;
        marker: Marker;
        coordinates: LngLatLike;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
