///
import { ImageSourcePropType } from 'react-native';
import type { NaviLatLng, NaviPoi, NaviLocation, NaviCalculateRouteResult, NaviType, NaviShowMode, NaviTrackingMode } from '../types';
import Component from '../map-view/component';
export declare type DriveNaviPointProp = string | NaviLatLng | NaviPoi | Array;
export interface DriveNaviViewProp {
/**
* 导航起点,不指定则从当前位置开始导航
*/
from?: DriveNaviPointProp;
/**
* 导航目的地
*/
to: DriveNaviPointProp;
/**
* 导航途经点
*/
wayPoints?: Array;
/**
* 导航策略
*/
strategy?: number;
/**
* 导航UI是否可见(默认可见)
*/
layoutVisible?: boolean;
/**
* 是否自动缩放地图
*/
autoChangeZoom?: boolean;
/**
* 是否开启自动黑夜模式切换,默认为false,不自动切换
*/
autoDayNightMode?: boolean;
/**
* 是否显示路线上的摄像头气泡
*/
cameraBubbleVisible?: boolean;
/**
* 指南针图标否在导航界面显示,默认显示。
*/
compassVisible?: boolean;
/**
* 是否显示路线转向箭头
*/
turnArrowVisible?: boolean;
/**
* 导航状态下屏幕是否常亮
*/
screenAlwaysBright?: boolean;
/**
* 是否显示路线全览按钮
*/
browseButtonVisible?: boolean;
/**
* 更多按钮是否显示
*/
moreButtonVisible?: boolean;
/**
* 设置锁车下地图倾角 倾角为0时地图模式是2D模式。
*/
tilt?: number;
/**
* 设置路况光柱条是否显示。
*/
trafficBarVisible?: boolean;
/**
* 设置实时交通按钮是否显示。
*/
trafficButtonVisible?: boolean;
/**
* 设置实时交通路线是否显示
*/
trafficLineVisible?: boolean;
carMarkerIcon?: ImageSourcePropType;
startMarkerIcon?: ImageSourcePropType;
endMarkerIcon?: ImageSourcePropType;
wayMarkerIcon?: ImageSourcePropType;
fourCornersIcon?: ImageSourcePropType;
/**
* 导航显示模式
*/
showMode?: NaviShowMode;
/**
* 设置导航界面跟随模式
*/
trackingMode?: NaviTrackingMode;
/**
* 导航组件初始化失败时分发
*/
onInitNaviFailure?: () => void;
/**
* 导航组件初始化成功时分发
*/
onInitNaviSuccess?: () => void;
/**
* 开始导航时分发
*/
onStartNavi?: (event: {
type: number;
}) => void;
/**
* 位置信息发生变化时分发
*/
onLocationChange?: (event: NaviLocation) => void;
/**
* 导航语音播报时分发
*/
onGetNavigationText?: (event: {
text: string;
}) => void;
/**
* 模拟导航结束时分发
*/
onEndEmulatorNavi?: () => void;
/**
* 路径计算失败时分发
*/
onCalculateRouteFailure?: (event: NaviCalculateRouteResult) => void;
/**
* 到达途经点时分发
*/
onArrivedWayPoint?: (event: {
wayId: number;
}) => void;
/**
* GPS状态改变时分发
*/
onGpsStatusChanged?: (event: {
status: boolean;
}) => void;
/**
* 路径计算成功时分发
*/
onCalculateRouteSuccess?: (event: NaviCalculateRouteResult) => void;
/**
* 响铃时分发
*/
onPlayRing?: (event: {
type: number;
}) => void;
/**
* 导航设置发生改变时分发
*/
onNaviSettingChanged?: () => void;
/**
* 导航取消时分发
*/
onNaviCancel?: () => void;
/**
* 导航完成时分发
*/
onNaviComplete?: () => void;
/**
* 地图加载完成时分发
*/
onNaviViewLoaded?: () => void;
/**
* 点击导航返回按钮时分发
*/
onNaviBackClick?: () => void;
/**
* 点击全览按钮时分发
*/
onScanViewButtonClick?: () => void;
/**
* 导航地图模式改变时分发(锁车、全览、普通)
*/
onNaviMapModeChanged?: (event: {
mode: number;
}) => void;
/**
* 地图类型发生改变时分发(白天、黑夜模式)
*/
onNaviMapViewModeChanged?: (event: {
type: number;
}) => void;
/**
* 导航界面跟随模式改变后分发
*/
onNaviMapViewTrackingModeChanged?: (event: {
mode: number;
}) => void;
/**
* 地图锁定时分发
*/
onLockMap?: (event: {
isLock: boolean;
}) => void;
}
export declare class DriveNaviView extends Component {
static propTypes: {
from: import("prop-types").Requireable;
longitude: import("prop-types").Validator;
}> | import("prop-types").InferProps<{
name: import("prop-types").Validator;
coordinate: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}>>;
poiId: import("prop-types").Validator;
direction: import("prop-types").Requireable;
}> | (string | null | undefined)[] | (import("prop-types").InferProps<{
latitude: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}> | null | undefined)[] | (import("prop-types").InferProps<{
name: import("prop-types").Validator;
coordinate: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}>>;
poiId: import("prop-types").Validator;
direction: import("prop-types").Requireable;
}> | null | undefined)[]>;
to: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}> | import("prop-types").InferProps<{
name: import("prop-types").Validator;
coordinate: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}>>;
poiId: import("prop-types").Validator;
direction: import("prop-types").Requireable;
}> | (string | null | undefined)[] | (import("prop-types").InferProps<{
latitude: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}> | null | undefined)[] | (import("prop-types").InferProps<{
name: import("prop-types").Validator;
coordinate: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}>>;
poiId: import("prop-types").Validator;
direction: import("prop-types").Requireable;
}> | null | undefined)[]>;
wayPoints: import("prop-types").Requireable<(string | null | undefined)[] | (import("prop-types").InferProps<{
latitude: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}> | null | undefined)[] | (import("prop-types").InferProps<{
name: import("prop-types").Validator;
coordinate: import("prop-types").Validator;
longitude: import("prop-types").Validator;
}>>;
poiId: import("prop-types").Validator;
direction: import("prop-types").Requireable;
}> | null | undefined)[]>;
strategy: import("prop-types").Requireable;
layoutVisible: import("prop-types").Requireable;
autoChangeZoom: import("prop-types").Requireable;
autoDayNightMode: import("prop-types").Requireable;
cameraBubbleVisible: import("prop-types").Requireable;
compassVisible: import("prop-types").Requireable;
leaderLineColor: import("prop-types").Requireable;
turnArrowVisible: import("prop-types").Requireable;
screenAlwaysBright: import("prop-types").Requireable;
browseButtonVisible: import("prop-types").Requireable;
moreButtonVisible: import("prop-types").Requireable;
tilt: import("prop-types").Requireable;
trafficBarVisible: import("prop-types").Requireable;
trafficButtonVisible: import("prop-types").Requireable;
trafficLineVisible: import("prop-types").Requireable;
carMarkerIcon: import("prop-types").Requireable