@stewardhq/sdk 0.1.0-rc.0 → 0.2.0

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.
@@ -1,4 +1,4 @@
1
- import { A as CodeSchema, B as IntervalSchema, C as BillingProfileSchema, F as EntitlementsSchema, M as DateTimeSchema, O as ActorRefSchema, R as ExternalRefSchema, S as BillingProfileKindSchema, T as SubscriptionStatusSchema, a as EVENT_TYPES, j as CurrencySchema, k as AmountMinorSchema, o as EventIdSchema, r as BillingEventSchema, v as AccountSchema, y as AccountStateSchema, z as IdSchema } from "./events.js";
1
+ import { A as CodeSchema, B as IntervalSchema, C as BillingProfileSchema, F as EntitlementsSchema, M as DateTimeSchema, O as ActorRefSchema, R as ExternalRefSchema, S as BillingProfileKindSchema, T as SubscriptionStatusSchema, a as EVENT_TYPES, j as CurrencySchema, k as AmountMinorSchema, o as EventIdSchema, v as AccountSchema, y as AccountStateSchema, z as IdSchema } from "./events.js";
2
2
  import { z } from "zod";
3
3
  //#region ../contract/src/catalog.ts
4
4
  const FeatureTypeSchema = z.enum([
@@ -228,117 +228,52 @@ function isReturnUrlAllowed(settings, returnUrl) {
228
228
  //#endregion
229
229
  //#region ../contract/src/checkout.ts
230
230
  const ReturnUrlSchema = z.url({ protocol: /^https?$/ });
231
- /** Kabul edilen sözleşme — içerik üründe yaşar, burada yalnızca iz. */
231
+ /** Accepted document — content lives in the product, steward keeps only the trace. */
232
232
  const ConsentSchema = z.object({
233
233
  document: z.string().min(1).max(100),
234
234
  version: z.string().min(1).max(100),
235
235
  acceptedAt: DateTimeSchema,
236
- /** Belgenin bağı (hosted akışta her zaman; eski gövdede verildiyse). */
236
+ /** Document link. */
237
237
  url: z.string().optional()
238
238
  });
239
- /** Checkout gövdesindeki onay: hosted akışta onaylatılacak belge, eski gövdede kabul izi. */
239
+ /** Document the hosted page asks the customer to accept (the page records acceptance). */
240
240
  const CheckoutConsentInputSchema = z.object({
241
241
  document: z.string().min(1).max(100),
242
242
  version: z.string().min(1).max(100),
243
- /** Hosted akışta zorunlu: sayfadaki belge bağı. */
244
- url: z.url({ protocol: /^https?$/ }).max(2e3).optional(),
245
- /** Yalnızca eski gövdede (ve orada zorunlu): ürün onayı kendisi aldı. */
246
- acceptedAt: DateTimeSchema.optional()
243
+ url: z.url({ protocol: /^https?$/ }).max(2e3)
247
244
  });
248
- /** Hosted sayfanın ön doldurması (profil/kimlik verisi değil; K21). */
245
+ /** Hosted page prefill (not profile/identity data; K21). */
249
246
  const CheckoutPrefillSchema = z.object({
250
247
  email: z.email().max(200).optional(),
251
248
  name: z.string().trim().min(1).max(200).optional(),
252
249
  kind: BillingProfileKindSchema.optional()
253
250
  });
254
- /** Hosted akışta onaylatılabilecek en çok belge sayısı. */
251
+ /** Maximum number of documents the hosted page can ask the customer to accept. */
255
252
  const MAX_CHECKOUT_CONSENT_DOCS = 20;
256
253
  const CheckoutSessionCreateInputSchema = z.object({
257
254
  planCode: CodeSchema,
258
255
  interval: IntervalSchema,
259
- /** Verilmezse ürün ayarı `defaultCurrency` (eski gövdede zorunlu). */
256
+ /** Defaults to the product setting `defaultCurrency`. */
260
257
  currency: CurrencySchema.optional(),
261
- /** Hosted: `tr` | `en`, verilmezse ürün ayarı `defaultLocale`. Eski gövdede zorunlu, iki harf. */
262
- locale: z.string().regex(/^[a-z]{2}$/).optional(),
258
+ /** `tr` | `en`; defaults to the product setting `defaultLocale`. */
259
+ locale: z.enum(SETTINGS_LOCALES).optional(),
263
260
  /**
264
- * Sonuç bu adrese döner. Adreste yer tutucu (`{CHECKOUT_ID}`, `{STATUS}`,
265
- * `{ACCOUNT_REF}`, `{LOCALE}`) varsa (yalnızca hosted) steward yalnızca onları
266
- * doldurur, parametre eklemez; yoksa `?session=<id>&status=success|failed|pending`
267
- * eklenir. pending: sağlayıcıya ulaşılamadı, oturum açık; ürün "işleniyor" gösterir.
268
- * Origin'i ürün ayarlarında izinli olmalı (`appUrl` + `extraReturnOrigins`).
261
+ * The outcome returns here. Placeholders (`{CHECKOUT_ID}`, `{STATUS}`, `{ACCOUNT_REF}`,
262
+ * `{LOCALE}`) are filled if present; query parameters are never appended. `STATUS` is
263
+ * success | failed | pending (pending: provider unreachable, the session stays open and the
264
+ * product shows "processing"). The origin must be allowed by product settings
265
+ * (`appUrl` + `extraReturnOrigins`).
269
266
  */
270
- successUrl: ReturnUrlSchema.optional(),
271
- /** `successUrl`in eski adı. */
272
- returnUrl: ReturnUrlSchema.optional(),
273
- /** Yalnızca hosted: sayfadaki "Vazgeç" hedefi (yoksa ürün ayarı `appUrl`). Origin kuralı `successUrl`le aynı. */
267
+ successUrl: ReturnUrlSchema,
268
+ /** "Cancel" target on the page (defaults to product setting `appUrl`). Same origin rule as `successUrl`. */
274
269
  cancelUrl: ReturnUrlSchema.optional(),
275
- /** Hesap yoksa bu adla açılır; hesap varsa adı değiştirmez. */
270
+ /** Opens the account with this name if it does not exist; never renames an existing account. */
276
271
  displayName: z.string().min(1).max(200).optional(),
277
- /** Yalnızca hosted. */
278
272
  prefill: CheckoutPrefillSchema.optional(),
279
- consents: z.array(CheckoutConsentInputSchema).optional(),
280
- /** Yalnızca eski gövde. */
281
- profile: BillingProfileSchema.optional(),
282
- /**
283
- * Yalnızca eski gövde: sağlayıcının istediği kimlik numarası (ör. TCKN/VKN).
284
- * Yalnızca sağlayıcıya iletilir; servis bunu SAKLAMAZ ve LOGLAMAZ.
285
- */
286
- identityNumber: z.string().regex(/^\d{10,11}$/).optional()
273
+ consents: z.array(CheckoutConsentInputSchema).max(20).optional()
287
274
  }).superRefine((body, ctx) => {
288
- const issue = (path, message) => ctx.addIssue({
289
- code: "custom",
290
- path: [path],
291
- message
292
- });
293
- if (body.successUrl !== void 0 && body.returnUrl !== void 0) issue("returnUrl", "successUrl ve returnUrl (eski ad) birlikte verilemez");
294
- if (body.successUrl === void 0 && body.returnUrl === void 0) issue("successUrl", "zorunlu");
295
- const hasProfile = body.profile !== void 0;
296
- if (hasProfile !== (body.identityNumber !== void 0)) {
297
- issue(hasProfile ? "identityNumber" : "profile", "eski gövde profile ve identityNumber'ı birlikte taşır; hosted checkout ikisini de taşımaz");
298
- return;
299
- }
300
- if (hasProfile) {
301
- if (body.currency === void 0) issue("currency", "eski gövdede zorunlu");
302
- if (body.locale === void 0) issue("locale", "eski gövdede zorunlu");
303
- if (body.consents === void 0) issue("consents", "eski gövdede zorunlu");
304
- body.consents?.forEach((consent, i) => {
305
- if (consent.acceptedAt === void 0) ctx.addIssue({
306
- code: "custom",
307
- path: [
308
- "consents",
309
- i,
310
- "acceptedAt"
311
- ],
312
- message: "eski gövdede zorunlu"
313
- });
314
- });
315
- if (body.cancelUrl !== void 0) issue("cancelUrl", "yalnızca hosted checkout");
316
- if (body.prefill !== void 0) issue("prefill", "yalnızca hosted checkout");
317
- return;
318
- }
319
- if (body.locale !== void 0 && !SETTINGS_LOCALES.includes(body.locale)) issue("locale", `hosted checkout: ${SETTINGS_LOCALES.join(" | ")}`);
320
- const consents = body.consents ?? [];
321
- if (consents.length > 20) issue("consents", `en çok 20 belge`);
322
275
  const seen = /* @__PURE__ */ new Set();
323
- consents.forEach((consent, i) => {
324
- if (consent.url === void 0) ctx.addIssue({
325
- code: "custom",
326
- path: [
327
- "consents",
328
- i,
329
- "url"
330
- ],
331
- message: "hosted checkout'ta zorunlu"
332
- });
333
- if (consent.acceptedAt !== void 0) ctx.addIssue({
334
- code: "custom",
335
- path: [
336
- "consents",
337
- i,
338
- "acceptedAt"
339
- ],
340
- message: "hosted checkout'ta onayı sayfa kaydeder"
341
- });
276
+ body.consents?.forEach((consent, i) => {
342
277
  if (seen.has(consent.document)) ctx.addIssue({
343
278
  code: "custom",
344
279
  path: [
@@ -346,18 +281,11 @@ const CheckoutSessionCreateInputSchema = z.object({
346
281
  i,
347
282
  "document"
348
283
  ],
349
- message: "belge adı tekrar ediyor"
284
+ message: "duplicate document"
350
285
  });
351
286
  seen.add(consent.document);
352
287
  });
353
- }).transform(({ returnUrl, successUrl, ...rest }) => ({
354
- ...rest,
355
- successUrl: successUrl ?? returnUrl
356
- }));
357
- /** Doğrulanmış gövde eski akışı mı istiyor (K16). Hosted: false. */
358
- function isLegacyCheckoutInput(input) {
359
- return input.profile !== void 0 && input.identityNumber !== void 0;
360
- }
288
+ });
361
289
  /**
362
290
  * `canceled` (F2b): müşteri hosted sayfada vazgeçti. Eski (0.2.0 öncesi hosted'sız)
363
291
  * istemci bu değeri tanımaz; yalnızca hosted akışı kullanan ürün görür.
@@ -369,6 +297,7 @@ const CheckoutStatusSchema = z.enum([
369
297
  "expired",
370
298
  "canceled"
371
299
  ]);
300
+ /** Provider form shown on steward's hosted checkout page (never returned to the product). */
372
301
  const ProviderPayloadSchema = z.discriminatedUnion("type", [z.object({
373
302
  type: z.literal("html_snippet"),
374
303
  html: z.string()
@@ -386,12 +315,10 @@ const CheckoutSessionSchema = z.object({
386
315
  currency: CurrencySchema,
387
316
  provider: z.string(),
388
317
  locale: z.string(),
389
- /** Eski ad; `successUrl` ile aynı değer. */
390
- returnUrl: z.string(),
391
- successUrl: z.string().optional(),
392
- /** Hosted: "Vazgeç" hedefi (verilmediyse null; sayfa ürün ayarı `appUrl`e döner). */
393
- cancelUrl: z.string().nullable().optional(),
394
- /** Kabul edilen belgeler (hosted: sayfada onaylandıktan sonra dolar). */
318
+ successUrl: z.string(),
319
+ /** "Cancel" target (null if not given; the page falls back to product setting `appUrl`). */
320
+ cancelUrl: z.string().nullable(),
321
+ /** Accepted documents (filled once accepted on the page). */
395
322
  consents: z.array(ConsentSchema),
396
323
  actorRef: ActorRefSchema.nullable(),
397
324
  failureReason: z.string().nullable(),
@@ -401,15 +328,12 @@ const CheckoutSessionSchema = z.object({
401
328
  completedAt: DateTimeSchema.nullable()
402
329
  });
403
330
  /**
404
- * `POST /v1/accounts/{ref}/checkout-sessions` yanıtı.
405
- * - hosted: `url` = steward checkout sayfası (`…/public/v1/checkout/{id}?k=<anahtar>`;
406
- * anahtar yalnızca burada), `providerPayload` yok, `account` işlem sonrası durum.
407
- * - eski gövde: `url: null`, `providerPayload` sağlayıcı formu.
408
- * `url` F2b öncesi steward'da yoktur (null okunur).
331
+ * `POST /v1/accounts/{ref}/checkout-sessions` response: `url` is steward's checkout page
332
+ * (`…/public/v1/checkout/{id}?k=<key>`; the key appears only here), `account` is the state
333
+ * after the call.
409
334
  */
410
335
  const CheckoutSessionCreatedSchema = CheckoutSessionSchema.extend({
411
- url: z.string().nullable().default(null),
412
- providerPayload: ProviderPayloadSchema.optional(),
336
+ url: z.string(),
413
337
  account: AccountStateSchema.optional()
414
338
  });
415
339
  const RETURN_PLACEHOLDER_RE = /\{(CHECKOUT_ID|STATUS|ACCOUNT_REF|LOCALE)\}/g;
@@ -421,28 +345,22 @@ function originOf(value) {
421
345
  }
422
346
  }
423
347
  /**
424
- * Checkout sonucunun tarayıcı yönlendirmesi — servis ve sahte steward aynı fonksiyonu
425
- * kullanır. Eski oturum: `returnUrl?session=&status=`. Hosted: `successUrl`de yer tutucu
426
- * (`{CHECKOUT_ID}` `{STATUS}` `{ACCOUNT_REF}` `{LOCALE}`) varsa YALNIZCA onlar doldurulur
427
- * (değerler URL-kodlu), parametre eklenmez; yoksa eski biçim. Kodlu değer origin'i
428
- * değiştiremez; yine de denetlenir, değişirse eski biçime düşülür.
348
+ * Browser redirect for a checkout outcome — the service and the fake steward share it.
349
+ * Placeholders in `successUrl` (`{CHECKOUT_ID}` `{STATUS}` `{ACCOUNT_REF}` `{LOCALE}`) are
350
+ * filled with URL-encoded values; nothing is appended, so a URL without placeholders is used
351
+ * as-is. An encoded value cannot change the origin; it is still checked, and if the origin
352
+ * would change the URL is returned unfilled.
429
353
  */
430
354
  function checkoutRedirectUrl(target, status) {
431
355
  const template = target.successUrl;
432
- if (template !== null && template.match(RETURN_PLACEHOLDER_RE)) {
433
- const values = {
434
- CHECKOUT_ID: target.id,
435
- STATUS: status,
436
- ACCOUNT_REF: target.accountRef,
437
- LOCALE: target.locale
438
- };
439
- const filled = template.replace(RETURN_PLACEHOLDER_RE, (_, name) => encodeURIComponent(values[name]));
440
- if (originOf(filled) !== null && originOf(filled) === originOf(template)) return filled;
441
- }
442
- const url = new URL(template ?? target.returnUrl);
443
- url.searchParams.set("session", target.id);
444
- url.searchParams.set("status", status);
445
- return url.toString();
356
+ const values = {
357
+ CHECKOUT_ID: target.id,
358
+ STATUS: status,
359
+ ACCOUNT_REF: target.accountRef,
360
+ LOCALE: target.locale
361
+ };
362
+ const filled = template.replace(RETURN_PLACEHOLDER_RE, (_, name) => encodeURIComponent(values[name]));
363
+ return originOf(filled) !== null && originOf(filled) === originOf(template) ? filled : template;
446
364
  }
447
365
  const CHECKOUT_ERRORS = [
448
366
  "account_not_found",
@@ -708,8 +626,6 @@ const AccountDetailSchema = AccountSchema.extend({
708
626
  const withAccount = { account: AccountStateSchema.optional() };
709
627
  /** `PUT /v1/accounts/{ref}` (201 ya da 200). */
710
628
  const AccountUpsertResponseSchema = AccountSchema.extend(withAccount);
711
- /** `PUT /v1/accounts/{ref}/billing-profile` */
712
- const BillingProfileResponseSchema = BillingProfileSchema.extend(withAccount);
713
629
  /** `POST /v1/accounts/{ref}/grants` */
714
630
  const GrantCreateResponseSchema = GrantSchema.extend(withAccount);
715
631
  /** `POST /v1/subscriptions/{id}/cancel` */
@@ -722,27 +638,6 @@ const ManualInvoiceResponseSchema = InvoiceSchema.extend(withAccount);
722
638
  const InvoiceVoidResponseSchema = InvoiceSchema.extend(withAccount);
723
639
  /** `GET /v1/checkout-sessions/{id}` — `account` yalnızca oturum `completed` ise. */
724
640
  const CheckoutSessionResponseSchema = CheckoutSessionSchema.extend(withAccount);
725
- const DeliverySchema = z.object({
726
- endpointId: IdSchema,
727
- status: z.enum([
728
- "pending",
729
- "delivered",
730
- "dead"
731
- ]),
732
- attempts: z.number().int().nonnegative(),
733
- lastHttpStatus: z.number().int().nullable(),
734
- lastError: z.string().nullable(),
735
- nextAttemptAt: DateTimeSchema.nullable(),
736
- deliveredAt: DateTimeSchema.nullable()
737
- });
738
- const EventRecordSchema = z.object({
739
- event: BillingEventSchema,
740
- deliveries: z.array(DeliverySchema)
741
- });
742
- const EventListSchema = z.object({
743
- items: z.array(EventRecordSchema),
744
- nextCursor: z.string().nullable()
745
- });
746
641
  /** Değişiklik yapan her istekte zorunlu başlıklar. */
747
642
  const HEADER_IDEMPOTENCY_KEY = "idempotency-key";
748
643
  const HEADER_ACTOR_REF = "x-actor-ref";
@@ -761,8 +656,6 @@ const ERROR_CODES = Object.freeze({
761
656
  invalid_request: spec(400, "validation"),
762
657
  invalid_account_ref: spec(400, "validation"),
763
658
  invalid_include: spec(400, "validation"),
764
- invalid_cursor: spec(400, "validation"),
765
- invalid_limit: spec(400, "validation"),
766
659
  invalid_actor_ref: spec(400, "validation"),
767
660
  actor_ref_required: spec(400, "validation"),
768
661
  idempotency_key_required: spec(400, "validation"),
@@ -782,7 +675,6 @@ const ERROR_CODES = Object.freeze({
782
675
  grant_not_found: spec(404, "not_found"),
783
676
  invoice_not_found: spec(404, "not_found"),
784
677
  document_not_found: spec(404, "not_found"),
785
- event_not_found: spec(404, "not_found"),
786
678
  checkout_session_not_found: spec(404, "not_found"),
787
679
  /** Yönetim ucu: endpoint yok ya da başka ürünün. */
788
680
  webhook_endpoint_not_found: spec(404, "not_found"),
@@ -808,7 +700,7 @@ const ERROR_CODES = Object.freeze({
808
700
  subscription_active: spec(409, "conflict"),
809
701
  /** `DELETE /v1/accounts/:ref`: sağlayıcı formu açık checkout oturumu var; süresi dolup kapanınca tekrar dene. */
810
702
  checkout_in_progress: spec(409, "conflict", true),
811
- /** `returnUrl` ürünün izinli origin'lerinde değil: ürün yapılandırması hatalı. */
703
+ /** `successUrl`, `cancelUrl` or portal `returnUrl` is not in the product's allowed origins: product misconfiguration. */
812
704
  return_url_not_allowed: spec(422, "config"),
813
705
  /** Bu deployment'ta sağlayıcı yapılandırılmamış (503 ama beklemekle düzelmez). */
814
706
  provider_not_configured: spec(503, "config"),
@@ -1199,4 +1091,4 @@ function buildDoctorReport(facts) {
1199
1091
  };
1200
1092
  }
1201
1093
  //#endregion
1202
- export { HEADER_SDK as $, FeatureTypeSchema as $t, webhookEndpointUrlProblem as A, MAX_CHECKOUT_CONSENT_DOCS as At, AccountDetailSchema as B, ReturnOriginSchema as Bt, WebhookEndpointListSchema as C, CheckoutConsentInputSchema as Ct, WebhookLastDeliverySchema as D, CheckoutSessionSchema as Dt, WebhookEndpointStatusSchema as E, CheckoutSessionCreatedSchema as Et, PlanSetWarningSchema as F, BrandingSchema as Ft, DeliverySchema as G, applySettingsPatch as Gt, BillingProfileResponseSchema as H, SettingsLocaleSchema as Ht, ResyncResultSchema as I, DEFAULT_CHECKOUT_TTL_MINUTES as It, GrantCreateResponseSchema as J, AccountsRefreshResultSchema as Jt, EventListSchema as K, isReturnUrlAllowed as Kt, ERROR_CODES as L, DEFAULT_PORTAL_TTL_MINUTES as Lt, PlanSetInputSchema as M, checkoutRedirectUrl as Mt, PlanSetModeSchema as N, isLegacyCheckoutInput as Nt, WebhookSecretSchema as O, CheckoutStatusSchema as Ot, PlanSetResponseSchema as P, BrandingPatchSchema as Pt, HEADER_REQUEST_ID as Q, FeatureDefSchema as Qt, errorCodeSpec as R, ProductSettingsPatchSchema as Rt, WebhookEndpointCreateInputSchema as S, CHECKOUT_ERRORS as St, WebhookEndpointSchema as T, CheckoutSessionCreateInputSchema as Tt, CancelSubscriptionResponseSchema as U, TtlMinutesSchema as Ut, AccountUpsertResponseSchema as V, SETTINGS_LOCALES as Vt, CheckoutSessionResponseSchema as W, WebUrlSchema as Wt, HEADER_API_VERSION as X, CatalogSyncInputSchema as Xt, HEADER_ACTOR_REF as Y, CatalogSchema as Yt, HEADER_IDEMPOTENCY_KEY as Z, CatalogSyncResultSchema as Zt, hostedReadinessOf as _, StatsSchema as _t, DOCTOR_SEVERITIES as a, InvoiceSchema as at, WEBHOOK_ENDPOINT_STATUSES as b, PortalSessionCreateInputSchema as bt, DoctorHostedSchema as c, MANUAL_INVOICE_MAX_AMOUNT_MINOR as ct, DoctorSettingsSchema as d, manualInvoiceTotals as dt, PlanDefSchema as en, InvoiceIssueResponseSchema as et, DoctorSeveritySchema as f, splitInclusiveTax as ft, endpointDiagnosisOf as g, PaymentSchema as gt, buildDoctorReport as h, GrantSchema as ht, DOCTOR_REQUIRED_LEGAL_LINKS as i, InvoiceLineSchema as it, PLAN_SET_MODES as j, ProviderPayloadSchema as jt, generateWebhookSecret as k, ConsentSchema as kt, DoctorProviderSchema as l, ManualInvoiceInputSchema as lt, DoctorWarningSchema as m, GrantCreateInputSchema as mt, DOCTOR_PROVIDER_ENVIRONMENTS as n, PriceSchema as nn, ManualInvoiceResponseSchema as nt, DoctorCatalogSchema as o, InvoiceStatusSchema as ot, DoctorUnsellablePriceSchema as p, CancelSubscriptionInputSchema as pt, EventRecordSchema as q, returnOriginsOf as qt, DOCTOR_REQUIRED_BRANDING as r, InvoiceIssueInputSchema as rt, DoctorEndpointSchema as s, InvoiceVoidInputSchema as st, DOCTOR_PENDING_BACKLOG_MS as t, PriceDefSchema as tn, InvoiceVoidResponseSchema as tt, DoctorReportSchema as u, ManualInvoiceLineInputSchema as ut, DEFAULT_ENDPOINT_EVENT_TYPES as v, SubscriptionSchema as vt, WebhookEndpointRotateInputSchema as w, CheckoutPrefillSchema as wt, WEBHOOK_SECRET_PREFIX as x, PortalSessionSchema as xt, EventTypeSchema as y, PORTAL_SESSION_ERRORS as yt, isKnownErrorCode as z, ProductSettingsSchema as zt };
1094
+ export { InvoiceIssueInputSchema as $, webhookEndpointUrlProblem as A, BrandingSchema as At, AccountDetailSchema as B, applySettingsPatch as Bt, WebhookEndpointListSchema as C, CheckoutSessionSchema as Ct, WebhookLastDeliverySchema as D, ProviderPayloadSchema as Dt, WebhookEndpointStatusSchema as E, MAX_CHECKOUT_CONSENT_DOCS as Et, PlanSetWarningSchema as F, ReturnOriginSchema as Ft, HEADER_ACTOR_REF as G, CatalogSyncInputSchema as Gt, CancelSubscriptionResponseSchema as H, returnOriginsOf as Ht, ResyncResultSchema as I, SETTINGS_LOCALES as It, HEADER_REQUEST_ID as J, FeatureTypeSchema as Jt, HEADER_API_VERSION as K, CatalogSyncResultSchema as Kt, ERROR_CODES as L, SettingsLocaleSchema as Lt, PlanSetInputSchema as M, DEFAULT_PORTAL_TTL_MINUTES as Mt, PlanSetModeSchema as N, ProductSettingsPatchSchema as Nt, WebhookSecretSchema as O, checkoutRedirectUrl as Ot, PlanSetResponseSchema as P, ProductSettingsSchema as Pt, ManualInvoiceResponseSchema as Q, errorCodeSpec as R, TtlMinutesSchema as Rt, WebhookEndpointCreateInputSchema as S, CheckoutSessionCreatedSchema as St, WebhookEndpointSchema as T, ConsentSchema as Tt, CheckoutSessionResponseSchema as U, AccountsRefreshResultSchema as Ut, AccountUpsertResponseSchema as V, isReturnUrlAllowed as Vt, GrantCreateResponseSchema as W, CatalogSchema as Wt, InvoiceIssueResponseSchema as X, PriceDefSchema as Xt, HEADER_SDK as Y, PlanDefSchema as Yt, InvoiceVoidResponseSchema as Z, PriceSchema as Zt, hostedReadinessOf as _, PortalSessionSchema as _t, DOCTOR_SEVERITIES as a, ManualInvoiceInputSchema as at, WEBHOOK_ENDPOINT_STATUSES as b, CheckoutPrefillSchema as bt, DoctorHostedSchema as c, splitInclusiveTax as ct, DoctorSettingsSchema as d, GrantSchema as dt, InvoiceLineSchema as et, DoctorSeveritySchema as f, PaymentSchema as ft, endpointDiagnosisOf as g, PortalSessionCreateInputSchema as gt, buildDoctorReport as h, PORTAL_SESSION_ERRORS as ht, DOCTOR_REQUIRED_LEGAL_LINKS as i, MANUAL_INVOICE_MAX_AMOUNT_MINOR as it, PLAN_SET_MODES as j, DEFAULT_CHECKOUT_TTL_MINUTES as jt, generateWebhookSecret as k, BrandingPatchSchema as kt, DoctorProviderSchema as l, CancelSubscriptionInputSchema as lt, DoctorWarningSchema as m, SubscriptionSchema as mt, DOCTOR_PROVIDER_ENVIRONMENTS as n, InvoiceStatusSchema as nt, DoctorCatalogSchema as o, ManualInvoiceLineInputSchema as ot, DoctorUnsellablePriceSchema as p, StatsSchema as pt, HEADER_IDEMPOTENCY_KEY as q, FeatureDefSchema as qt, DOCTOR_REQUIRED_BRANDING as r, InvoiceVoidInputSchema as rt, DoctorEndpointSchema as s, manualInvoiceTotals as st, DOCTOR_PENDING_BACKLOG_MS as t, InvoiceSchema as tt, DoctorReportSchema as u, GrantCreateInputSchema as ut, DEFAULT_ENDPOINT_EVENT_TYPES as v, CHECKOUT_ERRORS as vt, WebhookEndpointRotateInputSchema as w, CheckoutStatusSchema as wt, WEBHOOK_SECRET_PREFIX as x, CheckoutSessionCreateInputSchema as xt, EventTypeSchema as y, CheckoutConsentInputSchema as yt, isKnownErrorCode as z, WebUrlSchema as zt };