// Type definitions for ./src/jcfw.js // Project: [LIBRARY_URL_HERE] // Definitions by: [YOUR_NAME_HERE] <[YOUR_URL_HERE]> // Definitions: https://github.com/borisyankov/DefinitelyTyped /** * */ export declare var _GAME_LOCALUUID : string; /** * */ export declare var _GAME_INFO_HANDLER_BINDING : string; /** * */ export declare var _GAME_INFO_HANDLER_UNBINDING : string; /** * */ export declare var JC_CLOUD_URL : string; /** * */ export declare var JC_GAMELOG_URL : string; /** * */ export declare var JC_LOGIN_URL : string; /** * */ export declare var JC_NOTIFY_URL : string; /** * */ export declare var JC_SVC_URL : string; /** * */ export declare var JC_STAT_URL : string; /** * */ export declare var JC_GAMELIST_URL : string; /** * */ export declare var JC_MAIL_URL : string; /** * */ export declare var JS_RECHARGE : string; /** * */ export declare var JC_GHOST_URL : string; /** * */ export declare var KINGSOME : string; /** * */ export declare var KSOME : string; /** * */ declare namespace JCFW{ /** * */ export var localUUID : string; /** * */ export var shareInfo : /*no type*/{}; /** * */ export var _handlers : Array; /** * */ export var _inited : boolean; /** * */ export var _dayvideocount : number; /** * */ export var _greentime : number; /** * */ export var version : string; /** * */ var channel : { /** * */ WECHAT : number; /** * */ QQ_PLAY : number; /** * */ OPPO : number; /** * */ VIVO : number; /** * */ FB : number; /** * */ BAIDU : number; /** * */ TT : number; /** * */ QQ_MINI : number; /** * */ QUICK : number; /** * */ TEST : number; /** * */ ANDROID : number; /** * */ GOOGLE : number; } /** * * @param cid * @return */ function isAbroad(cid : any): boolean; /** * * @param isoffical * @param key * @param env * @return */ function __getUrl(isoffical : boolean, key : string, env : any): string; /** * @param {number} channelid : 频道ID * @param {number} gameid :游戏ID * @param {boolean} isoffical :上线版本还是测试版本 * @param {object} response :回调对象(可不填),如果填的话,可实现以下一个或多个函数: * .onLogin(logininfo) * .onLoginFail(net_err, logic_err, errmsg) * .onUpdateUser(userinfo) * .onUpdateUserFail(net_err, logic_err, errmsg) * .onShare(***) * .onShareFail(***) * @param {any} env: 某些平台登陆需要传递的参数 * @param {any} adparam: 某些平台广告环境需要传递的参数 * @param {object} cfgsuccesscb: 后台配置成功回调 * @param {object} cfgfailcb: 后台配置失败回调 * @param {any} jcdev: 是否是开发环境 * @param channelid * @param gameid * @param isoffical * @param response * @param env * @param adparam * @param cfgsuccesscb * @param cfgfailcb * @param jcdev * @param polyid */ function init(channelid : number, gameid : number, isoffical : boolean, response : any, env : any, adparam : any, cfgsuccesscb : any, cfgfailcb : any, jcdev : any, polyid : any): void; /** * */ export var sharecfg : /*no type*/{}; /** * */ export var gameID : number; /** * */ export var isOffical : boolean; /** * @param {object} man : 游戏主场景canvas的component * @param man */ function bindController(man : any): void; /** * */ function __handleLogined(): void; /** * 登陆函数 * @param {object} successcb :成功回调(初始化时设置了回调对象的话,此处可不填) * @param {object} failcb :失败回调(初始化时设置了回调对象的话,此处可不填) * @param {string} ex_param :额外参数(预留字段,某些平台可能会使用此字段) * @param {object} cfgsuccesscb :配置拉取成功回调 * @param {object} cfgfailcb :配置拉取失败回调 * @param {object} timecb :登陆完成后的在线时长回调(大概每10秒回调一次,参数为在线时长) * @param successcb * @param failcb * @param ex_param * @param cfgsuccesscb * @param cfgfailcb * @param timecb * @return */ function loginUser(successcb : any, failcb : any, ex_param : string, cfgsuccesscb : any, cfgfailcb : any, timecb : any): number; /** * */ export var _logining : boolean; /** * */ export var logined : boolean; /** * */ export var _isholiday : boolean; /** * @param {string} token : 登陆用token * @param {object} successcb : 成功后回调 * @param {object} failcb : 失败后回调 * @param token * @param successcb * @param failcb * @return */ function loginUserByToken(token : string, successcb : any, failcb : any): number; /** * */ function logout(): void; /** * @param {object} allinfo :包含用户信息的对象: 注意:allinfo.userInfo为用户实际信息 * @param {object} successcb :成功回调(初始化时设置了回调对象的话,此处可不填) * @param {object} failcb :失败回调(初始化时设置了回调对象的话,此处可不填) * @param allinfo * @param successcb * @param failcb * @return */ function updateUser(allinfo : any, successcb : any, failcb : any): number; /** * */ export var cacheuser : /*no type*/{}; /** * */ export var _userupdating : boolean; /** * @param {string} name : 真实姓名 * @param {string} idcard : 真实身份证号 * @param {boolean} isfake : 是否是假的(不校验) * @param {object} successcb : 成功回调,参数为玩家年龄 * @param {object} failcb : 失败回调 * @param name * @param idcard * @param isfake * @param successcb * @param failcb */ function bindIdCard(name : string, idcard : string, isfake : boolean, successcb : any, failcb : any): void; /** * @param {object} btninfo : 获取用户的按钮信息(微信专用),格式:{width: 100, height: 100, name: logo.png} * @param {object} successcb :成功回调 * @param {object} failcb :失败回调 * @param btninfo * @param successcb * @param failcb */ function getUserInfo(btninfo : any, successcb : any, failcb : any): void; /** * 清除授权按钮(微信用) */ function destoryAuthComponent(): void; /** * @param {object} successcb :成功回调 * @param {object} failcb :失败回调 * @param successcb * @param failcb */ function initGlobalConfig(successcb : any, failcb : any): void; /** * @param {object} successcb :成功回调 * @param {object} failcb :失败回调 * @param successcb * @param failcb * @param bforce */ function initShareConfig(successcb : any, failcb : any, bforce : boolean): void; /** * @param {object} successcb :成功回调 * @param {object} failcb :失败回调 * @param successcb * @param failcb */ function initPlayerData(successcb : any, failcb : any): void; /** * 保存用户相关配置信息 * @param successcb * @param failcb */ function savePlayerData(successcb : any, failcb : any): void; /** * 简化接收每日任务/成就邀请(默认1001为邀请好友的成就,其他成就不可使用此id) * @param info */ function acceptInvite(info : any): void; /** * 普通分享 * @param {string} content 分享显示的标题 * @param {string} imgurl 分享显示的图片 * @param {int} sharetype 分享类型(每日活动/成就/接力) * @param {string} shareparam 分享类型相关参数(活动id/成就id等) * @param {string} extrainfo 分享额外参数(key/value格式的字符串:eg: 'inviter_name=***&inviter_sex=***' * @param {object} successcb * @param {object} failcb * @param {number} imgindex 图片在后台的索引(可不填) * @param content * @param imgurl * @param sharetype * @param shareparam * @param extrainfo * @param successcb * @param failcb * @param imgindex */ function shareNormal(content : string, imgurl : string, sharetype : any, shareparam : string, extrainfo : string, successcb : any, failcb : any, imgindex : number): void; /** * 截图分享 * @param {string} content 分享显示的标题 * @param {cc.Rect} capture_rect 分享要截图的区域 * @param {int} sharetype 分享类型(每日活动/成就/接力) * @param {string} shareparam 分享类型相关参数(活动id/成就id等) * @param {string} extrainfo 分享额外参数(key/value格式的字符串:eg: 'inviter_name=***&inviter_sex=***' * @param {object} successcb * @param {object} failcb * @param content * @param capture_rect * @param sharetype * @param shareparam * @param extrainfo * @param successcb * @param failcb * @param imgindex */ function shareCapture(content : string, capture_rect : any, sharetype : any, shareparam : string, extrainfo : string, successcb : any, failcb : any, imgindex : any): void; /** * 生成分享参数字符串 * @param sharetype * @param shareparam * @param extrainfo * @return */ function makeShareParam(sharetype : any, shareparam : any, extrainfo : any): any; /** * @param {object} successcb 成功回调 * @param {object} failcb 失败回调 * @param {string} typestr 分享类型【与后台配置相符】 * @param {string} exparam 额外参数 * @param successcb * @param failcb * @param typestr * @param exparam */ function simpleShare(successcb : any, failcb : any, typestr : string, exparam : string): void; /** * @param {string} stype 分享/广告类型【与后台配置相符】 * @param {string} param 额外参数(必须是json格式): * a)如果需要截屏分享,参数需配置成如下格式: * let paramobj = { * ... * rc:{x:*,y:*,width:**,height:**}, * ... * }; * b)如果分享需要指定分享组的某张图片,参数需配置成如下格式: * let paramobj = { * ... * shareindex: **(分享组图片索引) * ... * }; * c)如果分享需要动态的title,参数需配置成如下格式: * let paramobj = { * ... * titleparam: [*,*,...](title参数) * ... * }; * @param {object} cb 回调,参数如下: * 【参数1】isOK:是否成功:false/true, * 【参数2】errCode:失败的errcode, * 【参数3】flag:是分享还是广告的标识:0-none;1-share;2-ad, * 【参数4】isADErr:广告失败时,是否是出错了(false:未看完关闭/true:出错) * 【参数5】isDiff:最终是分享(广告),是否与后台配置的一致 */ interface ADShare { /** * * @param stype * @param param * @param cb * @return */ new (stype : string, param : string, cb : any): ADShare; } /** * 优先观看视频广告,到指定次数后分享,分享内容读取配置 * @param {string} stype 分享/广告类型【与后台配置相符】 * @param {string} param 额外参数(必须是json格式) * @param {object} cb 回调,参数:1:是否成功:false/true,2.失败的errcode, 3.是分享还是广告的标识:0-none;1-share;2-ad */ interface ADShareCommon { /** * * @param stype * @param param * @param cb * @return */ new (stype : string, param : string, cb : any): ADShareCommon; } /** * 激励视频广告【尽量使用ADShare函数而不使用此函数】 */ interface ADWatch { /** * * @param adid * @param adname * @param successcb * @param failcb * @return */ new (adid : any, adname : any, successcb : any, failcb : any): ADWatch; } /** * 激励视频广告(可多个视频id随机播放)【尽量使用ADShare函数而不使用此函数】 */ interface ADsWatch { /** * * @param adlst * @param adname * @param successcb * @param failcb * @return */ new (adlst : any, adname : any, successcb : any, failcb : any): ADsWatch; } /** * banner处理【尽量使用Baselayer而不使用以下banner处理函数】 * banner初始化 */ interface ADBanner_init { /** * * @param adid * @param adname * @return */ new (adid : Array, adname : any): boolean; } /** * banner显示 */ interface ADBanner_Show { /** * * @param adname * @param successcb * @param failcb * @param adid * @param breload * @return */ new (adname : any, successcb : any, failcb : any, adid : any, breload : any): any; } /** * banner隐藏 */ interface ADBanner_Hide { /** * * @param adname * @return */ new (adname : any): ADBanner_Hide; } /** * banner直接显示(无需初始化) */ interface ADBanner_ShowEx { /** * * @param adid * @param adname * @param successcb * @param failcb * @param adwidth * @return */ new (adid : any, adname : any, successcb : any, failcb : any, adwidth : any): ADBanner_ShowEx; } /** * banner销毁 */ interface ADBanner_Destroy { /** * * @param obj * @param realdestroy * @return */ new (obj : any, realdestroy : any): ADBanner_Destroy; } /** * 手动控制banner的显示/隐藏 */ interface ADBanner_Switch { /** * * @param bshow * @return */ new (bshow : any): ADBanner_Switch; } /** * 插屏广告处理 */ interface ADInsert_Show { /** * * @param adid * @param adname * @param successcb * @param failcb * @return */ new (adid : any, adname : any, successcb : any, failcb : any): ADInsert_Show; } /** * * @return */ function _randomBannerAD(): /* !this._bannerids.0 */ any; /** * 生成唯一ID【无需关注此函数】 * @return */ function currUUID(): /* !this._tmpuuid */ any; /** * */ function makeUUID(): void; /** * 根据OpenID生成账号ID【通常情况不使用此函数】 * @param openid */ function makeAccountID(openid : any): void; /** * 重置本地ID【通常情况不使用此函数】 */ function resetLocalID(): void; /** * avatar说话内容 */ function talkMsgs(): void; /** * 添加监听处理器 * handler是回调对象,按实际需要可实现以下一个或多个回调: * .onJCInit(channelid, gameid, isoffical){} * .onJCAccountID(accountid, sessionid){} * .onJCLocalUUID(localuuid){} * .onJCUserInfo(userinfo){} * .onJCLaunchInfo(lauchscene, lauchfromid, launchparam){} * .onJCGameStart(startmode, extparam){} * .onJCGameOver(score, bsuccess, extparam){} * @param handler * @return */ function addHandler(handler : any): boolean; /** * 删除监听处理器 * @param handler * @return */ function delHandler(handler : any): boolean; /** * 设置sdk回调 * @param rsp */ function setResponse(rsp : any): void; /** * 设置视频广告是否开启开关【使用login.fire无需手动调用此函数】 * @param turnoff */ function setADSwitch(turnoff : boolean): void; /** * */ export var _offad : boolean; /** * 设置banner广告是否开启开关【使用login.fire无需手动调用此函数】 * @param turnoff */ function setBannerADSwitch(turnoff : boolean): void; /** * */ export var _offbanner : boolean; /** * 设置插屏广告是否开启开关【使用login.fire无需手动调用此函数】 * @param turnoff */ function setInsertADSwitch(turnoff : boolean): void; /** * */ export var _offinsert : boolean; /** * 设置是否开启审核开关【使用login.fire无需手动调用此函数】 * @param isaudit */ function setAuditSwitch(isaudit : boolean): void; /** * */ export var isVerify : boolean; /** * 设置是否是测试模式开关【使用login.fire无需手动调用此函数】 * @param istestmode */ function setTestModeSwitch(istestmode : boolean): void; /** * */ export var _istestmode : boolean; /** * 设置每日视频播放限制数量(-1为不限制)【使用login.fire无需手动调用此函数】 * @param cnt */ function setVideoLimit(cnt : any): void; /** * 设置存储是否开启云存储开关 * @param iscloud */ function setStorageFlag(iscloud : any): void; /** * 获取是否开启云存储标识 */ function getStorageFlag(): void; /** * 获取服务器当前时间【登陆完成后才能调用】 * @return */ function getServerNowTime(): /* !this.loginSrvTime */ any; /** * 获取AccountID * @return */ function getUserID(): /* !this.accountID */ any; /** * 获取是否是节假日 * @return */ function isHoliday(): /* !this._isholiday */ any; /** * 获取健康游戏时间 * @return */ function getGreenTime(): /* !this._greentime */ any; /** * * @return */ function isTestMode(): /* !this._istestmode */ any; /** * 游戏相关------------------------------------------------------- * 游戏开始 * startmode: 0:正常开始游戏 1:重新开始 2:再来一次 * @param startmode * @param extparam */ function gameStart(startmode : any, extparam : any): void; /** * 游戏结束 * @param score * @param bsuccess * @param extparam */ function gameOver(score : any, bsuccess : any, extparam : any): void; /** * 游戏显示【无需手动调用】 * @param showinfo */ function gameShow(showinfo : any): void; /** * 游戏隐藏【无需手动调用】 */ function gameHide(): void; /** * 使用道具 * @param itemid * @param itemcount * @param reson * @param extparam */ function gameUseItem(itemid : any, itemcount : any, reson : any, extparam : any): void; /** * 获得道具 * @param itemid * @param itemcount * @param reson * @param extparam */ function gameGetItem(itemid : any, itemcount : any, reson : any, extparam : any): void; /** * * @return */ function gameVibrate(): /* !this.plat */ any; /** * * @return */ function gameVibrateLong(): /* !this.plat */ any; /** * 开始录屏 * @param duration * @param cb * @return */ function gameStartRecord(duration : any, cb : any): /* !this.plat */ any; /** * 停止录屏 * @param cb * @return */ function gameStopRecord(cb : any): /* !this.plat */ any; /** * 是否在录屏 * @return */ function gameIsRecording(): /* !this.plat */ any; /** * 以下函数无需手动调用 * @param accountid * @param sessionid * @param exobj */ function setAccountID(accountid : any, sessionid : any, exobj : any): void; /** * * @param uuid */ function setLocalUUID(uuid : any): void; /** * * @param nickname */ function setNickName(nickname : any): void; /** * * @param appid * @param scene * @param paramobj */ function setFromAppID(appid : any, scene : any, paramobj : any): void; /** * * @param info */ function setSystemInfo(info : any): void; /** * * @param info */ function setUserInfo(info : any): void; /** * * @param srvtime */ function setServerTime(srvtime : any): void; /** * */ export var _countid : number; /** * */ export var loginLocalTime : number; /** * */ function _countservertime(): void; /** * */ function _loadLocalID(): void; /** * */ function _saveLocalID(): void; /** * */ function _cleanLocalID(): void; /** * */ function _loadLaunchInfo(): void; /** * */ function _loadSystemInfo(): void; /** * * @param cfgsuccesscb * @param cfgfailcb */ function _loadConfig(cfgsuccesscb : any, cfgfailcb : any): void; /** * */ export var maincfg : /*no type*/{}; /** * * @param info */ function _loadShareConfig(info : any): void; /** * * @param obj */ function _initHandler(obj : any): void; /** * * @param channelid * @param gameid * @param isoffical */ function _handleInit(channelid : number, gameid : number, isoffical : boolean): void; /** * * @param accountid * @param sessionid * @param exobj */ function _handleAccountID(accountid : any, sessionid : any, exobj : any): void; /** * * @param localuuid */ function _handleLocalID(localuuid : any): void; /** * * @param nickname */ function _handleNickName(nickname : any): void; /** * * @param userinfo */ function _handleUserInfo(userinfo : any): void; /** * * @param lauchscene * @param lauchfromid * @param launchparam */ function _handleLauchInfo(lauchscene : any, lauchfromid : any, launchparam : any): void; /** * * @param servertime * @param localtime */ function _handleServerTime(servertime : any, localtime : number): void; /** * * @param startmode * @param extparam */ function _handleGameStart(startmode : any, extparam : any): void; /** * * @param score * @param bsuccess * @param extparam */ function _handleGameOver(score : any, bsuccess : any, extparam : any): void; /** * * @param showinfo */ function _handleGameShow(showinfo : any): void; /** * * @param hideinfo */ function _handGameHide(hideinfo : any): void; /** * * @param lst * @param notifyobj */ function _handleNotifyMsgs(lst : any, notifyobj : any): void; /** * */ function _checkListener(): void; /** * * @param id * @param polyid */ function _fixChannelID(id : number, polyid : any): void; /** * */ export var channelID : number; /** * */ export var polyID : number; /** * * @param cfg */ function _handleCfg(cfg : any): void; /** * */ export var config_version : string; /** * */ export var _bannerids : Array; /** * */ export var _bannertimeout : number; /** * 检查当日是否还可以播放视频激励广告 * 使用统一的每日激励广告限额来检查 * @param stype * @return */ function canIShare(stype : any): boolean; /** * @param {string} appid 要跳转的appid * @param {string} apppath 传入的path参数 * @param {object} param_kvlst : Array,key/value参数的列表:eg:[{key: "aaa", value: "bbb"}] * @param {object} cb : 跳转后的回调函数 * @param {string} env : 跳转小程序的版本(需要时传入,一般不传):develop:开发版;trial:体验版 * @param appid * @param apppath * @param param_kvlst * @param cb * @param env */ function gotoJCApp(appid : string, apppath : string, param_kvlst : any, cb : any, env : string): void; } declare interface cc { jc: any }