UNPKG

mtl-js-sdk

Version:

124 lines (117 loc) 3.59 kB
import Mobile from "./plugins/mobile"; import WebDebugger from "./plugins/web-debugger"; import Umshare from "./plugins/umshare"; import BarcodeScanner from "./plugins/barcode-scanner"; export interface Result { code: number, message?: string, data?: any } export interface Args { /** 成功回调 */ success: (data: any) => void, /** 失败回调 */ fail: (result: Result) => void, /** 完成回调 */ complete?: (result: Result) => void, } type ParameterType<T> = { [P in keyof T]: T[P]; } & Args; export interface MTLCore { loadPlugin(plugin: any): void, navigateTo(args: Args): void, redirectTo(args: Args): void, navigateBack(args: Args): void, /** 拍照或从手机相册中选图接口 */ chooseImage(o: ParameterType<{ /** 选择图片数量,默认9 */ count: number, /** 可以指定来源是相册还是相机,默认二者都有 ["album", "camera"] */ sourceType: string[] }>): void, previewImage(args: Args): void, uploadImage(args: Args): void, downloadImage(args: Args): void, getLocalImgSrc(args: Args): void, getLocalImgData(args: Args): void, scanQRCode(o: ParameterType<{ /** 可以指定来源是相册还是相机,默认二者都有 ["album", "camera"] */ scanType?: string[], /** 默认为0,扫描结果由端上处理,1则直接返回扫描结果 */ needResult?: number, /** 默认为1。1:单次扫描,n多次扫描(微信只支持单扫 */ type?: number }>): void, closeScanQRCode(args: Args): void, generateQRCode(args: Args): void, getNetworkType(args: Args): void, translateVoice(args: Args): void, startRecord(args: Args): void, stopRecord(args: Args): void, onVoiceRecordEnd(args: Args): void, playVoice(args: Args): void, stopVoice(args: Args): void, pauseVoice(args: Args): void, onVoicePlayEnd(args: Args): void, uploadVoice(args: Args): void, downloadVoice(args: Args): void, openLocation(args: Args): void, getLocation(args: Args): void, initFace(args: Args): void, faceRegister(args: Args): void, faceVerify(args: Args): void, scanInvoice(o: ParameterType<{ /** 路径 */ url?: string, /** apicode */ appCode?: string | number }>): void, recognizeInvoice(args: Args): void, scanIDCard(o: ParameterType<{ /** 路径 */ url?: string, /** apicode */ appCode?: string | number, side?: string }>): void, recognizeIDCard(args: Args): void, scanBankCard(o: ParameterType<{ /** 路径 */ url?: string, /** apicode */ appCode?: string | number }>): void, recognizeBankCard(args: Args): void, initSpeech(args: Args): void, openSpeechPage(args: Args): void, startSpeechSyn(args: Args): void, stopSpeechSyn(args: Args): void, startSpeechRecog(args: Args): void, stopSpeechRecog(args: Args): void, releaseSpeech(args: Args): void, cancelAITask(args: Args): void, request(args: Args): void, setStorage(args: Args): void, getStorage(args: Args): void, removeStorage(args: Args): void, clearStorage(args: Args): void, confirm(args: Args): void, canBack(args: Args): void, back(args: Args): void, deleteWebCache(args: Args): void, openWebview(args: Args): void, getDeviceModel(args: Args): void, getVendor(args: Args): void, dail(args: Args): void, getOSVersion(args: Args): void, uploadFile(args: Args): void, downFile(args: Args): void, getAppInfo(args: Args): void, } export interface MTL extends MTLCore { mobile: Mobile, webDebugger: WebDebugger, umshare: Umshare, barcodeScanner: BarcodeScanner, }