///
import type { VueNode } from "../../demi-polyfill";
import type { SetMap } from "../../hooks/useHeycarMap";
import { Status, type GmapLoaderProps, type UseMapLoaderProps } from "../../hooks/useMapLoader";
import { type MapSupplierPayolad } from "../../hooks/useMapSupplier";
import type { AmapMap } from "../../types/interface";
import { type AmapProps } from "../Amap";
export type MapProviderProps = UseMapLoaderProps & Pick;
export declare const MapProvider: import("vue-demi").DefineComponent, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").EmitByProps>, "success" | "fail" | "downloadOptimizeEnd", import("vue-demi").PublicProps, MapProviderProps, MapProviderProps, import("vue-demi").SlotsType<{
renderLoadFailedTitle?: ((status: Status) => string | undefined) | undefined;
renderLoadFailedDescription?: ((status: Status) => string | undefined) | undefined;
reportLog?: ((data: any) => void) | undefined;
} & {
default?: import("../../demi-polyfill").Slot | undefined;
}>>;
export interface HeycarMapProps extends Pick, Pick {
mapRef?: SetMap | SetMap;
outerArea?: () => VueNode;
touchZoomCenter?: boolean;
touchEnable?: boolean;
onDragEnd?: (value: [number, number]) => any;
onZoomEnd?: (value: number) => any;
onResize?: () => any;
amapStyle?: string;
}
export declare const HeycarMap: import("vue-demi").DefineComponent, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").Empty, import("../../types/helper").EmitByProps>, "resize" | "dragEnd" | "zoomEnd", import("vue-demi").PublicProps, HeycarMapProps, HeycarMapProps, import("vue-demi").SlotsType<{
mapRef?: SetMap | SetMap | undefined;
outerArea?: (() => VueNode) | undefined;
fallback?: (() => import("vue-demi").VNodeChild) | undefined;
loading?: (() => import("vue-demi").VNodeChild) | undefined;
} & {
default?: import("../../demi-polyfill").Slot | undefined;
}>>;