interface.uts 2.8 KB
Newer Older
DCloud-yyl's avatar
DCloud-yyl 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
export type GetProviderSuccess = {
    /**
     * 服务类型
     * - oauth: 授权登录
     * - share: 分享
     * - payment: 支付
     * - push: 推送
     * - location: 定位
     * @type 'oauth' | 'share' | 'payment' | 'push' | 'location'
     */
    service: 'oauth' | 'share' | 'payment' | 'push' | 'location',
    /**
     * 得到的服务供应商
     * @type PlusShareShareService['id'][] | PlusPushClientInfo['id'][] | PlusOauthAuthService['id'][] | PlusPaymentPaymentChannel['id'][]
     */
    provider: string[],
    /**
     * 得到的服务供应商服务对象
雪洛's avatar
雪洛 已提交
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
	 * @uniPlatform {
	 *    "app": {
	 *        "android": {
	 *            "osVer": "5.0",
	 *            "uniVer": "√",
	 *            "unixVer": "4.18"
	 *        },
	 *        "ios": {
	 *            "osVer": "9.0",
	 *            "uniVer": "√",
	 *            "unixVer": "4.18"
	 *        }
	 *    },
	 *    "web": {
	 *        "uniVer": "x",
	 *        "unixVer": "x"
	 *    }
DCloud-yyl's avatar
DCloud-yyl 已提交
36
	 * }
DCloud-yyl's avatar
DCloud-yyl 已提交
37
     */
雪洛's avatar
雪洛 已提交
38

DCloud-yyl's avatar
DCloud-yyl 已提交
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
    providers: UniProvider[],
    /**
     * 描述信息
     */
    errMsg: string
};
export type GetProviderSuccessCallback = (result: GetProviderSuccess) => void;
export type GetProviderFail = UniError;
export type GetProviderFailCallback = (result: GetProviderFail) => void;
export type GetProviderComplete = any;
export type GetProviderCompleteCallback = (result: GetProviderComplete) => void;
export type GetProviderOptions = {
    /**
     * 服务类型,可取值“oauth”、“share”、“payment”、“push”、“location”
     * - oauth: 授权登录
     * - share: 分享
     * - payment: 支付
     * - push: 推送
     * - location: 定位
     * @type 'oauth' | 'share' | 'payment' | 'push' | 'location'
     */
    service: 'oauth' | 'share' | 'payment' | 'push' | 'location',
    /**
     * 接口调用成功的回调
     */
    success?: GetProviderSuccessCallback | null,
    /**
     * 接口调用失败的回调函数
     */
    fail?: GetProviderFailCallback | null,
    /**
     * 接口调用结束的回调函数(调用成功、失败都会执行)
     */
    complete?: GetProviderCompleteCallback | null
};

export type GetProvider = (options: GetProviderOptions) => void;

export interface Uni {
  /**
   * 获取服务供应商
   * @param {GetProviderOptions} options
   * @return {void}
   * @tutorial https://doc.dcloud.net.cn/uni-app-x/api/get-provider.html
   * @uniPlatform {
   *  "app": {
   *    "android": {
   *      "osVer": "5.0",
   *      "uniVer": "√",
   *      "unixVer": "4.11"
   *    },
   *    "ios": {
   *      "osVer": "9.0",
   *      "uniVer": "√",
DCloud-yyl's avatar
DCloud-yyl 已提交
93
   *      "unixVer": "4.18"
DCloud-yyl's avatar
DCloud-yyl 已提交
94 95 96
   *    }
   *  },
   *  "web": {
雪洛's avatar
雪洛 已提交
97 98
   *    "uniVer": "x",
   *    "unixVer": "x"
DCloud-yyl's avatar
DCloud-yyl 已提交
99 100 101 102 103 104 105 106 107
   *  }
   * }
   * @example
    ```typescript
      uni.getProvider({service: ''})
    ```
   */
  getProvider(options: GetProviderOptions) : void;
}