智能照明系统APP-本地串口
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
LightingSystemApp-serial/.svn/pristine/b2/b2c48d8dab0f3ae526a7327d4e2...

203 lines
4.3 KiB

3 years ago
/**
* @file 位置
*/
declare namespace my {
interface ILocation {
/**
* 纬度,浮点数,范围为-90~90,负数表示南纬
*/
latitude: number;
/**
* 经度,浮点数,范围为-180~180,负数表示西经
*/
longitude: number;
}
interface IGetLocationSuccessResult {
/**
* 城市级别的地区代码(type>0生效)
*/
readonly cityAdcode?: string;
/**
* 国家编号 (type>0生效)
*/
readonly countryCode?: string;
/**
* 省份(type>0生效)
*/
readonly province?: string;
/**
* 区县级别的地区代码(type>0生效)
*/
readonly districtAdcode?: string;
/**
* 需要POI级别逆地理的才会有的字段,定位点附近的 POI 信息,结构是:{name, address}(type>2生效)
*/
readonly pois?: ReadonlyArray<{ readonly name: string; readonly address: string; }>;
/**
* 城市(type>0生效)
*/
readonly city?: string;
/**
* 区县(type>0生效)
*/
readonly district?: string;
/**
* 需要街道级别逆地理的才会有的字段,街道门牌信息,结构是:{street, number} (type>1生效)
*/
readonly streetNumber?: {
readonly street: string;
readonly number: string;
};
/**
* 国家(type>0生效)
*/
readonly country?: string;
/**
* 纬度
*/
readonly latitude: string;
/**
* 精确度,单位m
*/
readonly accuracy: string;
/**
* 经度
*/
readonly longitude: string;
/**
* 水平精确度,单位m
*/
readonly horizontalAccuracy: string;
}
interface IGetLocationFailResult {
/**
* - 11:请确认定位相关权限已开启。提示用户打开定位权限
* - 12:网络异常,请稍后再试。提示用户检查当前网络
* - 13:定位失败,请稍后再试
* - 14:业务定位超时。提示用户再次尝试
*/
readonly error: 11 | 12 | 13 | 14;
}
interface IGetLocationOptions {
/**
* 支付宝客户端经纬度定位缓存过期时间,单位秒。默认 30s。使用缓存会加快定位速度,缓存过期会重新定位
*/
cacheTimeout?: number;
/**
* - 0:默认,获取经纬度
* - 1:获取经纬度和详细到区县级别的逆地理编码数据
* - 2:获取经纬度和详细到街道级别的逆地理编码数据,不推荐使用
* - 3:获取经纬度和详细到POI级别的逆地理编码
*/
type?: 0 | 1 | 2 | 3;
/**
* 接口调用成功的回调函数
*/
success?: (res: IGetLocationSuccessResult) => void;
/**
* 调用失败的回调函数
*/
fail?(res: IGetLocationFailResult): void;
/**
* 调用结束的回调函数(调用成功、失败都会执行)
*/
complete?(res: IGetLocationFailResult | IGetLocationSuccessResult): void;
}
/**
* 获取用户当前的地理位置信息
*/
function getLocation(options: IGetLocationOptions): void;
interface IChooseLocationResult extends Readonly<ILocation> {
/**
* 位置名称
*/
readonly name: string;
/**
* 详细地址
*/
readonly address: string;
}
interface IChooseLocationOptions {
/**
* 接口调用成功的回调函数
*/
success?: (res: IChooseLocationResult) => void;
/**
* 调用失败的回调函数
*/
fail?(): void;
/**
* 调用结束的回调函数(调用成功、失败都会执行)
*/
complete?(res?: IChooseLocationResult): void;
}
/**
* 使用支付宝内置地图选择地理位置。
*/
function chooseLocation(options: IChooseLocationOptions): void;
interface IOpenLocationOptions extends ILocation {
/**
* 缩放比例,范围1~28,默认为28
*/
scale?: number;
/**
* 位置名
*/
name?: string;
/**
* 地址的详细说明
*/
address?: string;
/**
* 调用成功的回调函数
*/
success?(): void;
/**
* 调用失败的回调函数
*/
fail?(): void;
/**
* 调用结束的回调函数(调用成功、失败都会执行)
*/
complete?(): void;
}
/**
* 使用支付宝内置地图查看位置
*/
function openLocation(options: IOpenLocationOptions): void;
}