@pisell/pisellos 3.0.68 → 3.0.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/modules/Order/index.js +4 -2
  2. package/dist/modules/Order/types.d.ts +1 -0
  3. package/dist/plugins/request.d.ts +1 -0
  4. package/dist/solution/BookingByStep/index.d.ts +5 -1
  5. package/dist/solution/BookingByStep/index.js +31 -7
  6. package/dist/solution/RegisterAndLogin/config.d.ts +87 -0
  7. package/dist/solution/RegisterAndLogin/config.js +792 -0
  8. package/dist/solution/RegisterAndLogin/index.d.ts +189 -0
  9. package/dist/solution/RegisterAndLogin/index.js +2667 -0
  10. package/dist/solution/RegisterAndLogin/types.d.ts +444 -0
  11. package/dist/solution/RegisterAndLogin/types.js +231 -0
  12. package/dist/solution/RegisterAndLogin/utils.d.ts +95 -0
  13. package/dist/solution/RegisterAndLogin/utils.js +322 -0
  14. package/dist/solution/index.d.ts +1 -0
  15. package/dist/solution/index.js +2 -1
  16. package/lib/modules/Order/index.js +5 -2
  17. package/lib/modules/Order/types.d.ts +1 -0
  18. package/lib/plugins/request.d.ts +1 -0
  19. package/lib/solution/BookingByStep/index.d.ts +5 -1
  20. package/lib/solution/BookingByStep/index.js +9 -2
  21. package/lib/solution/RegisterAndLogin/config.d.ts +87 -0
  22. package/lib/solution/RegisterAndLogin/config.js +594 -0
  23. package/lib/solution/RegisterAndLogin/index.d.ts +189 -0
  24. package/lib/solution/RegisterAndLogin/index.js +1593 -0
  25. package/lib/solution/RegisterAndLogin/types.d.ts +444 -0
  26. package/lib/solution/RegisterAndLogin/types.js +78 -0
  27. package/lib/solution/RegisterAndLogin/utils.d.ts +95 -0
  28. package/lib/solution/RegisterAndLogin/utils.js +279 -0
  29. package/lib/solution/index.d.ts +1 -0
  30. package/lib/solution/index.js +3 -1
  31. package/package.json +1 -1
@@ -5,6 +5,8 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
5
5
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
6
6
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
7
7
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
8
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
10
  function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
9
11
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
10
12
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
@@ -61,7 +63,7 @@ export var OrderModule = /*#__PURE__*/function (_BaseModule) {
61
63
  }, {
62
64
  key: "createOrder",
63
65
  value: function createOrder(params) {
64
- var order = {
66
+ var order = _objectSpread({
65
67
  type: (params === null || params === void 0 ? void 0 : params.type) || 'appointment_booking',
66
68
  // 要从外面拿,virtual
67
69
  platform: (params === null || params === void 0 ? void 0 : params.platform) === 'pc' ? 'PC' : 'H5',
@@ -73,7 +75,7 @@ export var OrderModule = /*#__PURE__*/function (_BaseModule) {
73
75
  is_deposit: 0,
74
76
  relation_products: [],
75
77
  relation_forms: []
76
- };
78
+ }, (params === null || params === void 0 ? void 0 : params.extraData) || {});
77
79
  var is_deposit = 0; // 是否存在定金,0 不存在,1 存在
78
80
  if (params.cartItems.length > 0) {
79
81
  params.cartItems.forEach(function (item) {
@@ -16,6 +16,7 @@ export interface CommitOrderParams {
16
16
  cartItems: CartItem[];
17
17
  type: 'virtual' | 'appointment_booking';
18
18
  platform?: 'pc' | 'h5';
19
+ extraData?: Record<string, any>;
19
20
  };
20
21
  }
21
22
  /**
@@ -49,6 +49,7 @@ export interface RequestOptions {
49
49
  responseType?: 'json' | 'text' | 'arraybuffer' | 'blob';
50
50
  withCredentials?: boolean;
51
51
  useCache?: boolean;
52
+ customToast?: () => void;
52
53
  }
53
54
  /**
54
55
  * 响应接口
@@ -166,7 +166,7 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
166
166
  * @returns boolean
167
167
  */
168
168
  checkBeforeSubmitOrder(type: 'holder' | 'account'): boolean;
169
- submitOrder(): Promise<void>;
169
+ submitOrder(extraData?: Record<string, any>): Promise<void>;
170
170
  pay(): Promise<void>;
171
171
  getPayInfo(): Promise<void>;
172
172
  setOtherParams(params: Record<string, any>, { cover }?: {
@@ -374,4 +374,8 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
374
374
  isCartHasDurationProduct(): boolean;
375
375
  isTargetNormalProduct(product: ProductData): boolean;
376
376
  isTargetCartIdNormalProduct(id: string): boolean | undefined;
377
+ /**
378
+ * 获取联系信息
379
+ */
380
+ getContactInfo(params: any): Promise<any>;
377
381
  }
@@ -966,7 +966,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
966
966
  }, {
967
967
  key: "submitOrder",
968
968
  value: function () {
969
- var _submitOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
969
+ var _submitOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19(extraData) {
970
970
  var cartItems, newCartItems, type;
971
971
  return _regeneratorRuntime().wrap(function _callee19$(_context19) {
972
972
  while (1) switch (_context19.prev = _context19.next) {
@@ -1003,7 +1003,8 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
1003
1003
  query: {
1004
1004
  cartItems: newCartItems,
1005
1005
  type: type,
1006
- platform: this.platform
1006
+ platform: this.platform,
1007
+ extraData: extraData
1007
1008
  }
1008
1009
  }));
1009
1010
  case 6:
@@ -1012,7 +1013,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
1012
1013
  }
1013
1014
  }, _callee19, this);
1014
1015
  }));
1015
- function submitOrder() {
1016
+ function submitOrder(_x17) {
1016
1017
  return _submitOrder.apply(this, arguments);
1017
1018
  }
1018
1019
  return submitOrder;
@@ -1074,7 +1075,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
1074
1075
  }
1075
1076
  }, _callee22, this);
1076
1077
  }));
1077
- function setOtherParams(_x17) {
1078
+ function setOtherParams(_x18) {
1078
1079
  return _setOtherParams.apply(this, arguments);
1079
1080
  }
1080
1081
  return setOtherParams;
@@ -2369,7 +2370,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
2369
2370
  }
2370
2371
  }, _callee24, this);
2371
2372
  }));
2372
- function openProductDetail(_x18) {
2373
+ function openProductDetail(_x19) {
2373
2374
  return _openProductDetail.apply(this, arguments);
2374
2375
  }
2375
2376
  return openProductDetail;
@@ -3559,7 +3560,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
3559
3560
  }
3560
3561
  }, _callee25, this);
3561
3562
  }));
3562
- function getProductTypeById(_x19) {
3563
+ function getProductTypeById(_x20) {
3563
3564
  return _getProductTypeById.apply(this, arguments);
3564
3565
  }
3565
3566
  return getProductTypeById;
@@ -3716,7 +3717,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
3716
3717
  }
3717
3718
  }, _callee26, this);
3718
3719
  }));
3719
- function getTimeslotsScheduleByDateRange(_x20) {
3720
+ function getTimeslotsScheduleByDateRange(_x21) {
3720
3721
  return _getTimeslotsScheduleByDateRange.apply(this, arguments);
3721
3722
  }
3722
3723
  return getTimeslotsScheduleByDateRange;
@@ -4003,6 +4004,29 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
4003
4004
  });
4004
4005
  return cartItem && isNormalProduct(cartItem._productOrigin);
4005
4006
  }
4007
+
4008
+ /**
4009
+ * 获取联系信息
4010
+ */
4011
+ }, {
4012
+ key: "getContactInfo",
4013
+ value: (function () {
4014
+ var _getContactInfo = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee28(params) {
4015
+ return _regeneratorRuntime().wrap(function _callee28$(_context29) {
4016
+ while (1) switch (_context29.prev = _context29.next) {
4017
+ case 0:
4018
+ return _context29.abrupt("return", this.request.get('/customer/metadata', params));
4019
+ case 1:
4020
+ case "end":
4021
+ return _context29.stop();
4022
+ }
4023
+ }, _callee28, this);
4024
+ }));
4025
+ function getContactInfo(_x22) {
4026
+ return _getContactInfo.apply(this, arguments);
4027
+ }
4028
+ return getContactInfo;
4029
+ }())
4006
4030
  }]);
4007
4031
  return BookingByStepImpl;
4008
4032
  }(BaseModule);
@@ -0,0 +1,87 @@
1
+ /**
2
+ * 注册登录解决方案配置
3
+ * 根据不同渠道配置不同的接口地址和参数
4
+ */
5
+ /**
6
+ * API 配置接口
7
+ */
8
+ export interface ApiConfig {
9
+ url: string;
10
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE';
11
+ transformParams?: (params: any) => any;
12
+ transformResponse?: (response: any) => any;
13
+ options?: Record<string, any>;
14
+ }
15
+ /**
16
+ * 渠道配置接口
17
+ */
18
+ export interface ChannelConfig {
19
+ sendEmailVerificationCode: ApiConfig;
20
+ sendEmailLoginCode: ApiConfig;
21
+ sendSmsRegisterCode: ApiConfig;
22
+ sendEmailRegisterLink: ApiConfig;
23
+ verifyEmailRegistrationLink: ApiConfig;
24
+ emailPasswordLogin: ApiConfig;
25
+ emailCodeRegister: ApiConfig;
26
+ phoneCodeRegister: ApiConfig;
27
+ resendEmailRegisterLink: ApiConfig;
28
+ checkEmailLinkCode: ApiConfig;
29
+ sendSmsLoginCode: ApiConfig;
30
+ phoneCodeLogin: ApiConfig;
31
+ guestLogin: ApiConfig;
32
+ checkEmailExists: ApiConfig;
33
+ checkEmailCode: ApiConfig;
34
+ checkMobileCode: ApiConfig;
35
+ phonePasswordLogin: ApiConfig;
36
+ sendPasswordResetEmail: ApiConfig;
37
+ sendPasswordResetSms: ApiConfig;
38
+ sendResetPasswordLink: ApiConfig;
39
+ checkResetPasswordCode: ApiConfig;
40
+ resetPasswordByCode: ApiConfig;
41
+ resetPasswordByEmail: ApiConfig;
42
+ resetPasswordByPhone: ApiConfig;
43
+ verifyCode: ApiConfig;
44
+ register: ApiConfig;
45
+ login: ApiConfig;
46
+ oauthLogin: ApiConfig;
47
+ validateToken: ApiConfig;
48
+ logout: ApiConfig;
49
+ getCountries: ApiConfig;
50
+ facebookLogin: ApiConfig;
51
+ appleLogin: ApiConfig;
52
+ }
53
+ /**
54
+ * 渠道配置映射
55
+ */
56
+ export declare const channelConfigMap: Record<string, ChannelConfig>;
57
+ /**
58
+ * 获取渠道配置
59
+ */
60
+ export declare function getChannelConfig(channel: string): ChannelConfig;
61
+ /**
62
+ * API 调用器类
63
+ * 负责根据配置执行 API 调用
64
+ */
65
+ export declare class ApiCaller {
66
+ private request;
67
+ private config;
68
+ constructor(request: {
69
+ get: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
70
+ post: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
71
+ put: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
72
+ delete: <T = any>(url: string, options?: any) => Promise<T>;
73
+ }, config: ChannelConfig);
74
+ /**
75
+ * 执行 API 调用
76
+ */
77
+ call<T = any>(apiName: keyof ChannelConfig, params?: any, additionalOptions?: any): Promise<T>;
78
+ }
79
+ /**
80
+ * 创建 API 调用器
81
+ */
82
+ export declare function createApiCaller(request: {
83
+ get: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
84
+ post: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
85
+ put: <T = any>(url: string, data?: any, options?: any) => Promise<T>;
86
+ delete: <T = any>(url: string, options?: any) => Promise<T>;
87
+ }, channel: string): ApiCaller;