xframelib
Version:
The accumulated front-end development foundation library originates from projects and serves projects.
143 lines (142 loc) • 3.78 kB
TypeScript
export interface IBatteryStatus {
/**
* 电池电量 0-1
*/
level: number;
/**
* 是否充电中
*/
charging: boolean;
/**
* 充电时间
*/
chargingTime?: number;
/**
* 续航时间
*/
dischargingTime?: number;
}
export type BatteryCallbackFunc = (battery: IBatteryStatus) => void;
/**
* 提供通用浏览器全局方法封装
* 浏览器插件
*/
declare class NavigatorPlugin {
private static batteryStatusCallback;
private static _battery;
/**
* 电池电量发生变化
* @param status
*/
private static batteryStatusChange;
/**
* 监听电池电量发生变化
* @param pbatteryStatusCallback
*/
static OnBatteryStatusHandler(pbatteryStatusCallback: BatteryCallbackFunc): Promise<void>;
/**
* 移除电池电量变化
*/
static OffBatteryStatusHandler(): void;
private static onlineChangeCallback;
private static networkStatusChangeHandler;
private static networkStatusChange;
/**
* 联网状态
* @returns
*/
static isOnline(): boolean;
/**
* 监听网络变化
*/
static OnNetworkHandle(onlineChange: (status: boolean) => void): void;
/**
* 移除监听
* @param onlineChange
*/
static OffNetworkHandle(): void;
/**
* 下载网速(估算)
* @param speadCallback
* @returns 单位Mbps
*/
static downloadSpead(speadCallback?: Function): number;
/**
* 振动设备
* @param duration 多少ms,默认300
*/
static vibrate(duration?: number | number[]): Promise<void>;
private static defaultSpeakOption;
/**
* 改变默认设置
* @param volume 音量,默认0.2 (0-1.0)
* @param rate 音速,默认1 (0.1~2)
* @param pitch 音调,默认1 (0~2)
* @param voice 类型,默认0
*/
static changeSpeakOptions(volume?: number, rate?: number, pitch?: number, voice?: number): void;
/**
* 获取所支持的声音列表
* @returns
*/
static getSupportedVoices(): string[];
/**
* 获取所支持的语言列表
* @returns
*/
static getSupportedLanguages(): readonly string[];
/**
* 说中文
* @param text_zhCN 中文文字
* @param lang 语言类型,默认为zh-CN
*/
static speak(text_zhCN: string, lang?: string): Promise<void>;
/**
* 其他文字转声音
* @param text 文字
* @param lang 语音类型
*/
static speakEnglish(text: string): Promise<void>;
/**
* 停止说话
*/
static stopSpeak(): void;
/**
* 请求和打开通知提示窗体
* @param title 标题
* @param body 内容
* @param pOptions 更多选项
* @param closeCallback 关闭回调
* @param clickCallback 点击回调
*/
static openNotification(title: string, body?: string, pOptions?: NotificationOptions, closeCallback?: Function, clickCallback?: Function): void;
/**
* 页面是否可见
* @returns
*/
static isPageVisible(): boolean;
/**
* 当页面可见性变化(例如:页面不可见,关闭音乐)
* @param callbackFunc 回调函数
*/
static onPageVisibleChange(callbackFunc: (visible: boolean) => any): void;
/**
* 复制
* 到剪切板上
* @param value
*/
static copyText(value: string): Promise<void>;
/**
* 读剪切板里内容
* @returns
*/
static readText(): Promise<string>;
/**
*
* 页面内容切换变化 (例如:图片切换)
* @param updateHtmlContent
* @returns
*/
static viewTransition(updateHtmlContent: Function): void;
}
export default NavigatorPlugin;