import { PayProductParam, ReportRoleType, PlatFormDevType } from "../data/const/TypeConst"

export default interface IPlatform {
    openId: string // 登录唯一标识
    deviceOS: PlatFormDevType // 设备平台类型
    loginParams: any[] // 平台登录验证参数
    // userInfo: PlatUserInfo // 用户个人数据
    hasAuthUserInfo: boolean // 是否已获取个人信息

    showLoginView(): void
    login(...args: any[]): void
    // setVerifyParam(param: any): void
    logout(): void
    init(...args: string[]): void;
    pay(orderId: string, order10cs: string, param: PayProductParam)
    exit(force?: boolean)
    restart(force?: boolean)
    // reportUser(isCreate: boolean): void

    // shareAppMessage(...args: any[]): void // 分享信息
    createUserInfo(...arges: any[]): void// 获取个人数据
    reportUserInfo(...arges: any[]): void// 上报用户信息
    reportRole(event: ReportRoleType): void// 上报角色信息
    checkMsg(str: string, cb: Function): void // 检测敏感词
    openService(): void // 打开客服窗口
    showRewardAd(adUnitId: string, kid: string, order11Id: string): void // 观看激励广告视频
    initRewardedVideoAd(key: string) // 初始化激励广告视频,在每次打开相应界面时触发
    resportShareEvent(): void
}