/** * Copyright (c) 2015,Egret-Labs.org * All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * Neither the name of the Egret-Labs.org nor the * names of its contributors may be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY EGRET-LABS.ORG AND CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL EGRET-LABS.ORG AND CONTRIBUTORS BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * Created by wibrst on 2015/1/10. */ declare class wx { /** * 通过config接口注入权限验证配置 * @param bodyConfig */ static config( bodyConfig:BodyConfig ):void; /** * 通过ready接口处理成功验证 * @param cbValidated 成功验证后的处理函数 */ static ready( cbValidated:Function ):void; /** * 通过error接口处理失败验证 * @param cbError 处理失败验证后的处理函数 */ static error( cbError:Function ):void; /** * 判断当前客户端版本是否支持指定JS接口 * @param bodyCheckJsAPISupport */ static checkJsApi( bodyCheckJsAPISupport:BodyCheckJsAPISupport ):void; /** * 获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 * @param bodyMenuShareTimeline */ static onMenuShareTimeline( bodyMenuShareTimeline:BodyMenuShareTimeline ):void; /** * 获取“分享给朋友”按钮点击状态及自定义分享内容接口 * @param bodyMenuShareAppMessage */ static onMenuShareAppMessage( bodyMenuShareAppMessage:BodyMenuShareAppMessage ):void; /** * 获取“分享到QQ”按钮点击状态及自定义分享内容接口 * @param bodyMenuShareQQ */ static onMenuShareQQ( bodyMenuShareQQ:BodyMenuShareQQ ):void; /** * 获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 * @param bodyMenuShareWeibo */ static onMenuShareWeibo( bodyMenuShareWeibo:BodyMenuShareWeibo ):void; /// 华丽的分界线, 以下接口参数结构较简单或使用较少,均可自行查阅微信官方api文档给出适合的参数 /** * 拍照或从手机相册中选图接口 * @param bodyChooseImage */ static chooseImage( body:Object ):void; /** * 预览图片接口 * @param body */ static previewImage( body:Object ):void; /** * 上传图片接口 * @param body */ static uploadImage( body:Object ):void; /** * 下载图片接口 * @param body */ static downloadImage( body:Object ):void; /** * 开始录音接口 * @param body */ static startRecord( body:Object ):void; /** * 停止录音接口 * @param body */ static stopRecord( body:Object ):void; /** * 监听录音自动停止接口 * @param body */ static onVoiceRecordEnd( body:Object ):void; /** * 播放语音接口 * @param body */ static playVoice( body:Object ):void; /** * 暂停播放接口 * @param body */ static pauseVoice( body:Object ):void; /** * 停止播放接口 * @param body */ static stopVoice( body:Object ):void; /** * 监听语音播放完毕接口 * @param body */ static onVoicePlayEnd( body:Object ):void; /** * 上传语音接口 * @param body */ static uploadVoice( body:Object ):void; /** * 下载语音接口 * @param body */ static downloadVoice( body:Object ):void; // ---- 智能接口 /** * 识别音频并返回识别结果接口 * @param body */ static translateVoice( body:Object ):void; /// ---- 设备信息 /** * 获取网络状态接口 * @param body */ static getNetworkType( body:Object ):void; /// ---- 地理位置 /** * 使用微信内置地图查看位置接口 * @param body */ static openLocation( body:Object ):void; /** * 获取地理位置接口 * @param body */ static getLocation( body:Object ):void; /// ---- 界面操作 /** * 隐藏右上角菜单接口 * @param body */ static hideOptionMenu( body:Object ):void; /** * 显示右上角菜单接口 * @param body */ static showOptionMenu( body:Object ):void; /** * 关闭当前网页窗口接口 * @param body */ static closeWindow( body:Object ):void; /** * 批量隐藏功能按钮接口 * @param body */ static hideMenuItems( body:Object ):void; /** * 批量显示功能按钮接口 * @param body */ static showMenuItems( body:Object ):void; /** * 隐藏所有非基础按钮接口 * @param body */ static hideAllNonBaseMenuItem( body:Object ):void; /** * 显示所有功能按钮接口 * @param body */ static showAllNonBaseMenuItem( body:Object ):void; /// ---- 微信扫一扫 /** * 调起微信扫一扫接口 * @param body */ static scanQRCode( body:Object ):void; /// ---- 微信小店 /** * 跳转微信商品页接口 * @param body */ static openProductSpecificView( body:Object ):void; /// ---- 微信卡券 /** * 调起适用于门店的卡券列表并获取用户选择列表 * @param body */ static chooseCard( body:Object ):void; /** * 批量添加卡券接口 * @param body */ static addCard( body:Object ):void; /** * 查看微信卡包中的卡券接口 * @param body */ static openCard( body:Object ):void; /// ---- 微信支付 /** * 发起一个微信支付请求 * @param body */ static chooseWXPay( body:Object ):void; } ///////////////////////////////// 常用API的参数结构类 /** * config 参数结构 * jsApiList: 所有要调用的 API */ declare class BodyConfig { debug:boolean; appId:string; timestamp:number; nonceStr:string; signature:string; jsApiList:Array; } /** * checkJsApi 参数结构 * jsApiList: 需要检测的JS接口列表 */ declare class BodyCheckJsAPISupport { success:Function; jsApiList:Array; } /** * onMenuShareTimeline 参数结构 */ declare class BodyMenuShareTimeline { title:string; link:string; imgUrl:string; success:Function; cancel: Function; } /** * onMenuShareAppMessage 参数结构 */ declare class BodyMenuShareAppMessage { title:string; desc:string; link:string; imgUrl:string; type:string; dataUrl:string; success:Function; cancel: Function; } /** * onMenuShareQQ 参数结构 */ declare class BodyMenuShareQQ { title:string; desc:string; link:string; imgUrl:string; type:string; dataUrl:string; success:Function; cancel: Function; } /** * onMenuShareWeibo 参数结构 */ declare class BodyMenuShareWeibo { title:string; desc:string; link:string; imgUrl:string; success:Function; cancel: Function; } export default wx;