@schematichq/schematic-typescript-node 1.2.6 → 1.2.7

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 (687) hide show
  1. package/dist/api/resources/accesstokens/client/Client.d.ts +2 -1
  2. package/dist/api/resources/accesstokens/client/requests/IssueTemporaryAccessTokenRequestBody.d.ts +1 -2
  3. package/dist/api/resources/accounts/client/requests/CreateEnvironmentRequestBody.d.ts +1 -1
  4. package/dist/api/resources/accounts/client/requests/UpdateEnvironmentRequestBody.d.ts +1 -1
  5. package/dist/api/resources/accounts/types/index.d.ts +0 -2
  6. package/dist/api/resources/billing/client/Client.d.ts +21 -18
  7. package/dist/api/resources/billing/client/requests/CountBillingProductsRequest.d.ts +1 -1
  8. package/dist/api/resources/billing/client/requests/CreateBillingPriceRequestBody.d.ts +3 -3
  9. package/dist/api/resources/billing/client/requests/CreateBillingSubscriptionRequestBody.d.ts +2 -1
  10. package/dist/api/resources/billing/client/requests/{SearchBillingPricesRequest.d.ts → ListBillingPricesRequest.d.ts} +15 -9
  11. package/dist/api/resources/billing/client/requests/ListBillingProductPricesRequest.d.ts +55 -0
  12. package/dist/api/resources/billing/client/requests/ListBillingProductsRequest.d.ts +1 -1
  13. package/dist/api/resources/billing/client/requests/index.d.ts +2 -2
  14. package/dist/api/resources/billing/types/CountBillingProductsParams.d.ts +1 -1
  15. package/dist/api/resources/billing/types/{SearchBillingPricesParams.d.ts → ListBillingPricesParams.d.ts} +8 -5
  16. package/dist/api/resources/billing/types/{SearchBillingPricesResponse.d.ts → ListBillingPricesResponse.d.ts} +2 -2
  17. package/dist/api/resources/billing/types/ListBillingProductPricesParams.d.ts +29 -0
  18. package/dist/api/resources/billing/types/ListBillingProductPricesResponse.d.ts +9 -0
  19. package/dist/api/resources/billing/types/ListBillingProductsParams.d.ts +1 -1
  20. package/dist/api/resources/billing/types/index.d.ts +4 -18
  21. package/dist/api/resources/checkout/client/Client.d.ts +17 -0
  22. package/dist/api/resources/checkout/client/requests/CancelSubscriptionRequest.d.ts +16 -0
  23. package/dist/api/resources/checkout/client/requests/index.d.ts +1 -0
  24. package/dist/api/resources/{billing/types/ListProductPricesResponse.d.ts → checkout/types/CancelSubscriptionResponse.d.ts} +3 -3
  25. package/dist/api/resources/checkout/types/index.d.ts +1 -0
  26. package/dist/api/resources/companies/client/Client.d.ts +1 -0
  27. package/dist/api/resources/companies/client/requests/CountCompaniesForAdvancedFilterRequest.d.ts +3 -3
  28. package/dist/api/resources/companies/client/requests/CountEntityKeyDefinitionsRequest.d.ts +1 -1
  29. package/dist/api/resources/companies/client/requests/CountEntityTraitDefinitionsRequest.d.ts +3 -2
  30. package/dist/api/resources/companies/client/requests/CreateEntityTraitDefinitionRequestBody.d.ts +2 -2
  31. package/dist/api/resources/companies/client/requests/ListCompaniesForAdvancedFilterRequest.d.ts +3 -3
  32. package/dist/api/resources/companies/client/requests/ListEntityKeyDefinitionsRequest.d.ts +1 -1
  33. package/dist/api/resources/companies/client/requests/ListEntityTraitDefinitionsRequest.d.ts +3 -2
  34. package/dist/api/resources/companies/client/requests/UpdateEntityTraitDefinitionRequestBody.d.ts +1 -1
  35. package/dist/api/resources/companies/client/requests/UpdatePlanTraitBulkRequestBody.d.ts +2 -0
  36. package/dist/api/resources/companies/types/CountCompaniesForAdvancedFilterParams.d.ts +3 -4
  37. package/dist/api/resources/companies/types/CountEntityKeyDefinitionsParams.d.ts +1 -1
  38. package/dist/api/resources/companies/types/CountEntityTraitDefinitionsParams.d.ts +3 -2
  39. package/dist/api/resources/companies/types/ListCompaniesForAdvancedFilterParams.d.ts +3 -4
  40. package/dist/api/resources/companies/types/ListEntityKeyDefinitionsParams.d.ts +1 -1
  41. package/dist/api/resources/companies/types/ListEntityTraitDefinitionsParams.d.ts +3 -2
  42. package/dist/api/resources/companies/types/index.d.ts +0 -19
  43. package/dist/api/resources/components/client/Client.d.ts +1 -1
  44. package/dist/api/resources/components/client/requests/CreateComponentRequestBody.d.ts +2 -2
  45. package/dist/api/resources/components/client/requests/UpdateComponentRequestBody.d.ts +2 -2
  46. package/dist/api/resources/components/types/index.d.ts +0 -3
  47. package/dist/api/resources/credits/client/Client.d.ts +3 -3
  48. package/dist/api/resources/credits/client/requests/CountCreditBundlesRequest.d.ts +2 -2
  49. package/dist/api/resources/credits/client/requests/CountCreditLedgerRequest.d.ts +1 -1
  50. package/dist/api/resources/credits/client/requests/CreateBillingCreditRequestBody.d.ts +3 -3
  51. package/dist/api/resources/credits/client/requests/CreateBillingPlanCreditGrantRequestBody.d.ts +9 -9
  52. package/dist/api/resources/credits/client/requests/CreateCompanyCreditGrant.d.ts +6 -4
  53. package/dist/api/resources/credits/client/requests/CreateCreditBundleRequestBody.d.ts +4 -4
  54. package/dist/api/resources/credits/client/requests/GetEnrichedCreditLedgerRequest.d.ts +1 -1
  55. package/dist/api/resources/credits/client/requests/ListCompanyGrantsRequest.d.ts +2 -2
  56. package/dist/api/resources/credits/client/requests/ListCreditBundlesRequest.d.ts +2 -2
  57. package/dist/api/resources/credits/client/requests/UpdateBillingCreditRequestBody.d.ts +3 -3
  58. package/dist/api/resources/credits/client/requests/UpdateBillingPlanCreditGrantRequestBody.d.ts +13 -6
  59. package/dist/api/resources/credits/client/requests/UpdateCreditBundleDetailsRequestBody.d.ts +3 -3
  60. package/dist/api/resources/credits/client/requests/ZeroOutGrantRequestBody.d.ts +1 -1
  61. package/dist/api/resources/credits/types/CountCreditBundlesParams.d.ts +2 -2
  62. package/dist/api/resources/credits/types/CountCreditLedgerParams.d.ts +1 -1
  63. package/dist/api/resources/credits/types/GetEnrichedCreditLedgerParams.d.ts +1 -1
  64. package/dist/api/resources/credits/types/ListCompanyGrantsParams.d.ts +2 -2
  65. package/dist/api/resources/credits/types/ListCreditBundlesParams.d.ts +2 -2
  66. package/dist/api/resources/credits/types/index.d.ts +0 -37
  67. package/dist/api/resources/dataexports/client/Client.d.ts +3 -1
  68. package/dist/api/resources/dataexports/client/requests/CreateDataExportRequestBody.d.ts +3 -1
  69. package/dist/api/resources/entitlements/client/Client.d.ts +18 -0
  70. package/dist/api/resources/entitlements/client/requests/CreateCompanyOverrideRequestBody.d.ts +1 -1
  71. package/dist/api/resources/entitlements/client/requests/CreatePlanEntitlementRequestBody.d.ts +3 -3
  72. package/dist/api/resources/entitlements/client/requests/DuplicatePlanEntitlementsRequestBody.d.ts +14 -0
  73. package/dist/api/resources/entitlements/client/requests/UpdateCompanyOverrideRequestBody.d.ts +1 -1
  74. package/dist/api/resources/entitlements/client/requests/UpdatePlanEntitlementRequestBody.d.ts +3 -3
  75. package/dist/api/resources/entitlements/client/requests/index.d.ts +1 -0
  76. package/dist/api/resources/entitlements/types/DuplicatePlanEntitlementsResponse.d.ts +9 -0
  77. package/dist/api/resources/entitlements/types/index.d.ts +1 -6
  78. package/dist/api/resources/events/client/Client.d.ts +2 -2
  79. package/dist/api/resources/events/client/requests/CreateEventBatchRequestBody.d.ts +1 -1
  80. package/dist/api/resources/events/client/requests/ListEventsRequest.d.ts +1 -1
  81. package/dist/api/resources/events/types/ListEventsParams.d.ts +1 -1
  82. package/dist/api/resources/events/types/index.d.ts +0 -2
  83. package/dist/api/resources/features/client/Client.d.ts +17 -0
  84. package/dist/api/resources/features/client/requests/CheckFlagsBulkRequestBody.d.ts +13 -0
  85. package/dist/api/resources/features/client/requests/CountFeaturesRequest.d.ts +2 -1
  86. package/dist/api/resources/features/client/requests/CreateFeatureRequestBody.d.ts +2 -2
  87. package/dist/api/resources/features/client/requests/ListFeaturesRequest.d.ts +2 -1
  88. package/dist/api/resources/features/client/requests/UpdateFeatureRequestBody.d.ts +2 -2
  89. package/dist/api/resources/features/client/requests/index.d.ts +1 -0
  90. package/dist/api/resources/features/types/CheckFlagsBulkResponse.d.ts +9 -0
  91. package/dist/api/resources/features/types/CountFeaturesParams.d.ts +2 -1
  92. package/dist/api/resources/features/types/ListFeaturesParams.d.ts +2 -1
  93. package/dist/api/resources/features/types/index.d.ts +1 -4
  94. package/dist/api/resources/plangroups/client/Client.d.ts +8 -2
  95. package/dist/api/resources/plangroups/client/requests/CreatePlanGroupRequestBody.d.ts +10 -2
  96. package/dist/api/resources/plangroups/client/requests/UpdatePlanGroupRequestBody.d.ts +10 -2
  97. package/dist/api/resources/plans/client/Client.d.ts +1 -5
  98. package/dist/api/resources/plans/client/requests/CountPlansRequest.d.ts +1 -11
  99. package/dist/api/resources/plans/client/requests/CreatePlanRequestBody.d.ts +1 -1
  100. package/dist/api/resources/plans/client/requests/ListPlansRequest.d.ts +1 -11
  101. package/dist/api/resources/plans/client/requests/UpsertBillingProductRequestBody.d.ts +2 -2
  102. package/dist/api/resources/plans/types/CountPlansParams.d.ts +1 -6
  103. package/dist/api/resources/plans/types/ListPlansParams.d.ts +1 -6
  104. package/dist/api/resources/plans/types/index.d.ts +0 -6
  105. package/dist/api/resources/webhooks/client/Client.d.ts +1 -1
  106. package/dist/api/resources/webhooks/client/requests/CreateWebhookRequestBody.d.ts +2 -2
  107. package/dist/api/resources/webhooks/client/requests/UpdateWebhookRequestBody.d.ts +2 -2
  108. package/dist/api/resources/webhooks/types/index.d.ts +0 -3
  109. package/dist/api/types/ApiKeyCreateResponseData.d.ts +2 -1
  110. package/dist/api/types/ApiKeyResponseData.d.ts +2 -1
  111. package/dist/api/types/ApiKeyScope.d.ts +10 -0
  112. package/dist/api/types/BillingCreditBundleResponseData.d.ts +4 -4
  113. package/dist/api/{resources/credits/types/ListCreditBundlesRequestStatus.d.ts → types/BillingCreditBundleStatus.d.ts} +2 -2
  114. package/dist/api/types/BillingCreditBundleType.d.ts +4 -0
  115. package/dist/api/types/BillingCreditBundleView.d.ts +4 -4
  116. package/dist/api/{resources/credits/types/CreateBillingCreditRequestBodyBurnStrategy.d.ts → types/BillingCreditBurnStrategy.d.ts} +4 -4
  117. package/dist/api/{resources/credits/types/CreateCompanyCreditGrantExpiryType.d.ts → types/BillingCreditExpiryType.d.ts} +4 -4
  118. package/dist/api/{resources/credits/types/CreateCompanyCreditGrantExpiryUnit.d.ts → types/BillingCreditExpiryUnit.d.ts} +3 -3
  119. package/dist/api/types/BillingCreditGrantReason.d.ts +10 -0
  120. package/dist/api/types/BillingCreditGrantResponseData.d.ts +2 -2
  121. package/dist/api/{resources/credits/types/ZeroOutGrantRequestBodyReason.d.ts → types/BillingCreditGrantZeroedOutReason.d.ts} +4 -4
  122. package/dist/api/types/BillingCreditResponseData.d.ts +3 -3
  123. package/dist/api/types/BillingCreditRolloverPolicy.d.ts +9 -0
  124. package/dist/api/types/{CreditGrantExpiryRequestBodyResetCadence.d.ts → BillingPlanCreditGrantResetCadence.d.ts} +4 -4
  125. package/dist/api/types/{CreditGrantExpiryRequestBodyResetStart.d.ts → BillingPlanCreditGrantResetStart.d.ts} +2 -2
  126. package/dist/api/types/{CreditGrantExpiryRequestBodyResetType.d.ts → BillingPlanCreditGrantResetType.d.ts} +3 -3
  127. package/dist/api/types/BillingPlanCreditGrantResponseData.d.ts +8 -7
  128. package/dist/api/types/BillingPriceResponseData.d.ts +3 -2
  129. package/dist/api/types/BillingPriceScheme.d.ts +8 -0
  130. package/dist/api/types/{BillingProductPricingUsageType.d.ts → BillingPriceUsageType.d.ts} +2 -2
  131. package/dist/api/types/BillingPriceView.d.ts +4 -4
  132. package/dist/api/types/BillingProductForSubscriptionResponseData.d.ts +2 -2
  133. package/dist/api/types/BillingProductPlanResponseData.d.ts +3 -2
  134. package/dist/api/types/BillingProductPriceInterval.d.ts +10 -0
  135. package/dist/api/types/BillingProductPriceResponseData.d.ts +5 -4
  136. package/dist/api/types/BillingProductPricing.d.ts +1 -1
  137. package/dist/api/types/BillingSubscriptionResponseData.d.ts +3 -1
  138. package/dist/api/types/BillingSubscriptionTrialEndSetting.d.ts +8 -0
  139. package/dist/api/types/BillingSubscriptionView.d.ts +2 -1
  140. package/dist/api/{resources/billing/types/SearchBillingPricesRequestTiersMode.d.ts → types/BillingTiersMode.d.ts} +3 -3
  141. package/dist/api/{resources/plans/types/UpsertBillingProductRequestBodyChargeType.d.ts → types/ChargeType.d.ts} +3 -3
  142. package/dist/api/types/CheckFlagsBulkResponseData.d.ts +7 -0
  143. package/dist/api/types/CheckoutSubscription.d.ts +3 -1
  144. package/dist/api/types/CompanyOverrideResponseData.d.ts +1 -1
  145. package/dist/api/types/CompanyPlanDetailResponseData.d.ts +4 -3
  146. package/dist/api/types/CompanyPlanInvalidReason.d.ts +8 -0
  147. package/dist/api/types/CompanyPlanWithBillingSubView.d.ts +2 -0
  148. package/dist/api/types/ComponentDisplaySettings.d.ts +9 -0
  149. package/dist/api/{resources/components/types/UpdateComponentRequestBodyEntityType.d.ts → types/ComponentEntityType.d.ts} +3 -3
  150. package/dist/api/types/ComponentHydrateResponseData.d.ts +5 -0
  151. package/dist/api/types/ComponentPreviewResponseData.d.ts +5 -0
  152. package/dist/api/types/ComponentResponseData.d.ts +3 -2
  153. package/dist/api/types/ComponentSettingsResponseData.d.ts +9 -0
  154. package/dist/api/{resources/components/types/UpdateComponentRequestBodyState.d.ts → types/ComponentState.d.ts} +2 -2
  155. package/dist/api/types/CreateEntitlementReqCommon.d.ts +1 -1
  156. package/dist/api/types/CreateEventRequestBody.d.ts +1 -2
  157. package/dist/api/types/CreateFlagRequestBody.d.ts +2 -1
  158. package/dist/api/types/CreateOrUpdateFlagRequestBody.d.ts +2 -1
  159. package/dist/api/types/CreditAutoTopupAmountType.d.ts +4 -0
  160. package/dist/api/types/CreditCompanyGrantView.d.ts +4 -4
  161. package/dist/api/types/CreditGrantDetail.d.ts +1 -1
  162. package/dist/api/types/CreditGrantExpiryRequestBody.d.ts +5 -5
  163. package/dist/api/{resources/credits/types/ListCompanyGrantsRequestOrder.d.ts → types/CreditGrantSortOrder.d.ts} +2 -2
  164. package/dist/api/{resources/credits/types/CountCreditLedgerRequestPeriod.d.ts → types/CreditLedgerPeriod.d.ts} +3 -3
  165. package/dist/api/types/DataExportOutputFileType.d.ts +4 -0
  166. package/dist/api/types/DataExportResponseData.d.ts +4 -3
  167. package/dist/api/types/DataExportStatus.d.ts +9 -0
  168. package/dist/api/types/DataExportType.d.ts +4 -0
  169. package/dist/api/types/DuplicatePlanEntitlementsResponseResponseData.d.ts +8 -0
  170. package/dist/api/{resources/entitlements/types/CreatePlanEntitlementRequestBodyPriceBehavior.d.ts → types/EntitlementPriceBehavior.d.ts} +4 -4
  171. package/dist/api/types/EntitlementType.d.ts +9 -0
  172. package/dist/api/{resources/entitlements/types/UpdateCompanyOverrideRequestBodyValueType.d.ts → types/EntitlementValueType.d.ts} +3 -2
  173. package/dist/api/types/EntityKeyDefinitionResponseData.d.ts +2 -1
  174. package/dist/api/types/EntityKeyDetailResponseData.d.ts +1 -1
  175. package/dist/api/types/EntityKeyResponseData.d.ts +2 -1
  176. package/dist/api/types/EntityTraitDefinitionResponseData.d.ts +3 -2
  177. package/dist/api/types/{TraitDefinitionEntityType.d.ts → EntityType.d.ts} +3 -3
  178. package/dist/api/types/EnvironmentDetailResponseData.d.ts +1 -1
  179. package/dist/api/types/EnvironmentResponseData.d.ts +2 -1
  180. package/dist/api/{resources/accounts/types/CreateEnvironmentRequestBodyEnvironmentType.d.ts → types/EnvironmentType.d.ts} +3 -3
  181. package/dist/api/types/EventDetailResponseData.d.ts +2 -2
  182. package/dist/api/types/EventResponseData.d.ts +3 -2
  183. package/dist/api/types/EventStatus.d.ts +11 -0
  184. package/dist/api/{resources/events/types/ListEventsRequestEventTypesItem.d.ts → types/EventType.d.ts} +3 -3
  185. package/dist/api/types/FeatureCompanyResponseData.d.ts +4 -6
  186. package/dist/api/types/FeatureCompanyUserResponseData.d.ts +2 -3
  187. package/dist/api/types/FeatureDetailResponseData.d.ts +2 -2
  188. package/dist/api/{resources/features/types/CreateFeatureRequestBodyLifecyclePhase.d.ts → types/FeatureLifecyclePhase.d.ts} +3 -3
  189. package/dist/api/types/FeatureResponseData.d.ts +3 -2
  190. package/dist/api/{resources/features/types/CreateFeatureRequestBodyFeatureType.d.ts → types/FeatureType.d.ts} +2 -2
  191. package/dist/api/types/FeatureUsageDataResponseData.d.ts +1 -1
  192. package/dist/api/types/FeatureUsageResponseData.d.ts +4 -6
  193. package/dist/api/types/FlagDetailResponseData.d.ts +1 -1
  194. package/dist/api/types/FlagResponseData.d.ts +2 -1
  195. package/dist/api/types/FlagType.d.ts +4 -0
  196. package/dist/api/types/IssueTemporaryAccessTokenResponseData.d.ts +2 -1
  197. package/dist/api/types/ManagePlanRequest.d.ts +5 -0
  198. package/dist/api/types/{PlanChangeResponseDataAction.d.ts → PlanChangeAction.d.ts} +3 -2
  199. package/dist/api/types/{PlanChangeResponseDataActorType.d.ts → PlanChangeActorType.d.ts} +3 -3
  200. package/dist/api/types/PlanChangeBasePlanAction.d.ts +10 -0
  201. package/dist/api/types/PlanChangeResponseData.d.ts +4 -6
  202. package/dist/api/types/PlanChangeSubscriptionAction.d.ts +12 -0
  203. package/dist/api/types/PlanControlledByType.d.ts +8 -0
  204. package/dist/api/types/PlanCreditGrantView.d.ts +8 -7
  205. package/dist/api/types/PlanDetailResponseData.d.ts +3 -3
  206. package/dist/api/types/PlanEntitlementResponseData.d.ts +2 -2
  207. package/dist/api/types/PlanGroupDetailResponseData.d.ts +9 -3
  208. package/dist/api/types/PlanGroupPlanDetailResponseData.d.ts +3 -3
  209. package/dist/api/types/PlanGroupResponseData.d.ts +7 -1
  210. package/dist/api/types/PlanResponseData.d.ts +2 -1
  211. package/dist/api/{resources/plans/types/CreatePlanRequestBodyPlanType.d.ts → types/PlanType.d.ts} +2 -2
  212. package/dist/api/types/PreviewSubscriptionFinanceResponseData.d.ts +1 -0
  213. package/dist/api/types/ProrationBehavior.d.ts +8 -0
  214. package/dist/api/types/RuleConditionDetailResponseData.d.ts +1 -1
  215. package/dist/api/types/RuleConditionResponseData.d.ts +2 -1
  216. package/dist/api/types/RulesEngineSchemaVersion.d.ts +11 -0
  217. package/dist/api/types/RulesengineCheckFlagResult.d.ts +20 -0
  218. package/dist/api/types/RulesengineCheckFlagResultFeatureUsagePeriod.d.ts +10 -0
  219. package/dist/api/types/RulesengineCheckFlagResultRuleType.d.ts +13 -0
  220. package/dist/api/types/RulesengineCompany.d.ts +19 -0
  221. package/dist/api/types/RulesengineCompanyMetric.d.ts +15 -0
  222. package/dist/api/types/RulesengineCompanyMetricMonthReset.d.ts +8 -0
  223. package/dist/api/types/RulesengineCompanyMetricPeriod.d.ts +10 -0
  224. package/dist/api/types/RulesengineCondition.d.ts +21 -0
  225. package/dist/api/types/RulesengineConditionConditionType.d.ts +15 -0
  226. package/dist/api/types/RulesengineConditionGroup.d.ts +7 -0
  227. package/dist/api/types/RulesengineConditionMetricPeriod.d.ts +10 -0
  228. package/dist/api/types/RulesengineConditionMetricPeriodMonthReset.d.ts +8 -0
  229. package/dist/api/types/RulesengineConditionOperator.d.ts +14 -0
  230. package/dist/api/types/RulesengineEntityType.d.ts +8 -0
  231. package/dist/api/types/RulesengineFlag.d.ts +12 -0
  232. package/dist/api/types/RulesengineRule.d.ts +16 -0
  233. package/dist/api/types/RulesengineRuleRuleType.d.ts +13 -0
  234. package/dist/api/types/RulesengineSubscription.d.ts +8 -0
  235. package/dist/api/types/RulesengineTrait.d.ts +8 -0
  236. package/dist/api/types/RulesengineTraitDefinition.d.ts +9 -0
  237. package/dist/api/types/RulesengineTraitDefinitionComparableType.d.ts +10 -0
  238. package/dist/api/types/RulesengineUser.d.ts +12 -0
  239. package/dist/api/types/SkippedEntitlementErrorResponseData.d.ts +6 -0
  240. package/dist/api/types/SkippedEntitlementResponseData.d.ts +10 -0
  241. package/dist/api/{resources/credits/types/ListCompanyGrantsRequestDir.d.ts → types/SortDirection.d.ts} +2 -2
  242. package/dist/api/types/SubscriptionStatus.d.ts +15 -0
  243. package/dist/api/types/SubscriptionTraitUpdate.d.ts +2 -1
  244. package/dist/api/types/SubscriptionType.d.ts +10 -0
  245. package/dist/api/types/TemporaryAccessTokenResourceType.d.ts +4 -0
  246. package/dist/api/types/TemporaryAccessTokenResponseData.d.ts +2 -1
  247. package/dist/api/types/TraitDefinition.d.ts +1 -1
  248. package/dist/api/{resources/companies/types/ListEntityTraitDefinitionsRequestTraitType.d.ts → types/TraitType.d.ts} +2 -2
  249. package/dist/api/types/UpdateEntitlementReqCommon.d.ts +1 -1
  250. package/dist/api/types/UsageBasedEntitlementRequestBody.d.ts +2 -2
  251. package/dist/api/types/UsageBasedEntitlementResponseData.d.ts +2 -2
  252. package/dist/api/types/WebhookEventDetailResponseData.d.ts +2 -2
  253. package/dist/api/types/WebhookEventResponseData.d.ts +3 -2
  254. package/dist/api/types/WebhookEventStatus.d.ts +9 -0
  255. package/dist/api/{resources/webhooks/types/CreateWebhookRequestBodyRequestTypesItem.d.ts → types/WebhookRequestType.d.ts} +30 -28
  256. package/dist/api/types/WebhookResponseData.d.ts +2 -2
  257. package/dist/api/{resources/webhooks/types/UpdateWebhookRequestBodyStatus.d.ts → types/WebhookStatus.d.ts} +2 -2
  258. package/dist/api/types/index.d.ts +81 -21
  259. package/dist/index.js +3 -3
  260. package/dist/serialization/resources/accounts/client/requests/CreateEnvironmentRequestBody.d.ts +2 -2
  261. package/dist/serialization/resources/accounts/client/requests/UpdateEnvironmentRequestBody.d.ts +2 -2
  262. package/dist/serialization/resources/accounts/types/index.d.ts +0 -2
  263. package/dist/serialization/resources/billing/client/requests/CreateBillingPriceRequestBody.d.ts +6 -6
  264. package/dist/serialization/resources/billing/client/requests/CreateBillingSubscriptionRequestBody.d.ts +3 -2
  265. package/dist/serialization/resources/billing/types/CountBillingProductsParams.d.ts +2 -2
  266. package/dist/serialization/resources/billing/types/ListBillingPricesParams.d.ts +27 -0
  267. package/dist/serialization/resources/billing/types/{SearchBillingPricesResponse.d.ts → ListBillingPricesResponse.d.ts} +4 -4
  268. package/dist/serialization/resources/billing/types/ListBillingProductPricesParams.d.ts +27 -0
  269. package/dist/serialization/resources/billing/types/ListBillingProductPricesResponse.d.ts +15 -0
  270. package/dist/serialization/resources/billing/types/ListBillingProductsParams.d.ts +2 -2
  271. package/dist/serialization/resources/billing/types/index.d.ts +4 -18
  272. package/dist/serialization/resources/checkout/client/requests/CancelSubscriptionRequest.d.ts +14 -0
  273. package/dist/serialization/resources/checkout/client/requests/index.d.ts +1 -0
  274. package/dist/serialization/resources/checkout/types/CancelSubscriptionResponse.d.ts +14 -0
  275. package/dist/serialization/resources/checkout/types/index.d.ts +1 -0
  276. package/dist/serialization/resources/companies/client/requests/CreateEntityTraitDefinitionRequestBody.d.ts +4 -4
  277. package/dist/serialization/resources/companies/client/requests/UpdateEntityTraitDefinitionRequestBody.d.ts +2 -2
  278. package/dist/serialization/resources/companies/client/requests/UpdatePlanTraitBulkRequestBody.d.ts +1 -0
  279. package/dist/serialization/resources/companies/types/CountCompaniesForAdvancedFilterParams.d.ts +6 -4
  280. package/dist/serialization/resources/companies/types/CountEntityKeyDefinitionsParams.d.ts +2 -2
  281. package/dist/serialization/resources/companies/types/CountEntityTraitDefinitionsParams.d.ts +5 -4
  282. package/dist/serialization/resources/companies/types/ListCompaniesForAdvancedFilterParams.d.ts +6 -4
  283. package/dist/serialization/resources/companies/types/ListEntityKeyDefinitionsParams.d.ts +2 -2
  284. package/dist/serialization/resources/companies/types/ListEntityTraitDefinitionsParams.d.ts +5 -4
  285. package/dist/serialization/resources/companies/types/index.d.ts +0 -19
  286. package/dist/serialization/resources/components/client/requests/CreateComponentRequestBody.d.ts +2 -2
  287. package/dist/serialization/resources/components/client/requests/UpdateComponentRequestBody.d.ts +4 -4
  288. package/dist/serialization/resources/components/types/index.d.ts +0 -3
  289. package/dist/serialization/resources/credits/client/requests/CreateBillingCreditRequestBody.d.ts +6 -5
  290. package/dist/serialization/resources/credits/client/requests/CreateBillingPlanCreditGrantRequestBody.d.ts +14 -15
  291. package/dist/serialization/resources/credits/client/requests/CreateCompanyCreditGrant.d.ts +9 -5
  292. package/dist/serialization/resources/credits/client/requests/CreateCreditBundleRequestBody.d.ts +8 -7
  293. package/dist/serialization/resources/credits/client/requests/UpdateBillingCreditRequestBody.d.ts +6 -5
  294. package/dist/serialization/resources/credits/client/requests/UpdateBillingPlanCreditGrantRequestBody.d.ts +18 -10
  295. package/dist/serialization/resources/credits/client/requests/UpdateCreditBundleDetailsRequestBody.d.ts +6 -6
  296. package/dist/serialization/resources/credits/client/requests/ZeroOutGrantRequestBody.d.ts +2 -2
  297. package/dist/serialization/resources/credits/types/CountCreditBundlesParams.d.ts +4 -3
  298. package/dist/serialization/resources/credits/types/CountCreditLedgerParams.d.ts +2 -2
  299. package/dist/serialization/resources/credits/types/GetEnrichedCreditLedgerParams.d.ts +2 -2
  300. package/dist/serialization/resources/credits/types/ListCompanyGrantsParams.d.ts +4 -4
  301. package/dist/serialization/resources/credits/types/ListCreditBundlesParams.d.ts +4 -3
  302. package/dist/serialization/resources/credits/types/index.d.ts +0 -37
  303. package/dist/serialization/resources/entitlements/client/requests/CreateCompanyOverrideRequestBody.d.ts +2 -2
  304. package/dist/serialization/resources/entitlements/client/requests/CreatePlanEntitlementRequestBody.d.ts +6 -5
  305. package/dist/serialization/resources/entitlements/client/requests/DuplicatePlanEntitlementsRequestBody.d.ts +13 -0
  306. package/dist/serialization/resources/entitlements/client/requests/UpdateCompanyOverrideRequestBody.d.ts +2 -2
  307. package/dist/serialization/resources/entitlements/client/requests/UpdatePlanEntitlementRequestBody.d.ts +6 -5
  308. package/dist/serialization/resources/entitlements/client/requests/index.d.ts +1 -0
  309. package/dist/serialization/resources/entitlements/types/DuplicatePlanEntitlementsResponse.d.ts +14 -0
  310. package/dist/serialization/resources/entitlements/types/index.d.ts +1 -6
  311. package/dist/serialization/resources/events/types/ListEventsParams.d.ts +2 -2
  312. package/dist/serialization/resources/events/types/index.d.ts +0 -2
  313. package/dist/serialization/resources/features/client/requests/CheckFlagsBulkRequestBody.d.ts +13 -0
  314. package/dist/serialization/resources/features/client/requests/CreateFeatureRequestBody.d.ts +4 -4
  315. package/dist/serialization/resources/features/client/requests/UpdateFeatureRequestBody.d.ts +4 -4
  316. package/dist/serialization/resources/features/client/requests/index.d.ts +1 -0
  317. package/dist/serialization/resources/features/types/CheckFlagsBulkResponse.d.ts +14 -0
  318. package/dist/serialization/resources/features/types/CountFeaturesParams.d.ts +2 -1
  319. package/dist/serialization/resources/features/types/ListFeaturesParams.d.ts +2 -1
  320. package/dist/serialization/resources/features/types/index.d.ts +1 -4
  321. package/dist/serialization/resources/plangroups/client/requests/CreatePlanGroupRequestBody.d.ts +7 -1
  322. package/dist/serialization/resources/plangroups/client/requests/UpdatePlanGroupRequestBody.d.ts +7 -1
  323. package/dist/serialization/resources/plans/client/requests/CreatePlanRequestBody.d.ts +2 -2
  324. package/dist/serialization/resources/plans/client/requests/UpsertBillingProductRequestBody.d.ts +2 -2
  325. package/dist/serialization/resources/plans/types/CountPlansParams.d.ts +2 -4
  326. package/dist/serialization/resources/plans/types/ListPlansParams.d.ts +2 -4
  327. package/dist/serialization/resources/plans/types/index.d.ts +0 -6
  328. package/dist/serialization/resources/webhooks/client/requests/CreateWebhookRequestBody.d.ts +2 -2
  329. package/dist/serialization/resources/webhooks/client/requests/UpdateWebhookRequestBody.d.ts +4 -4
  330. package/dist/serialization/resources/webhooks/types/index.d.ts +0 -3
  331. package/dist/serialization/types/ApiKeyCreateResponseData.d.ts +2 -1
  332. package/dist/serialization/types/ApiKeyResponseData.d.ts +2 -1
  333. package/dist/serialization/types/ApiKeyScope.d.ts +10 -0
  334. package/dist/serialization/types/BillingCreditBundleResponseData.d.ts +8 -4
  335. package/dist/serialization/types/BillingCreditBundleStatus.d.ts +10 -0
  336. package/dist/serialization/types/BillingCreditBundleType.d.ts +10 -0
  337. package/dist/serialization/types/BillingCreditBundleView.d.ts +8 -4
  338. package/dist/serialization/types/BillingCreditBurnStrategy.d.ts +10 -0
  339. package/dist/serialization/types/BillingCreditExpiryType.d.ts +10 -0
  340. package/dist/serialization/types/BillingCreditExpiryUnit.d.ts +10 -0
  341. package/dist/serialization/types/BillingCreditGrantReason.d.ts +10 -0
  342. package/dist/serialization/types/BillingCreditGrantResponseData.d.ts +4 -2
  343. package/dist/serialization/types/BillingCreditGrantZeroedOutReason.d.ts +10 -0
  344. package/dist/serialization/types/BillingCreditResponseData.d.ts +6 -3
  345. package/dist/serialization/types/BillingCreditRolloverPolicy.d.ts +10 -0
  346. package/dist/serialization/types/BillingPlanCreditGrantResetCadence.d.ts +10 -0
  347. package/dist/serialization/types/BillingPlanCreditGrantResetStart.d.ts +10 -0
  348. package/dist/serialization/types/BillingPlanCreditGrantResetType.d.ts +10 -0
  349. package/dist/serialization/types/BillingPlanCreditGrantResponseData.d.ts +12 -7
  350. package/dist/serialization/types/BillingPriceResponseData.d.ts +4 -2
  351. package/dist/serialization/types/BillingPriceScheme.d.ts +10 -0
  352. package/dist/serialization/types/{BillingProductPricingUsageType.d.ts → BillingPriceUsageType.d.ts} +2 -2
  353. package/dist/serialization/types/BillingPriceView.d.ts +8 -4
  354. package/dist/serialization/types/BillingProductForSubscriptionResponseData.d.ts +4 -2
  355. package/dist/serialization/types/BillingProductPlanResponseData.d.ts +4 -2
  356. package/dist/serialization/types/BillingProductPriceInterval.d.ts +10 -0
  357. package/dist/serialization/types/BillingProductPriceResponseData.d.ts +8 -4
  358. package/dist/serialization/types/BillingProductPricing.d.ts +2 -2
  359. package/dist/serialization/types/BillingSubscriptionResponseData.d.ts +3 -1
  360. package/dist/serialization/types/BillingSubscriptionTrialEndSetting.d.ts +10 -0
  361. package/dist/serialization/types/BillingSubscriptionView.d.ts +3 -1
  362. package/dist/serialization/types/BillingTiersMode.d.ts +10 -0
  363. package/dist/serialization/types/ChargeType.d.ts +10 -0
  364. package/dist/serialization/types/CheckFlagsBulkResponseData.d.ts +13 -0
  365. package/dist/serialization/types/CheckoutSubscription.d.ts +3 -1
  366. package/dist/serialization/types/CompanyOverrideResponseData.d.ts +2 -1
  367. package/dist/serialization/types/CompanyPlanDetailResponseData.d.ts +8 -3
  368. package/dist/serialization/types/CompanyPlanInvalidReason.d.ts +10 -0
  369. package/dist/serialization/types/CompanyPlanWithBillingSubView.d.ts +2 -0
  370. package/dist/serialization/types/ComponentDisplaySettings.d.ts +15 -0
  371. package/dist/serialization/types/ComponentEntityType.d.ts +10 -0
  372. package/dist/serialization/types/ComponentHydrateResponseData.d.ts +6 -0
  373. package/dist/serialization/types/ComponentPreviewResponseData.d.ts +6 -0
  374. package/dist/serialization/types/ComponentResponseData.d.ts +4 -2
  375. package/dist/serialization/types/ComponentSettingsResponseData.d.ts +15 -0
  376. package/dist/serialization/types/ComponentState.d.ts +10 -0
  377. package/dist/serialization/types/CreateEntitlementReqCommon.d.ts +2 -2
  378. package/dist/serialization/types/CreateEventRequestBody.d.ts +2 -2
  379. package/dist/serialization/types/CreateFlagRequestBody.d.ts +2 -1
  380. package/dist/serialization/types/CreateOrUpdateFlagRequestBody.d.ts +2 -1
  381. package/dist/serialization/types/CreditAutoTopupAmountType.d.ts +10 -0
  382. package/dist/serialization/types/CreditCompanyGrantView.d.ts +8 -4
  383. package/dist/serialization/types/CreditGrantDetail.d.ts +2 -2
  384. package/dist/serialization/types/CreditGrantExpiryRequestBody.d.ts +10 -10
  385. package/dist/serialization/types/CreditGrantSortOrder.d.ts +10 -0
  386. package/dist/serialization/types/CreditLedgerPeriod.d.ts +10 -0
  387. package/dist/serialization/types/DataExportOutputFileType.d.ts +10 -0
  388. package/dist/serialization/types/DataExportResponseData.d.ts +6 -3
  389. package/dist/serialization/types/DataExportStatus.d.ts +10 -0
  390. package/dist/serialization/types/DataExportType.d.ts +10 -0
  391. package/dist/serialization/types/DuplicatePlanEntitlementsResponseResponseData.d.ts +15 -0
  392. package/dist/serialization/types/EntitlementPriceBehavior.d.ts +10 -0
  393. package/dist/serialization/types/EntitlementType.d.ts +10 -0
  394. package/dist/serialization/types/EntitlementValueType.d.ts +10 -0
  395. package/dist/serialization/types/EntityKeyDefinitionResponseData.d.ts +2 -1
  396. package/dist/serialization/types/EntityKeyDetailResponseData.d.ts +2 -1
  397. package/dist/serialization/types/EntityKeyResponseData.d.ts +2 -1
  398. package/dist/serialization/types/EntityTraitDefinitionResponseData.d.ts +4 -2
  399. package/dist/serialization/types/EntityType.d.ts +10 -0
  400. package/dist/serialization/types/EnvironmentDetailResponseData.d.ts +2 -1
  401. package/dist/serialization/types/EnvironmentResponseData.d.ts +2 -1
  402. package/dist/serialization/types/EnvironmentType.d.ts +10 -0
  403. package/dist/serialization/types/EventDetailResponseData.d.ts +4 -2
  404. package/dist/serialization/types/EventResponseData.d.ts +4 -2
  405. package/dist/serialization/types/EventStatus.d.ts +10 -0
  406. package/dist/serialization/types/EventType.d.ts +10 -0
  407. package/dist/serialization/types/FeatureCompanyResponseData.d.ts +8 -6
  408. package/dist/serialization/types/FeatureCompanyUserResponseData.d.ts +4 -3
  409. package/dist/serialization/types/FeatureDetailResponseData.d.ts +4 -2
  410. package/dist/serialization/types/FeatureLifecyclePhase.d.ts +10 -0
  411. package/dist/serialization/types/FeatureResponseData.d.ts +4 -2
  412. package/dist/serialization/types/FeatureType.d.ts +10 -0
  413. package/dist/serialization/types/FeatureUsageDataResponseData.d.ts +2 -1
  414. package/dist/serialization/types/FeatureUsageResponseData.d.ts +8 -6
  415. package/dist/serialization/types/FlagDetailResponseData.d.ts +2 -1
  416. package/dist/serialization/types/FlagResponseData.d.ts +2 -1
  417. package/dist/serialization/types/FlagType.d.ts +10 -0
  418. package/dist/serialization/types/IssueTemporaryAccessTokenResponseData.d.ts +2 -1
  419. package/dist/serialization/types/ManagePlanRequest.d.ts +3 -0
  420. package/dist/serialization/types/{PlanChangeResponseDataAction.d.ts → PlanChangeAction.d.ts} +3 -3
  421. package/dist/serialization/types/PlanChangeActorType.d.ts +10 -0
  422. package/dist/serialization/types/{PlanChangeResponseDataBasePlanAction.d.ts → PlanChangeBasePlanAction.d.ts} +2 -2
  423. package/dist/serialization/types/PlanChangeResponseData.d.ts +8 -8
  424. package/dist/serialization/types/{PlanChangeResponseDataSubscriptionChangeAction.d.ts → PlanChangeSubscriptionAction.d.ts} +2 -2
  425. package/dist/serialization/types/PlanControlledByType.d.ts +10 -0
  426. package/dist/serialization/types/PlanCreditGrantView.d.ts +12 -7
  427. package/dist/serialization/types/PlanDetailResponseData.d.ts +6 -3
  428. package/dist/serialization/types/PlanEntitlementResponseData.d.ts +4 -2
  429. package/dist/serialization/types/PlanGroupDetailResponseData.d.ts +11 -4
  430. package/dist/serialization/types/PlanGroupPlanDetailResponseData.d.ts +6 -3
  431. package/dist/serialization/types/PlanGroupResponseData.d.ts +8 -1
  432. package/dist/serialization/types/PlanResponseData.d.ts +2 -1
  433. package/dist/serialization/types/PlanType.d.ts +10 -0
  434. package/dist/serialization/types/PreviewSubscriptionFinanceResponseData.d.ts +1 -0
  435. package/dist/serialization/types/ProrationBehavior.d.ts +10 -0
  436. package/dist/serialization/types/RuleConditionDetailResponseData.d.ts +2 -1
  437. package/dist/serialization/types/RuleConditionResponseData.d.ts +2 -1
  438. package/dist/serialization/types/RulesEngineSchemaVersion.d.ts +10 -0
  439. package/dist/serialization/types/RulesengineCheckFlagResult.d.ts +27 -0
  440. package/dist/serialization/types/RulesengineCheckFlagResultFeatureUsagePeriod.d.ts +10 -0
  441. package/dist/serialization/types/RulesengineCheckFlagResultRuleType.d.ts +10 -0
  442. package/dist/serialization/types/RulesengineCompany.d.ts +28 -0
  443. package/dist/serialization/types/RulesengineCompanyMetric.d.ts +22 -0
  444. package/dist/serialization/types/RulesengineCompanyMetricMonthReset.d.ts +10 -0
  445. package/dist/serialization/types/RulesengineCompanyMetricPeriod.d.ts +10 -0
  446. package/dist/serialization/types/RulesengineCondition.d.ts +31 -0
  447. package/dist/serialization/types/RulesengineConditionConditionType.d.ts +10 -0
  448. package/dist/serialization/types/RulesengineConditionGroup.d.ts +13 -0
  449. package/dist/serialization/types/RulesengineConditionMetricPeriod.d.ts +10 -0
  450. package/dist/serialization/types/RulesengineConditionMetricPeriodMonthReset.d.ts +10 -0
  451. package/dist/serialization/types/RulesengineConditionOperator.d.ts +10 -0
  452. package/dist/serialization/types/RulesengineEntityType.d.ts +10 -0
  453. package/dist/serialization/types/RulesengineFlag.d.ts +18 -0
  454. package/dist/serialization/types/RulesengineRule.d.ts +24 -0
  455. package/dist/serialization/types/RulesengineRuleRuleType.d.ts +10 -0
  456. package/dist/serialization/types/RulesengineSubscription.d.ts +14 -0
  457. package/dist/serialization/types/RulesengineTrait.d.ts +14 -0
  458. package/dist/serialization/types/RulesengineTraitDefinition.d.ts +16 -0
  459. package/dist/serialization/types/RulesengineTraitDefinitionComparableType.d.ts +10 -0
  460. package/dist/serialization/types/RulesengineUser.d.ts +19 -0
  461. package/dist/serialization/types/SkippedEntitlementErrorResponseData.d.ts +12 -0
  462. package/dist/serialization/types/SkippedEntitlementResponseData.d.ts +16 -0
  463. package/dist/serialization/types/SortDirection.d.ts +10 -0
  464. package/dist/serialization/types/SubscriptionStatus.d.ts +10 -0
  465. package/dist/serialization/types/SubscriptionTraitUpdate.d.ts +2 -1
  466. package/dist/serialization/types/SubscriptionType.d.ts +10 -0
  467. package/dist/serialization/types/TemporaryAccessTokenResourceType.d.ts +10 -0
  468. package/dist/serialization/types/TemporaryAccessTokenResponseData.d.ts +2 -1
  469. package/dist/serialization/types/TraitDefinition.d.ts +2 -2
  470. package/dist/serialization/types/TraitType.d.ts +10 -0
  471. package/dist/serialization/types/UpdateEntitlementReqCommon.d.ts +2 -2
  472. package/dist/serialization/types/UsageBasedEntitlementRequestBody.d.ts +4 -3
  473. package/dist/serialization/types/UsageBasedEntitlementResponseData.d.ts +4 -2
  474. package/dist/serialization/types/WebhookEventDetailResponseData.d.ts +4 -2
  475. package/dist/serialization/types/WebhookEventResponseData.d.ts +4 -2
  476. package/dist/serialization/types/WebhookEventStatus.d.ts +10 -0
  477. package/dist/serialization/types/WebhookRequestType.d.ts +10 -0
  478. package/dist/serialization/types/WebhookResponseData.d.ts +4 -2
  479. package/dist/serialization/types/WebhookStatus.d.ts +10 -0
  480. package/dist/serialization/types/index.d.ts +81 -21
  481. package/package.json +1 -1
  482. package/dist/api/resources/accounts/types/UpdateEnvironmentRequestBodyEnvironmentType.d.ts +0 -9
  483. package/dist/api/resources/billing/client/requests/ListProductPricesRequest.d.ts +0 -53
  484. package/dist/api/resources/billing/types/CountBillingProductsRequestPriceUsageType.d.ts +0 -8
  485. package/dist/api/resources/billing/types/CountBillingProductsResponseParamsPriceUsageType.d.ts +0 -8
  486. package/dist/api/resources/billing/types/CreateBillingPriceRequestBodyBillingScheme.d.ts +0 -8
  487. package/dist/api/resources/billing/types/CreateBillingPriceRequestBodyTiersMode.d.ts +0 -8
  488. package/dist/api/resources/billing/types/CreateBillingPriceRequestBodyUsageType.d.ts +0 -8
  489. package/dist/api/resources/billing/types/CreateBillingSubscriptionRequestBodyTrialEndSetting.d.ts +0 -8
  490. package/dist/api/resources/billing/types/ListBillingProductsRequestPriceUsageType.d.ts +0 -8
  491. package/dist/api/resources/billing/types/ListBillingProductsResponseParamsPriceUsageType.d.ts +0 -8
  492. package/dist/api/resources/billing/types/ListProductPricesParams.d.ts +0 -27
  493. package/dist/api/resources/billing/types/ListProductPricesRequestPriceUsageType.d.ts +0 -8
  494. package/dist/api/resources/billing/types/ListProductPricesResponseParamsPriceUsageType.d.ts +0 -8
  495. package/dist/api/resources/billing/types/SearchBillingPricesRequestUsageType.d.ts +0 -8
  496. package/dist/api/resources/billing/types/SearchBillingPricesResponseParamsTiersMode.d.ts +0 -8
  497. package/dist/api/resources/billing/types/SearchBillingPricesResponseParamsUsageType.d.ts +0 -8
  498. package/dist/api/resources/companies/types/CountCompaniesForAdvancedFilterRequestSortOrderDirection.d.ts +0 -11
  499. package/dist/api/resources/companies/types/CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection.d.ts +0 -11
  500. package/dist/api/resources/companies/types/CountEntityKeyDefinitionsRequestEntityType.d.ts +0 -8
  501. package/dist/api/resources/companies/types/CountEntityKeyDefinitionsResponseParamsEntityType.d.ts +0 -8
  502. package/dist/api/resources/companies/types/CountEntityTraitDefinitionsRequestEntityType.d.ts +0 -8
  503. package/dist/api/resources/companies/types/CountEntityTraitDefinitionsRequestTraitType.d.ts +0 -12
  504. package/dist/api/resources/companies/types/CountEntityTraitDefinitionsResponseParamsEntityType.d.ts +0 -8
  505. package/dist/api/resources/companies/types/CountEntityTraitDefinitionsResponseParamsTraitType.d.ts +0 -12
  506. package/dist/api/resources/companies/types/CreateEntityTraitDefinitionRequestBodyEntityType.d.ts +0 -8
  507. package/dist/api/resources/companies/types/CreateEntityTraitDefinitionRequestBodyTraitType.d.ts +0 -12
  508. package/dist/api/resources/companies/types/ListCompaniesForAdvancedFilterRequestSortOrderDirection.d.ts +0 -11
  509. package/dist/api/resources/companies/types/ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection.d.ts +0 -11
  510. package/dist/api/resources/companies/types/ListEntityKeyDefinitionsRequestEntityType.d.ts +0 -8
  511. package/dist/api/resources/companies/types/ListEntityKeyDefinitionsResponseParamsEntityType.d.ts +0 -8
  512. package/dist/api/resources/companies/types/ListEntityTraitDefinitionsRequestEntityType.d.ts +0 -8
  513. package/dist/api/resources/companies/types/ListEntityTraitDefinitionsResponseParamsEntityType.d.ts +0 -8
  514. package/dist/api/resources/companies/types/ListEntityTraitDefinitionsResponseParamsTraitType.d.ts +0 -12
  515. package/dist/api/resources/companies/types/UpdateEntityTraitDefinitionRequestBodyTraitType.d.ts +0 -12
  516. package/dist/api/resources/components/types/CreateComponentRequestBodyEntityType.d.ts +0 -8
  517. package/dist/api/resources/credits/types/CountCreditBundlesRequestStatus.d.ts +0 -8
  518. package/dist/api/resources/credits/types/CountCreditBundlesResponseParamsStatus.d.ts +0 -8
  519. package/dist/api/resources/credits/types/CountCreditLedgerResponseParamsPeriod.d.ts +0 -10
  520. package/dist/api/resources/credits/types/CreateBillingCreditRequestBodyDefaultRolloverPolicy.d.ts +0 -9
  521. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryType.d.ts +0 -11
  522. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryUnit.d.ts +0 -8
  523. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyExpiryType.d.ts +0 -11
  524. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyExpiryUnit.d.ts +0 -8
  525. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetCadence.d.ts +0 -10
  526. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetStart.d.ts +0 -8
  527. package/dist/api/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetType.d.ts +0 -8
  528. package/dist/api/resources/credits/types/CreateCreditBundleRequestBodyExpiryType.d.ts +0 -11
  529. package/dist/api/resources/credits/types/CreateCreditBundleRequestBodyExpiryUnit.d.ts +0 -8
  530. package/dist/api/resources/credits/types/CreateCreditBundleRequestBodyStatus.d.ts +0 -8
  531. package/dist/api/resources/credits/types/GetEnrichedCreditLedgerRequestPeriod.d.ts +0 -10
  532. package/dist/api/resources/credits/types/GetEnrichedCreditLedgerResponseParamsPeriod.d.ts +0 -10
  533. package/dist/api/resources/credits/types/ListCompanyGrantsResponseParamsDir.d.ts +0 -8
  534. package/dist/api/resources/credits/types/ListCompanyGrantsResponseParamsOrder.d.ts +0 -10
  535. package/dist/api/resources/credits/types/ListCreditBundlesResponseParamsStatus.d.ts +0 -8
  536. package/dist/api/resources/credits/types/UpdateBillingCreditRequestBodyBurnStrategy.d.ts +0 -10
  537. package/dist/api/resources/credits/types/UpdateBillingCreditRequestBodyDefaultRolloverPolicy.d.ts +0 -9
  538. package/dist/api/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyExpiryType.d.ts +0 -11
  539. package/dist/api/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyExpiryUnit.d.ts +0 -8
  540. package/dist/api/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetCadence.d.ts +0 -10
  541. package/dist/api/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetStart.d.ts +0 -8
  542. package/dist/api/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetType.d.ts +0 -8
  543. package/dist/api/resources/credits/types/UpdateCreditBundleDetailsRequestBodyExpiryType.d.ts +0 -11
  544. package/dist/api/resources/credits/types/UpdateCreditBundleDetailsRequestBodyExpiryUnit.d.ts +0 -8
  545. package/dist/api/resources/credits/types/UpdateCreditBundleDetailsRequestBodyStatus.d.ts +0 -8
  546. package/dist/api/resources/entitlements/types/CreateCompanyOverrideRequestBodyValueType.d.ts +0 -11
  547. package/dist/api/resources/entitlements/types/CreatePlanEntitlementRequestBodyValueType.d.ts +0 -11
  548. package/dist/api/resources/entitlements/types/UpdatePlanEntitlementRequestBodyPriceBehavior.d.ts +0 -11
  549. package/dist/api/resources/entitlements/types/UpdatePlanEntitlementRequestBodyValueType.d.ts +0 -11
  550. package/dist/api/resources/events/types/ListEventsResponseParamsEventTypesItem.d.ts +0 -9
  551. package/dist/api/resources/features/types/UpdateFeatureRequestBodyFeatureType.d.ts +0 -9
  552. package/dist/api/resources/features/types/UpdateFeatureRequestBodyLifecyclePhase.d.ts +0 -15
  553. package/dist/api/resources/plans/types/CountPlansRequestPlanType.d.ts +0 -11
  554. package/dist/api/resources/plans/types/CountPlansResponseParamsPlanType.d.ts +0 -11
  555. package/dist/api/resources/plans/types/ListPlansRequestPlanType.d.ts +0 -11
  556. package/dist/api/resources/plans/types/ListPlansResponseParamsPlanType.d.ts +0 -11
  557. package/dist/api/resources/webhooks/types/UpdateWebhookRequestBodyRequestTypesItem.d.ts +0 -39
  558. package/dist/api/types/CreateEntitlementReqCommonValueType.d.ts +0 -11
  559. package/dist/api/types/CreateEventRequestBodyEventType.d.ts +0 -12
  560. package/dist/api/types/CreditGrantDetailGrantReason.d.ts +0 -9
  561. package/dist/api/types/CreditGrantExpiryRequestBodyExpiryType.d.ts +0 -11
  562. package/dist/api/types/CreditGrantExpiryRequestBodyExpiryUnit.d.ts +0 -8
  563. package/dist/api/types/FeatureCompanyResponseDataAllocationType.d.ts +0 -13
  564. package/dist/api/types/FeatureCompanyResponseDataCreditGrantReason.d.ts +0 -12
  565. package/dist/api/types/FeatureCompanyUserResponseDataAllocationType.d.ts +0 -14
  566. package/dist/api/types/FeatureUsageResponseDataAllocationType.d.ts +0 -13
  567. package/dist/api/types/FeatureUsageResponseDataCreditGrantReason.d.ts +0 -12
  568. package/dist/api/types/PlanChangeResponseDataBasePlanAction.d.ts +0 -13
  569. package/dist/api/types/PlanChangeResponseDataSubscriptionChangeAction.d.ts +0 -15
  570. package/dist/api/types/UpdateEntitlementReqCommonValueType.d.ts +0 -11
  571. package/dist/api/types/UsageBasedEntitlementRequestBodyPriceBehavior.d.ts +0 -11
  572. package/dist/serialization/resources/accounts/types/CreateEnvironmentRequestBodyEnvironmentType.d.ts +0 -10
  573. package/dist/serialization/resources/accounts/types/UpdateEnvironmentRequestBodyEnvironmentType.d.ts +0 -10
  574. package/dist/serialization/resources/billing/types/CountBillingProductsRequestPriceUsageType.d.ts +0 -10
  575. package/dist/serialization/resources/billing/types/CountBillingProductsResponseParamsPriceUsageType.d.ts +0 -10
  576. package/dist/serialization/resources/billing/types/CreateBillingPriceRequestBodyBillingScheme.d.ts +0 -10
  577. package/dist/serialization/resources/billing/types/CreateBillingPriceRequestBodyTiersMode.d.ts +0 -10
  578. package/dist/serialization/resources/billing/types/CreateBillingPriceRequestBodyUsageType.d.ts +0 -10
  579. package/dist/serialization/resources/billing/types/CreateBillingSubscriptionRequestBodyTrialEndSetting.d.ts +0 -10
  580. package/dist/serialization/resources/billing/types/ListBillingProductsRequestPriceUsageType.d.ts +0 -10
  581. package/dist/serialization/resources/billing/types/ListBillingProductsResponseParamsPriceUsageType.d.ts +0 -10
  582. package/dist/serialization/resources/billing/types/ListProductPricesParams.d.ts +0 -23
  583. package/dist/serialization/resources/billing/types/ListProductPricesRequestPriceUsageType.d.ts +0 -10
  584. package/dist/serialization/resources/billing/types/ListProductPricesResponse.d.ts +0 -15
  585. package/dist/serialization/resources/billing/types/ListProductPricesResponseParamsPriceUsageType.d.ts +0 -10
  586. package/dist/serialization/resources/billing/types/SearchBillingPricesParams.d.ts +0 -25
  587. package/dist/serialization/resources/billing/types/SearchBillingPricesRequestTiersMode.d.ts +0 -10
  588. package/dist/serialization/resources/billing/types/SearchBillingPricesRequestUsageType.d.ts +0 -10
  589. package/dist/serialization/resources/billing/types/SearchBillingPricesResponseParamsTiersMode.d.ts +0 -10
  590. package/dist/serialization/resources/billing/types/SearchBillingPricesResponseParamsUsageType.d.ts +0 -10
  591. package/dist/serialization/resources/companies/types/CountCompaniesForAdvancedFilterRequestSortOrderDirection.d.ts +0 -10
  592. package/dist/serialization/resources/companies/types/CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection.d.ts +0 -10
  593. package/dist/serialization/resources/companies/types/CountEntityKeyDefinitionsRequestEntityType.d.ts +0 -10
  594. package/dist/serialization/resources/companies/types/CountEntityKeyDefinitionsResponseParamsEntityType.d.ts +0 -10
  595. package/dist/serialization/resources/companies/types/CountEntityTraitDefinitionsRequestEntityType.d.ts +0 -10
  596. package/dist/serialization/resources/companies/types/CountEntityTraitDefinitionsRequestTraitType.d.ts +0 -10
  597. package/dist/serialization/resources/companies/types/CountEntityTraitDefinitionsResponseParamsEntityType.d.ts +0 -10
  598. package/dist/serialization/resources/companies/types/CountEntityTraitDefinitionsResponseParamsTraitType.d.ts +0 -10
  599. package/dist/serialization/resources/companies/types/CreateEntityTraitDefinitionRequestBodyEntityType.d.ts +0 -10
  600. package/dist/serialization/resources/companies/types/CreateEntityTraitDefinitionRequestBodyTraitType.d.ts +0 -10
  601. package/dist/serialization/resources/companies/types/ListCompaniesForAdvancedFilterRequestSortOrderDirection.d.ts +0 -10
  602. package/dist/serialization/resources/companies/types/ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection.d.ts +0 -10
  603. package/dist/serialization/resources/companies/types/ListEntityKeyDefinitionsRequestEntityType.d.ts +0 -10
  604. package/dist/serialization/resources/companies/types/ListEntityKeyDefinitionsResponseParamsEntityType.d.ts +0 -10
  605. package/dist/serialization/resources/companies/types/ListEntityTraitDefinitionsRequestEntityType.d.ts +0 -10
  606. package/dist/serialization/resources/companies/types/ListEntityTraitDefinitionsRequestTraitType.d.ts +0 -10
  607. package/dist/serialization/resources/companies/types/ListEntityTraitDefinitionsResponseParamsEntityType.d.ts +0 -10
  608. package/dist/serialization/resources/companies/types/ListEntityTraitDefinitionsResponseParamsTraitType.d.ts +0 -10
  609. package/dist/serialization/resources/companies/types/UpdateEntityTraitDefinitionRequestBodyTraitType.d.ts +0 -10
  610. package/dist/serialization/resources/components/types/CreateComponentRequestBodyEntityType.d.ts +0 -10
  611. package/dist/serialization/resources/components/types/UpdateComponentRequestBodyEntityType.d.ts +0 -10
  612. package/dist/serialization/resources/components/types/UpdateComponentRequestBodyState.d.ts +0 -10
  613. package/dist/serialization/resources/credits/types/CountCreditBundlesRequestStatus.d.ts +0 -10
  614. package/dist/serialization/resources/credits/types/CountCreditBundlesResponseParamsStatus.d.ts +0 -10
  615. package/dist/serialization/resources/credits/types/CountCreditLedgerRequestPeriod.d.ts +0 -10
  616. package/dist/serialization/resources/credits/types/CountCreditLedgerResponseParamsPeriod.d.ts +0 -10
  617. package/dist/serialization/resources/credits/types/CreateBillingCreditRequestBodyBurnStrategy.d.ts +0 -10
  618. package/dist/serialization/resources/credits/types/CreateBillingCreditRequestBodyDefaultRolloverPolicy.d.ts +0 -10
  619. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryType.d.ts +0 -10
  620. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryUnit.d.ts +0 -10
  621. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyExpiryType.d.ts +0 -10
  622. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyExpiryUnit.d.ts +0 -10
  623. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetCadence.d.ts +0 -10
  624. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetStart.d.ts +0 -10
  625. package/dist/serialization/resources/credits/types/CreateBillingPlanCreditGrantRequestBodyResetType.d.ts +0 -10
  626. package/dist/serialization/resources/credits/types/CreateCompanyCreditGrantExpiryType.d.ts +0 -10
  627. package/dist/serialization/resources/credits/types/CreateCompanyCreditGrantExpiryUnit.d.ts +0 -10
  628. package/dist/serialization/resources/credits/types/CreateCreditBundleRequestBodyExpiryType.d.ts +0 -10
  629. package/dist/serialization/resources/credits/types/CreateCreditBundleRequestBodyExpiryUnit.d.ts +0 -10
  630. package/dist/serialization/resources/credits/types/CreateCreditBundleRequestBodyStatus.d.ts +0 -10
  631. package/dist/serialization/resources/credits/types/GetEnrichedCreditLedgerRequestPeriod.d.ts +0 -10
  632. package/dist/serialization/resources/credits/types/GetEnrichedCreditLedgerResponseParamsPeriod.d.ts +0 -10
  633. package/dist/serialization/resources/credits/types/ListCompanyGrantsRequestDir.d.ts +0 -10
  634. package/dist/serialization/resources/credits/types/ListCompanyGrantsRequestOrder.d.ts +0 -10
  635. package/dist/serialization/resources/credits/types/ListCompanyGrantsResponseParamsDir.d.ts +0 -10
  636. package/dist/serialization/resources/credits/types/ListCompanyGrantsResponseParamsOrder.d.ts +0 -10
  637. package/dist/serialization/resources/credits/types/ListCreditBundlesRequestStatus.d.ts +0 -10
  638. package/dist/serialization/resources/credits/types/ListCreditBundlesResponseParamsStatus.d.ts +0 -10
  639. package/dist/serialization/resources/credits/types/UpdateBillingCreditRequestBodyBurnStrategy.d.ts +0 -10
  640. package/dist/serialization/resources/credits/types/UpdateBillingCreditRequestBodyDefaultRolloverPolicy.d.ts +0 -10
  641. package/dist/serialization/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyExpiryType.d.ts +0 -10
  642. package/dist/serialization/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyExpiryUnit.d.ts +0 -10
  643. package/dist/serialization/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetCadence.d.ts +0 -10
  644. package/dist/serialization/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetStart.d.ts +0 -10
  645. package/dist/serialization/resources/credits/types/UpdateBillingPlanCreditGrantRequestBodyResetType.d.ts +0 -10
  646. package/dist/serialization/resources/credits/types/UpdateCreditBundleDetailsRequestBodyExpiryType.d.ts +0 -10
  647. package/dist/serialization/resources/credits/types/UpdateCreditBundleDetailsRequestBodyExpiryUnit.d.ts +0 -10
  648. package/dist/serialization/resources/credits/types/UpdateCreditBundleDetailsRequestBodyStatus.d.ts +0 -10
  649. package/dist/serialization/resources/credits/types/ZeroOutGrantRequestBodyReason.d.ts +0 -10
  650. package/dist/serialization/resources/entitlements/types/CreateCompanyOverrideRequestBodyValueType.d.ts +0 -10
  651. package/dist/serialization/resources/entitlements/types/CreatePlanEntitlementRequestBodyPriceBehavior.d.ts +0 -10
  652. package/dist/serialization/resources/entitlements/types/CreatePlanEntitlementRequestBodyValueType.d.ts +0 -10
  653. package/dist/serialization/resources/entitlements/types/UpdateCompanyOverrideRequestBodyValueType.d.ts +0 -10
  654. package/dist/serialization/resources/entitlements/types/UpdatePlanEntitlementRequestBodyPriceBehavior.d.ts +0 -10
  655. package/dist/serialization/resources/entitlements/types/UpdatePlanEntitlementRequestBodyValueType.d.ts +0 -10
  656. package/dist/serialization/resources/events/types/ListEventsRequestEventTypesItem.d.ts +0 -10
  657. package/dist/serialization/resources/events/types/ListEventsResponseParamsEventTypesItem.d.ts +0 -10
  658. package/dist/serialization/resources/features/types/CreateFeatureRequestBodyFeatureType.d.ts +0 -10
  659. package/dist/serialization/resources/features/types/CreateFeatureRequestBodyLifecyclePhase.d.ts +0 -10
  660. package/dist/serialization/resources/features/types/UpdateFeatureRequestBodyFeatureType.d.ts +0 -10
  661. package/dist/serialization/resources/features/types/UpdateFeatureRequestBodyLifecyclePhase.d.ts +0 -10
  662. package/dist/serialization/resources/plans/types/CountPlansRequestPlanType.d.ts +0 -10
  663. package/dist/serialization/resources/plans/types/CountPlansResponseParamsPlanType.d.ts +0 -10
  664. package/dist/serialization/resources/plans/types/CreatePlanRequestBodyPlanType.d.ts +0 -10
  665. package/dist/serialization/resources/plans/types/ListPlansRequestPlanType.d.ts +0 -10
  666. package/dist/serialization/resources/plans/types/ListPlansResponseParamsPlanType.d.ts +0 -10
  667. package/dist/serialization/resources/plans/types/UpsertBillingProductRequestBodyChargeType.d.ts +0 -10
  668. package/dist/serialization/resources/webhooks/types/CreateWebhookRequestBodyRequestTypesItem.d.ts +0 -10
  669. package/dist/serialization/resources/webhooks/types/UpdateWebhookRequestBodyRequestTypesItem.d.ts +0 -10
  670. package/dist/serialization/resources/webhooks/types/UpdateWebhookRequestBodyStatus.d.ts +0 -10
  671. package/dist/serialization/types/CreateEntitlementReqCommonValueType.d.ts +0 -10
  672. package/dist/serialization/types/CreateEventRequestBodyEventType.d.ts +0 -10
  673. package/dist/serialization/types/CreditGrantDetailGrantReason.d.ts +0 -10
  674. package/dist/serialization/types/CreditGrantExpiryRequestBodyExpiryType.d.ts +0 -10
  675. package/dist/serialization/types/CreditGrantExpiryRequestBodyExpiryUnit.d.ts +0 -10
  676. package/dist/serialization/types/CreditGrantExpiryRequestBodyResetCadence.d.ts +0 -10
  677. package/dist/serialization/types/CreditGrantExpiryRequestBodyResetStart.d.ts +0 -10
  678. package/dist/serialization/types/CreditGrantExpiryRequestBodyResetType.d.ts +0 -10
  679. package/dist/serialization/types/FeatureCompanyResponseDataAllocationType.d.ts +0 -10
  680. package/dist/serialization/types/FeatureCompanyResponseDataCreditGrantReason.d.ts +0 -10
  681. package/dist/serialization/types/FeatureCompanyUserResponseDataAllocationType.d.ts +0 -10
  682. package/dist/serialization/types/FeatureUsageResponseDataAllocationType.d.ts +0 -10
  683. package/dist/serialization/types/FeatureUsageResponseDataCreditGrantReason.d.ts +0 -10
  684. package/dist/serialization/types/PlanChangeResponseDataActorType.d.ts +0 -10
  685. package/dist/serialization/types/TraitDefinitionEntityType.d.ts +0 -10
  686. package/dist/serialization/types/UpdateEntitlementReqCommonValueType.d.ts +0 -10
  687. package/dist/serialization/types/UsageBasedEntitlementRequestBodyPriceBehavior.d.ts +0 -10
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- "use strict";var jg=Object.create;var Sr=Object.defineProperty;var kg=Object.getOwnPropertyDescriptor;var Dg=Object.getOwnPropertyNames;var Vg=Object.getPrototypeOf,qg=Object.prototype.hasOwnProperty;var qo=(w,t)=>()=>(w&&(t=w(w=0)),t);var re=(w,t)=>{for(var o in t)Sr(w,o,{get:t[o],enumerable:!0})},wi=(w,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Dg(t))!qg.call(w,i)&&i!==o&&Sr(w,i,{get:()=>t[i],enumerable:!(r=kg(t,i))||r.enumerable});return w};var H=(w,t,o)=>(o=w!=null?jg(Vg(w)):{},wi(t||!w||!w.__esModule?Sr(o,"default",{value:w,enumerable:!0}):o,w)),Mg=w=>wi(Sr({},"__esModule",{value:!0}),w);var bs={};re(bs,{Node18UniversalStreamWrapper:()=>Wo});var Wo,fs=qo(()=>{"use strict";Wo=class w{constructor(t){this.readableStream=t,this.reader=this.readableStream.getReader(),this.events={data:[],end:[],error:[],readable:[],close:[],pause:[],resume:[]},this.paused=!1,this.resumeCallback=null,this.encoding=null}on(t,o){this.events[t]?.push(o)}off(t,o){this.events[t]=this.events[t]?.filter(r=>r!==o)}pipe(t){return this.on("data",async o=>{if(t instanceof w)t._write(o);else if(t instanceof WritableStream){let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}else t.write(o)}),this.on("end",async()=>{t instanceof w?t._end():t instanceof WritableStream?t.getWriter().close():t.end()}),this.on("error",async o=>{t instanceof w?t._error(o):t instanceof WritableStream?t.getWriter().abort(o):t.destroy(o)}),this._startReading(),t}pipeTo(t){return this.pipe(t)}unpipe(t){this.off("data",async o=>{if(t instanceof w)t._write(o);else if(t instanceof WritableStream){let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}else t.write(o)}),this.off("end",async()=>{t instanceof w?t._end():t instanceof WritableStream?t.getWriter().close():t.end()}),this.off("error",async o=>{t instanceof w?t._error(o):t instanceof WritableStream?t.getWriter().abort(o):t.destroy(o)})}destroy(t){this.reader.cancel(t).then(()=>{this._emit("close")}).catch(o=>{this._emit("error",o)})}pause(){this.paused=!0,this._emit("pause")}resume(){this.paused&&(this.paused=!1,this._emit("resume"),this.resumeCallback&&(this.resumeCallback(),this.resumeCallback=null))}get isPaused(){return this.paused}async read(){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(!t)return o}setEncoding(t){this.encoding=t}async text(){let t=[];for(;;){let{done:r,value:i}=await this.reader.read();if(r)break;i&&t.push(i)}return new TextDecoder(this.encoding||"utf-8").decode(await new Blob(t).arrayBuffer())}async json(){let t=await this.text();return JSON.parse(t)}_write(t){this._emit("data",t)}_end(){this._emit("end")}_error(t){this._emit("error",t)}_emit(t,o){if(this.events[t])for(let r of this.events[t]||[])r(o)}async _startReading(){try{for(this._emit("readable");;){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(t){this._emit("end"),this._emit("close");break}o&&this._emit("data",o)}}catch(t){this._emit("error",t)}}[Symbol.asyncIterator](){return{next:async()=>{this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();return t?{done:!0,value:void 0}:{done:!1,value:o}},[Symbol.asyncIterator](){return this}}}}});var _s={};re(_s,{UndiciStreamWrapper:()=>Jo});var Jo,Ss=qo(()=>{"use strict";Jo=class w{constructor(t){this.readableStream=t,this.reader=this.readableStream.getReader(),this.events={data:[],end:[],error:[],readable:[],close:[],pause:[],resume:[]},this.paused=!1,this.resumeCallback=null,this.encoding=null}on(t,o){this.events[t]?.push(o)}off(t,o){this.events[t]=this.events[t]?.filter(r=>r!==o)}pipe(t){return this.on("data",o=>{if(t instanceof w)t._write(o);else{let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}}),this.on("end",()=>{t instanceof w?t._end():t.getWriter().close()}),this.on("error",o=>{t instanceof w?t._error(o):t.getWriter().abort(o)}),this._startReading(),t}pipeTo(t){return this.pipe(t)}unpipe(t){this.off("data",o=>{if(t instanceof w)t._write(o);else{let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}}),this.off("end",()=>{t instanceof w?t._end():t.getWriter().close()}),this.off("error",o=>{t instanceof w?t._error(o):t.getWriter().abort(o)})}destroy(t){this.reader.cancel(t).then(()=>{this._emit("close")}).catch(o=>{this._emit("error",o)})}pause(){this.paused=!0,this._emit("pause")}resume(){this.paused&&(this.paused=!1,this._emit("resume"),this.resumeCallback&&(this.resumeCallback(),this.resumeCallback=null))}get isPaused(){return this.paused}async read(){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(!t)return o}setEncoding(t){this.encoding=t}async text(){let t=[];for(;;){let{done:r,value:i}=await this.reader.read();if(r)break;i&&t.push(i)}return new TextDecoder(this.encoding||"utf-8").decode(await new Blob(t).arrayBuffer())}async json(){let t=await this.text();return JSON.parse(t)}_write(t){this._emit("data",t)}_end(){this._emit("end")}_error(t){this._emit("error",t)}_emit(t,o){if(this.events[t])for(let r of this.events[t]||[])r(o)}async _startReading(){try{for(this._emit("readable");;){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(t){this._emit("end"),this._emit("close");break}o&&this._emit("data",o)}}catch(t){this._emit("error",t)}}[Symbol.asyncIterator](){return{next:async()=>{this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();return t?{done:!0,value:void 0}:{done:!1,value:o}},[Symbol.asyncIterator](){return this}}}}});var xs={};re(xs,{NodePre18StreamWrapper:()=>$o});var $o,Es=qo(()=>{"use strict";$o=class{constructor(t){this.readableStream=t}on(t,o){this.readableStream.on(t,o)}off(t,o){this.readableStream.off(t,o)}pipe(t){return this.readableStream.pipe(t),t}pipeTo(t){return this.pipe(t)}unpipe(t){t?this.readableStream.unpipe(t):this.readableStream.unpipe()}destroy(t){this.readableStream.destroy(t)}pause(){this.readableStream.pause()}resume(){this.readableStream.resume()}get isPaused(){return this.readableStream.isPaused()}async read(){return new Promise((t,o)=>{let r=this.readableStream.read();r?t(r):(this.readableStream.once("readable",()=>{let i=this.readableStream.read();t(i)}),this.readableStream.once("error",o))})}setEncoding(t){this.readableStream.setEncoding(t),this.encoding=t}async text(){let t=[],o=new TextEncoder;this.readableStream.setEncoding(this.encoding||"utf-8");for await(let i of this.readableStream)t.push(o.encode(i));return new TextDecoder(this.encoding||"utf-8").decode(Buffer.concat(t))}async json(){let t=await this.text();return JSON.parse(t)}[Symbol.asyncIterator](){let o=this.readableStream[Symbol.asyncIterator]();return{async next(){let{value:r,done:i}=await o.next();return{value:r,done:i}},[Symbol.asyncIterator](){return this}}}}});var Zw={};re(Zw,{LocalCache:()=>He,Schematic:()=>Z,SchematicClient:()=>ko,SchematicEnvironment:()=>f,SchematicError:()=>c,SchematicTimeoutError:()=>R,WEBHOOK_SIGNATURE_HEADER:()=>di,WEBHOOK_TIMESTAMP_HEADER:()=>hi,WebhookSignatureError:()=>Ee,computeHexSignature:()=>Og,computeSignature:()=>Vo,verifySignature:()=>gi,verifyWebhookSignature:()=>Bg});module.exports=Mg(Zw);var Z={};re(Z,{BadRequestError:()=>P,BillingProductPricingUsageType:()=>Ag,ConditionConditionType:()=>Fg,ConditionMetricPeriod:()=>Ig,ConditionMetricPeriodMonthReset:()=>Kg,ConditionOperator:()=>Lg,CountBillingProductsRequestPriceUsageType:()=>vi,CountBillingProductsResponseParamsPriceUsageType:()=>Oi,CountCompaniesForAdvancedFilterRequestSortOrderDirection:()=>ya,CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection:()=>za,CountCreditBundlesRequestStatus:()=>Ni,CountCreditBundlesResponseParamsStatus:()=>Xi,CountCreditLedgerRequestPeriod:()=>oa,CountCreditLedgerResponseParamsPeriod:()=>ta,CountEntityKeyDefinitionsRequestEntityType:()=>Sa,CountEntityKeyDefinitionsResponseParamsEntityType:()=>xa,CountEntityTraitDefinitionsRequestEntityType:()=>Ba,CountEntityTraitDefinitionsRequestTraitType:()=>ja,CountEntityTraitDefinitionsResponseParamsEntityType:()=>ka,CountEntityTraitDefinitionsResponseParamsTraitType:()=>Da,CountPlansRequestPlanType:()=>es,CountPlansResponseParamsPlanType:()=>rs,CreateBillingCreditRequestBodyBurnStrategy:()=>ji,CreateBillingCreditRequestBodyDefaultRolloverPolicy:()=>ki,CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryType:()=>ia,CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryUnit:()=>aa,CreateBillingPlanCreditGrantRequestBodyExpiryType:()=>sa,CreateBillingPlanCreditGrantRequestBodyExpiryUnit:()=>na,CreateBillingPlanCreditGrantRequestBodyResetCadence:()=>ca,CreateBillingPlanCreditGrantRequestBodyResetStart:()=>pa,CreateBillingPlanCreditGrantRequestBodyResetType:()=>la,CreateBillingPriceRequestBodyBillingScheme:()=>Si,CreateBillingPriceRequestBodyTiersMode:()=>xi,CreateBillingPriceRequestBodyUsageType:()=>Ei,CreateBillingSubscriptionRequestBodyTrialEndSetting:()=>Bi,CreateCompanyCreditGrantExpiryType:()=>Wi,CreateCompanyCreditGrantExpiryUnit:()=>Ji,CreateCompanyOverrideRequestBodyMetricPeriod:()=>Va,CreateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>qa,CreateCompanyOverrideRequestBodyValueType:()=>Ma,CreateComponentRequestBodyEntityType:()=>os,CreateCreditBundleRequestBodyExpiryType:()=>Ai,CreateCreditBundleRequestBodyExpiryUnit:()=>Fi,CreateCreditBundleRequestBodyStatus:()=>Ii,CreateEntitlementReqCommonMetricPeriod:()=>Gg,CreateEntitlementReqCommonMetricPeriodMonthReset:()=>Ng,CreateEntitlementReqCommonValueType:()=>Xg,CreateEntityTraitDefinitionRequestBodyEntityType:()=>Ta,CreateEntityTraitDefinitionRequestBodyTraitType:()=>va,CreateEnvironmentRequestBodyEnvironmentType:()=>yi,CreateEventRequestBodyEventType:()=>Hg,CreateFeatureRequestBodyFeatureType:()=>ps,CreateFeatureRequestBodyLifecyclePhase:()=>ls,CreateOrUpdateConditionRequestBodyConditionType:()=>Wg,CreateOrUpdateConditionRequestBodyMetricPeriod:()=>Jg,CreateOrUpdateConditionRequestBodyMetricPeriodMonthReset:()=>$g,CreateOrUpdateConditionRequestBodyOperator:()=>Zg,CreateOrUpdateRuleRequestBodyRuleType:()=>Yg,CreatePlanEntitlementRequestBodyMetricPeriod:()=>Ka,CreatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>La,CreatePlanEntitlementRequestBodyPriceBehavior:()=>Ga,CreatePlanEntitlementRequestBodyValueType:()=>Na,CreatePlanRequestBodyPlanType:()=>Ya,CreateWebhookRequestBodyRequestTypesItem:()=>gs,CreditGrantDetailGrantReason:()=>Qg,CreditGrantExpiryRequestBodyExpiryType:()=>ew,CreditGrantExpiryRequestBodyExpiryUnit:()=>rw,CreditGrantExpiryRequestBodyResetCadence:()=>ow,CreditGrantExpiryRequestBodyResetStart:()=>tw,CreditGrantExpiryRequestBodyResetType:()=>iw,FeatureCompanyResponseDataAllocationType:()=>aw,FeatureCompanyResponseDataCreditGrantReason:()=>sw,FeatureCompanyUserResponseDataAllocationType:()=>nw,FeatureUsageResponseDataAllocationType:()=>cw,FeatureUsageResponseDataCreditGrantReason:()=>pw,ForbiddenError:()=>x,GetEnrichedCreditLedgerRequestPeriod:()=>ea,GetEnrichedCreditLedgerResponseParamsPeriod:()=>ra,InternalServerError:()=>U,ListBillingProductsRequestPriceUsageType:()=>Ci,ListBillingProductsResponseParamsPriceUsageType:()=>Ti,ListCompaniesForAdvancedFilterRequestSortOrderDirection:()=>Ra,ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection:()=>ba,ListCompanyGrantsRequestDir:()=>Zi,ListCompanyGrantsRequestOrder:()=>$i,ListCompanyGrantsResponseParamsDir:()=>Yi,ListCompanyGrantsResponseParamsOrder:()=>Qi,ListCreditBundlesRequestStatus:()=>qi,ListCreditBundlesResponseParamsStatus:()=>Mi,ListEntityKeyDefinitionsRequestEntityType:()=>fa,ListEntityKeyDefinitionsResponseParamsEntityType:()=>_a,ListEntityTraitDefinitionsRequestEntityType:()=>Ea,ListEntityTraitDefinitionsRequestTraitType:()=>Ua,ListEntityTraitDefinitionsResponseParamsEntityType:()=>Pa,ListEntityTraitDefinitionsResponseParamsTraitType:()=>Ca,ListEventsRequestEventTypesItem:()=>ns,ListEventsResponseParamsEventTypesItem:()=>cs,ListPlansRequestPlanType:()=>$a,ListPlansResponseParamsPlanType:()=>Za,ListProductPricesRequestPriceUsageType:()=>Ui,ListProductPricesResponseParamsPriceUsageType:()=>Pi,NotFoundError:()=>E,PlanChangeResponseDataAction:()=>lw,PlanChangeResponseDataActorType:()=>mw,PlanChangeResponseDataBasePlanAction:()=>uw,PlanChangeResponseDataSubscriptionChangeAction:()=>dw,RuleRuleType:()=>hw,SearchBillingPricesRequestTiersMode:()=>Ri,SearchBillingPricesRequestUsageType:()=>bi,SearchBillingPricesResponseParamsTiersMode:()=>fi,SearchBillingPricesResponseParamsUsageType:()=>_i,TraitDefinitionComparableType:()=>gw,TraitDefinitionEntityType:()=>ww,UnauthorizedError:()=>S,UpdateBillingCreditRequestBodyBurnStrategy:()=>Di,UpdateBillingCreditRequestBodyDefaultRolloverPolicy:()=>Vi,UpdateBillingPlanCreditGrantRequestBodyExpiryType:()=>ma,UpdateBillingPlanCreditGrantRequestBodyExpiryUnit:()=>ua,UpdateBillingPlanCreditGrantRequestBodyResetCadence:()=>da,UpdateBillingPlanCreditGrantRequestBodyResetStart:()=>ha,UpdateBillingPlanCreditGrantRequestBodyResetType:()=>ga,UpdateCompanyOverrideRequestBodyMetricPeriod:()=>Aa,UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>Fa,UpdateCompanyOverrideRequestBodyValueType:()=>Ia,UpdateComponentRequestBodyEntityType:()=>ts,UpdateComponentRequestBodyState:()=>is,UpdateCreditBundleDetailsRequestBodyExpiryType:()=>Ki,UpdateCreditBundleDetailsRequestBodyExpiryUnit:()=>Li,UpdateCreditBundleDetailsRequestBodyStatus:()=>Gi,UpdateEntitlementReqCommonMetricPeriod:()=>yw,UpdateEntitlementReqCommonMetricPeriodMonthReset:()=>zw,UpdateEntitlementReqCommonValueType:()=>Rw,UpdateEntityTraitDefinitionRequestBodyTraitType:()=>Oa,UpdateEnvironmentRequestBodyEnvironmentType:()=>zi,UpdateFeatureRequestBodyFeatureType:()=>ms,UpdateFeatureRequestBodyLifecyclePhase:()=>us,UpdatePlanEntitlementRequestBodyMetricPeriod:()=>Xa,UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>Ha,UpdatePlanEntitlementRequestBodyPriceBehavior:()=>Wa,UpdatePlanEntitlementRequestBodyValueType:()=>Ja,UpdateWebhookRequestBodyRequestTypesItem:()=>ws,UpdateWebhookRequestBodyStatus:()=>ys,UpsertBillingProductRequestBodyChargeType:()=>Qa,UsageBasedEntitlementRequestBodyPriceBehavior:()=>bw,ZeroOutGrantRequestBodyReason:()=>Hi,accesstokens:()=>hs,accounts:()=>Mo,billing:()=>Ao,checkout:()=>wa,companies:()=>Io,components:()=>Go,credits:()=>Fo,crm:()=>as,dataexports:()=>ss,entitlements:()=>Ko,events:()=>No,features:()=>Xo,plangroups:()=>ds,plans:()=>Lo,webhooks:()=>Ho});var Mo={};re(Mo,{CreateEnvironmentRequestBodyEnvironmentType:()=>yi,UpdateEnvironmentRequestBodyEnvironmentType:()=>zi});var yi={Development:"development",Staging:"staging",Production:"production"};var zi={Development:"development",Staging:"staging",Production:"production"};var Ao={};re(Ao,{CountBillingProductsRequestPriceUsageType:()=>vi,CountBillingProductsResponseParamsPriceUsageType:()=>Oi,CreateBillingPriceRequestBodyBillingScheme:()=>Si,CreateBillingPriceRequestBodyTiersMode:()=>xi,CreateBillingPriceRequestBodyUsageType:()=>Ei,CreateBillingSubscriptionRequestBodyTrialEndSetting:()=>Bi,ListBillingProductsRequestPriceUsageType:()=>Ci,ListBillingProductsResponseParamsPriceUsageType:()=>Ti,ListProductPricesRequestPriceUsageType:()=>Ui,ListProductPricesResponseParamsPriceUsageType:()=>Pi,SearchBillingPricesRequestTiersMode:()=>Ri,SearchBillingPricesRequestUsageType:()=>bi,SearchBillingPricesResponseParamsTiersMode:()=>fi,SearchBillingPricesResponseParamsUsageType:()=>_i});var Ri={Volume:"volume",Graduated:"graduated"};var bi={Licensed:"licensed",Metered:"metered"};var fi={Volume:"volume",Graduated:"graduated"};var _i={Licensed:"licensed",Metered:"metered"};var Si={PerUnit:"per_unit",Tiered:"tiered"};var xi={Volume:"volume",Graduated:"graduated"};var Ei={Licensed:"licensed",Metered:"metered"};var Ui={Licensed:"licensed",Metered:"metered"};var Pi={Licensed:"licensed",Metered:"metered"};var Ci={Licensed:"licensed",Metered:"metered"};var Ti={Licensed:"licensed",Metered:"metered"};var vi={Licensed:"licensed",Metered:"metered"};var Oi={Licensed:"licensed",Metered:"metered"};var Bi={Subscribe:"subscribe",Cancel:"cancel"};var Fo={};re(Fo,{CountCreditBundlesRequestStatus:()=>Ni,CountCreditBundlesResponseParamsStatus:()=>Xi,CountCreditLedgerRequestPeriod:()=>oa,CountCreditLedgerResponseParamsPeriod:()=>ta,CreateBillingCreditRequestBodyBurnStrategy:()=>ji,CreateBillingCreditRequestBodyDefaultRolloverPolicy:()=>ki,CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryType:()=>ia,CreateBillingPlanCreditGrantRequestBodyAutoTopupExpiryUnit:()=>aa,CreateBillingPlanCreditGrantRequestBodyExpiryType:()=>sa,CreateBillingPlanCreditGrantRequestBodyExpiryUnit:()=>na,CreateBillingPlanCreditGrantRequestBodyResetCadence:()=>ca,CreateBillingPlanCreditGrantRequestBodyResetStart:()=>pa,CreateBillingPlanCreditGrantRequestBodyResetType:()=>la,CreateCompanyCreditGrantExpiryType:()=>Wi,CreateCompanyCreditGrantExpiryUnit:()=>Ji,CreateCreditBundleRequestBodyExpiryType:()=>Ai,CreateCreditBundleRequestBodyExpiryUnit:()=>Fi,CreateCreditBundleRequestBodyStatus:()=>Ii,GetEnrichedCreditLedgerRequestPeriod:()=>ea,GetEnrichedCreditLedgerResponseParamsPeriod:()=>ra,ListCompanyGrantsRequestDir:()=>Zi,ListCompanyGrantsRequestOrder:()=>$i,ListCompanyGrantsResponseParamsDir:()=>Yi,ListCompanyGrantsResponseParamsOrder:()=>Qi,ListCreditBundlesRequestStatus:()=>qi,ListCreditBundlesResponseParamsStatus:()=>Mi,UpdateBillingCreditRequestBodyBurnStrategy:()=>Di,UpdateBillingCreditRequestBodyDefaultRolloverPolicy:()=>Vi,UpdateBillingPlanCreditGrantRequestBodyExpiryType:()=>ma,UpdateBillingPlanCreditGrantRequestBodyExpiryUnit:()=>ua,UpdateBillingPlanCreditGrantRequestBodyResetCadence:()=>da,UpdateBillingPlanCreditGrantRequestBodyResetStart:()=>ha,UpdateBillingPlanCreditGrantRequestBodyResetType:()=>ga,UpdateCreditBundleDetailsRequestBodyExpiryType:()=>Ki,UpdateCreditBundleDetailsRequestBodyExpiryUnit:()=>Li,UpdateCreditBundleDetailsRequestBodyStatus:()=>Gi,ZeroOutGrantRequestBodyReason:()=>Hi});var ji={PlanFirstThenCreditBundlesFirstInFirstOut:"plan_first_then_credit_bundles_first_in_first_out",FirstInFirstOut:"first_in_first_out",LastInFirstOut:"last_in_first_out",ExpirationPriority:"expiration_priority"};var ki={None:"none",Rollover:"rollover",Expire:"expire"};var Di={PlanFirstThenCreditBundlesFirstInFirstOut:"plan_first_then_credit_bundles_first_in_first_out",FirstInFirstOut:"first_in_first_out",LastInFirstOut:"last_in_first_out",ExpirationPriority:"expiration_priority"};var Vi={None:"none",Rollover:"rollover",Expire:"expire"};var qi={Active:"active",Inactive:"inactive"};var Mi={Active:"active",Inactive:"inactive"};var Ai={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var Fi={Days:"days",BillingPeriods:"billing_periods"};var Ii={Active:"active",Inactive:"inactive"};var Ki={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var Li={Days:"days",BillingPeriods:"billing_periods"};var Gi={Active:"active",Inactive:"inactive"};var Ni={Active:"active",Inactive:"inactive"};var Xi={Active:"active",Inactive:"inactive"};var Hi={PlanChange:"plan_change",Manual:"manual",PlanPeriodReset:"plan_period_reset",Expired:"expired"};var Wi={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var Ji={Days:"days",BillingPeriods:"billing_periods"};var $i={CreatedAt:"created_at",ExpiresAt:"expires_at",Quantity:"quantity",QuantityRemaining:"quantity_remaining"};var Zi={Asc:"asc",Desc:"desc"};var Yi={Asc:"asc",Desc:"desc"};var Qi={CreatedAt:"created_at",ExpiresAt:"expires_at",Quantity:"quantity",QuantityRemaining:"quantity_remaining"};var ea={Daily:"daily",Weekly:"weekly",Monthly:"monthly",Raw:"raw"};var ra={Daily:"daily",Weekly:"weekly",Monthly:"monthly",Raw:"raw"};var oa={Daily:"daily",Weekly:"weekly",Monthly:"monthly",Raw:"raw"};var ta={Daily:"daily",Weekly:"weekly",Monthly:"monthly",Raw:"raw"};var ia={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var aa={Days:"days",BillingPeriods:"billing_periods"};var sa={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var na={Days:"days",BillingPeriods:"billing_periods"};var ca={Monthly:"monthly",Yearly:"yearly",Daily:"daily",Weekly:"weekly"};var pa={BillingPeriod:"billing_period",FirstOfMonth:"first_of_month"};var la={PlanPeriod:"plan_period",NoReset:"no_reset"};var ma={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var ua={Days:"days",BillingPeriods:"billing_periods"};var da={Monthly:"monthly",Yearly:"yearly",Daily:"daily",Weekly:"weekly"};var ha={BillingPeriod:"billing_period",FirstOfMonth:"first_of_month"};var ga={PlanPeriod:"plan_period",NoReset:"no_reset"};var wa={};var Io={};re(Io,{CountCompaniesForAdvancedFilterRequestSortOrderDirection:()=>ya,CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection:()=>za,CountEntityKeyDefinitionsRequestEntityType:()=>Sa,CountEntityKeyDefinitionsResponseParamsEntityType:()=>xa,CountEntityTraitDefinitionsRequestEntityType:()=>Ba,CountEntityTraitDefinitionsRequestTraitType:()=>ja,CountEntityTraitDefinitionsResponseParamsEntityType:()=>ka,CountEntityTraitDefinitionsResponseParamsTraitType:()=>Da,CreateEntityTraitDefinitionRequestBodyEntityType:()=>Ta,CreateEntityTraitDefinitionRequestBodyTraitType:()=>va,ListCompaniesForAdvancedFilterRequestSortOrderDirection:()=>Ra,ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection:()=>ba,ListEntityKeyDefinitionsRequestEntityType:()=>fa,ListEntityKeyDefinitionsResponseParamsEntityType:()=>_a,ListEntityTraitDefinitionsRequestEntityType:()=>Ea,ListEntityTraitDefinitionsRequestTraitType:()=>Ua,ListEntityTraitDefinitionsResponseParamsEntityType:()=>Pa,ListEntityTraitDefinitionsResponseParamsTraitType:()=>Ca,UpdateEntityTraitDefinitionRequestBodyTraitType:()=>Oa});var ya={Asc:"asc",Desc:"desc"};var za={Asc:"asc",Desc:"desc"};var Ra={Asc:"asc",Desc:"desc"};var ba={Asc:"asc",Desc:"desc"};var fa={Company:"company",User:"user"};var _a={Company:"company",User:"user"};var Sa={Company:"company",User:"user"};var xa={Company:"company",User:"user"};var Ea={Company:"company",User:"user"};var Ua={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var Pa={Company:"company",User:"user"};var Ca={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var Ta={Company:"company",User:"user"};var va={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var Oa={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var Ba={Company:"company",User:"user"};var ja={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var ka={Company:"company",User:"user"};var Da={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var Ko={};re(Ko,{CreateCompanyOverrideRequestBodyMetricPeriod:()=>Va,CreateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>qa,CreateCompanyOverrideRequestBodyValueType:()=>Ma,CreatePlanEntitlementRequestBodyMetricPeriod:()=>Ka,CreatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>La,CreatePlanEntitlementRequestBodyPriceBehavior:()=>Ga,CreatePlanEntitlementRequestBodyValueType:()=>Na,UpdateCompanyOverrideRequestBodyMetricPeriod:()=>Aa,UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>Fa,UpdateCompanyOverrideRequestBodyValueType:()=>Ia,UpdatePlanEntitlementRequestBodyMetricPeriod:()=>Xa,UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>Ha,UpdatePlanEntitlementRequestBodyPriceBehavior:()=>Wa,UpdatePlanEntitlementRequestBodyValueType:()=>Ja});var Va={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var qa={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Ma={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var Aa={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Fa={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Ia={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var Ka={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var La={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Ga={PayAsYouGo:"pay_as_you_go",PayInAdvance:"pay_in_advance",Overage:"overage",CreditBurndown:"credit_burndown",Tier:"tier"};var Na={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var Xa={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Ha={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Wa={PayAsYouGo:"pay_as_you_go",PayInAdvance:"pay_in_advance",Overage:"overage",CreditBurndown:"credit_burndown",Tier:"tier"};var Ja={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var Lo={};re(Lo,{CountPlansRequestPlanType:()=>es,CountPlansResponseParamsPlanType:()=>rs,CreatePlanRequestBodyPlanType:()=>Ya,ListPlansRequestPlanType:()=>$a,ListPlansResponseParamsPlanType:()=>Za,UpsertBillingProductRequestBodyChargeType:()=>Qa});var $a={Plan:"plan",AddOn:"add_on"};var Za={Plan:"plan",AddOn:"add_on"};var Ya={Plan:"plan",AddOn:"add_on"};var Qa={OneTime:"one_time",Recurring:"recurring",Free:"free"};var es={Plan:"plan",AddOn:"add_on"};var rs={Plan:"plan",AddOn:"add_on"};var Go={};re(Go,{CreateComponentRequestBodyEntityType:()=>os,UpdateComponentRequestBodyEntityType:()=>ts,UpdateComponentRequestBodyState:()=>is});var os={Entitlement:"entitlement",Billing:"billing"};var ts={Entitlement:"entitlement",Billing:"billing"};var is={Draft:"draft",Live:"live"};var as={};var ss={};var No={};re(No,{ListEventsRequestEventTypesItem:()=>ns,ListEventsResponseParamsEventTypesItem:()=>cs});var ns={Identify:"identify",Track:"track",FlagCheck:"flag_check"};var cs={Identify:"identify",Track:"track",FlagCheck:"flag_check"};var Xo={};re(Xo,{CreateFeatureRequestBodyFeatureType:()=>ps,CreateFeatureRequestBodyLifecyclePhase:()=>ls,UpdateFeatureRequestBodyFeatureType:()=>ms,UpdateFeatureRequestBodyLifecyclePhase:()=>us});var ps={Boolean:"boolean",Event:"event",Trait:"trait"};var ls={AddOn:"add_on",Alpha:"alpha",Beta:"beta",Deprecated:"deprecated",Ga:"ga",InPlan:"in_plan",Inactive:"inactive",InternalTesting:"internal_testing",Legacy:"legacy"};var ms={Boolean:"boolean",Event:"event",Trait:"trait"};var us={AddOn:"add_on",Alpha:"alpha",Beta:"beta",Deprecated:"deprecated",Ga:"ga",InPlan:"in_plan",Inactive:"inactive",InternalTesting:"internal_testing",Legacy:"legacy"};var ds={};var hs={};var Ho={};re(Ho,{CreateWebhookRequestBodyRequestTypesItem:()=>gs,UpdateWebhookRequestBodyRequestTypesItem:()=>ws,UpdateWebhookRequestBodyStatus:()=>ys});var gs={CompanyUpdated:"company.updated",UserUpdated:"user.updated",PlanUpdated:"plan.updated",PlanEntitlementUpdated:"plan.entitlement.updated",CompanyOverrideUpdated:"company.override.updated",FeatureUpdated:"feature.updated",FlagUpdated:"flag.updated",FlagRulesUpdated:"flag_rules.updated",CompanyCreated:"company.created",UserCreated:"user.created",PlanCreated:"plan.created",PlanEntitlementCreated:"plan.entitlement.created",CompanyOverrideCreated:"company.override.created",FeatureCreated:"feature.created",FlagCreated:"flag.created",CompanyDeleted:"company.deleted",UserDeleted:"user.deleted",PlanDeleted:"plan.deleted",PlanEntitlementDeleted:"plan.entitlement.deleted",CompanyOverrideDeleted:"company.override.deleted",FeatureDeleted:"feature.deleted",FlagDeleted:"flag.deleted",TestSend:"test.send",SubscriptionTrialEnded:"subscription.trial.ended",EntitlementLimitWarning:"entitlement.limit.warning",EntitlementLimitReached:"entitlement.limit.reached",EntitlementSoftLimitWarning:"entitlement.soft_limit.warning",EntitlementSoftLimitReached:"entitlement.soft_limit.reached",EntitlementTierLimitWarning:"entitlement.tier_limit.warning",EntitlementTierLimitReached:"entitlement.tier_limit.reached",CreditLimitWarning:"credit.limit.warning",CreditLimitReached:"credit.limit.reached",CompanyPlanChange:"company.plan_change"};var ws={CompanyUpdated:"company.updated",UserUpdated:"user.updated",PlanUpdated:"plan.updated",PlanEntitlementUpdated:"plan.entitlement.updated",CompanyOverrideUpdated:"company.override.updated",FeatureUpdated:"feature.updated",FlagUpdated:"flag.updated",FlagRulesUpdated:"flag_rules.updated",CompanyCreated:"company.created",UserCreated:"user.created",PlanCreated:"plan.created",PlanEntitlementCreated:"plan.entitlement.created",CompanyOverrideCreated:"company.override.created",FeatureCreated:"feature.created",FlagCreated:"flag.created",CompanyDeleted:"company.deleted",UserDeleted:"user.deleted",PlanDeleted:"plan.deleted",PlanEntitlementDeleted:"plan.entitlement.deleted",CompanyOverrideDeleted:"company.override.deleted",FeatureDeleted:"feature.deleted",FlagDeleted:"flag.deleted",TestSend:"test.send",SubscriptionTrialEnded:"subscription.trial.ended",EntitlementLimitWarning:"entitlement.limit.warning",EntitlementLimitReached:"entitlement.limit.reached",EntitlementSoftLimitWarning:"entitlement.soft_limit.warning",EntitlementSoftLimitReached:"entitlement.soft_limit.reached",EntitlementTierLimitWarning:"entitlement.tier_limit.warning",EntitlementTierLimitReached:"entitlement.tier_limit.reached",CreditLimitWarning:"credit.limit.warning",CreditLimitReached:"credit.limit.reached",CompanyPlanChange:"company.plan_change"};var ys={Active:"active",Inactive:"inactive"};var Ag={Licensed:"licensed",Metered:"metered"};var Fg={BasePlan:"base_plan",BillingProduct:"billing_product",Company:"company",Credit:"credit",CrmProduct:"crm_product",Metric:"metric",Plan:"plan",Trait:"trait",User:"user"};var Ig={AllTime:"all_time",CurrentDay:"current_day",CurrentMonth:"current_month",CurrentWeek:"current_week"};var Kg={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Lg={Eq:"eq",Ne:"ne",Gt:"gt",Lt:"lt",Gte:"gte",Lte:"lte",IsEmpty:"is_empty",NotEmpty:"not_empty"};var Gg={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Ng={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Xg={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var Hg={Identify:"identify",Track:"track",FlagCheck:"flag_check"};var Wg={Company:"company",Metric:"metric",Trait:"trait",User:"user",Plan:"plan",BillingProduct:"billing_product",CrmProduct:"crm_product",BasePlan:"base_plan"};var Jg={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var $g={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Zg={Eq:"eq",Ne:"ne",Gt:"gt",Gte:"gte",Lt:"lt",Lte:"lte",IsEmpty:"is_empty",NotEmpty:"not_empty"};var Yg={GlobalOverride:"global_override",CompanyOverride:"company_override",PlanEntitlement:"plan_entitlement",Standard:"standard",Default:"default"};var Qg={Free:"free",Plan:"plan",Purchased:"purchased"};var ew={Duration:"duration",NoExpiry:"no_expiry",EndOfTrial:"end_of_trial",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period"};var rw={Days:"days",BillingPeriods:"billing_periods"};var ow={Monthly:"monthly",Yearly:"yearly",Daily:"daily",Weekly:"weekly"};var tw={BillingPeriod:"billing_period",FirstOfMonth:"first_of_month"};var iw={PlanPeriod:"plan_period",NoReset:"no_reset"};var aw={Boolean:"boolean",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var sw={Free:"free",Plan:"plan",Purchased:"purchased"};var nw={Boolean:"boolean",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited",Unknown:"unknown"};var cw={Boolean:"boolean",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var pw={Free:"free",Plan:"plan",Purchased:"purchased"};var lw={Checkout:"checkout",CompanyUpsert:"company_upsert",FallbackPlan:"fallback_plan",ManagePlan:"manage_plan",Migration:"migration",PlanBillingProductChanged:"plan_billing_product_changed",PlanDeleted:"plan_deleted",Quickstart:"quickstart",SubscriptionChange:"subscription_change"};var mw={AppUser:"app_user",ApiKey:"api_key",System:"system",TemporaryAccessToken:"temporary_access_token"};var uw={Fallback:"fallback",Initial:"initial",Trait:"trait",TrialExpiry:"trial_expiry"};var dw={Downgrade:"downgrade",Invalid:"invalid",Subscribe:"subscribe",Unsubscribe:"unsubscribe",Upgrade:"upgrade",UpgradeTrial:"upgrade_trial"};var hw={Default:"default",GlobalOverride:"global_override",CompanyOverride:"company_override",CompanyOverrideUsageExceeded:"company_override_usage_exceeded",PlanEntitlement:"plan_entitlement",PlanEntitlementUsageExceeded:"plan_entitlement_usage_exceeded",Standard:"standard"};var gw={Bool:"bool",Date:"date",Int:"int",String:"string"};var ww={User:"user",Company:"company"};var yw={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var zw={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Rw={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unlimited:"unlimited"};var bw={PayAsYouGo:"pay_as_you_go",PayInAdvance:"pay_in_advance",Overage:"overage",CreditBurndown:"credit_burndown",Tier:"tier"};var pe=(w,t,o)=>JSON.stringify(w,t,o);var c=class w extends Error{constructor({message:t,statusCode:o,body:r,rawResponse:i}){super(fw({message:t,statusCode:o,body:r})),Object.setPrototypeOf(this,w.prototype),this.statusCode=o,this.body=r,this.rawResponse=i}};function fw({message:w,statusCode:t,body:o}){let r=[];return w!=null&&r.push(w),t!=null&&r.push(`Status code: ${t.toString()}`),o!=null&&r.push(`Body: ${pe(o,void 0,2)}`),r.join(`
2
- `)}var R=class w extends Error{constructor(t){super(t),Object.setPrototypeOf(this,w.prototype)}};var P=class w extends c{constructor(t,o){super({message:"BadRequestError",statusCode:400,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var S=class w extends c{constructor(t,o){super({message:"UnauthorizedError",statusCode:401,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var x=class w extends c{constructor(t,o){super({message:"ForbiddenError",statusCode:403,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var E=class w extends c{constructor(t,o){super({message:"NotFoundError",statusCode:404,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var U=class w extends c{constructor(t,o){super({message:"InternalServerError",statusCode:500,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var yr=require("timers"),He=class{constructor({maxItems:t=1e3,ttl:o=5e3}={}){this.accessCounter=0;this.cache=new Map,this.maxItems=t,this.defaultTTL=o}async get(t){let o=this.cache.get(t);if(o){if(o.expiration<=Date.now()){this.evictItem(t,o);return}return this.accessCounter++,o.accessCounter=this.accessCounter,this.cache.set(t,o),o.value}}async set(t,o,r){if(this.maxItems===0)return;let i=r??this.defaultTTL,m=this.cache.get(t);m&&this.evictItem(t,m),this.evictExpiredItems(),this.evictLRUItems(),this.accessCounter++;let g={value:o,accessCounter:this.accessCounter,expiration:Date.now()+i,timeoutId:(0,yr.setTimeout)(()=>this.evictItem(t,g),i)};this.cache.set(t,g)}resetCache(){this.cache.forEach(t=>{t.timeoutId&&(0,yr.clearTimeout)(t.timeoutId)}),this.cache.clear(),this.accessCounter=0}evictItem(t,o){o.timeoutId&&(0,yr.clearTimeout)(o.timeoutId),this.cache.delete(t)}evictExpiredItems(){this.cache.forEach((t,o)=>{t.expiration<=Date.now()&&this.evictItem(o,t)})}evictLRUItems(){for(;this.cache.size>=this.maxItems;){let t,o=Number.MAX_SAFE_INTEGER;this.cache.forEach((r,i)=>{r.accessCounter<o&&(t=i,o=r.accessCounter)}),t&&this.evictItem(t,this.cache.get(t))}}};var f={Default:"https://api.schematichq.com"};var Ae;typeof globalThis.Headers<"u"?Ae=globalThis.Headers:Ae=class zs{constructor(t){if(this.headers=new Map,t)if(t instanceof zs)t.forEach((o,r)=>this.append(r,o));else if(Array.isArray(t))for(let[o,r]of t)if(typeof o=="string"&&typeof r=="string")this.append(o,r);else throw new TypeError("Each header entry must be a [string, string] tuple");else for(let[o,r]of Object.entries(t))if(typeof r=="string")this.append(o,r);else throw new TypeError("Header values must be strings")}append(t,o){let r=t.toLowerCase(),i=this.headers.get(r)||[];this.headers.set(r,[...i,o])}delete(t){let o=t.toLowerCase();this.headers.delete(o)}get(t){let o=t.toLowerCase(),r=this.headers.get(o);return r?r.join(", "):null}has(t){let o=t.toLowerCase();return this.headers.has(o)}set(t,o){let r=t.toLowerCase();this.headers.set(r,[o])}forEach(t,o){let r=o?t.bind(o):t;this.headers.forEach((i,m)=>r(i.join(", "),m,this))}getSetCookie(){return this.headers.get("set-cookie")||[]}*entries(){for(let[t,o]of this.headers.entries())yield[t,o.join(", ")]}*keys(){yield*this.headers.keys()}*values(){for(let t of this.headers.values())yield t.join(", ")}[Symbol.iterator](){return this.entries()}};var Fe={headers:new Ae,redirected:!1,status:499,statusText:"Client Closed Request",type:"error",url:""},Ie={headers:new Ae,redirected:!1,status:0,statusText:"Unknown Error",type:"error",url:""};function We(w){return{headers:w.headers,redirected:w.redirected,status:w.status,statusText:w.statusText,type:w.type,url:w.url}}var Rs=H(require("qs"));function xr(w,t){return Object.keys(t??{}).length>0?`${w}?${Rs.default.stringify(t,{arrayFormat:"repeat"})}`:w}var h=_w();function _w(){return typeof window<"u"&&typeof window.document<"u"?{type:"browser",version:window.navigator.userAgent}:typeof globalThis<"u"&&globalThis?.navigator?.userAgent==="Cloudflare-Workers"?{type:"workerd"}:typeof EdgeRuntime=="string"?{type:"edge-runtime"}:typeof self=="object"&&typeof self?.importScripts=="function"&&(self.constructor?.name==="DedicatedWorkerGlobalScope"||self.constructor?.name==="ServiceWorkerGlobalScope"||self.constructor?.name==="SharedWorkerGlobalScope")?{type:"web-worker"}:typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u"?{type:"deno",version:Deno.version.deno}:typeof Bun<"u"&&typeof Bun.version<"u"?{type:"bun",version:Bun.version}:typeof process<"u"&&"version"in process&&!!process.version&&"versions"in process&&!!process.versions?.node?{type:"node",version:process.versions.node,parsedVersion:Number(process.versions.node.split(".")[0])}:typeof navigator<"u"&&navigator?.product==="ReactNative"?{type:"react-native"}:{type:"unknown"}}async function Er(){return h.type==="node"&&h.parsedVersion!=null&&h.parsedVersion>=18?fetch:h.type==="node"?(await import("node-fetch")).default:typeof fetch=="function"?fetch:(await import("node-fetch")).default}async function Ur({body:w,type:t}){return t.includes("json")?pe(w):w}async function Us(w){return h.type==="node"&&h.parsedVersion!=null&&h.parsedVersion>=18?new(await Promise.resolve().then(()=>(fs(),bs))).Node18UniversalStreamWrapper(w):h.type!=="node"&&typeof fetch=="function"?new(await Promise.resolve().then(()=>(Ss(),_s))).UndiciStreamWrapper(w):new(await Promise.resolve().then(()=>(Es(),xs))).NodePre18StreamWrapper(w)}async function Pr(w,t){if(w.body!=null&&t==="blob")return await w.blob();if(w.body!=null&&t==="arrayBuffer")return await w.arrayBuffer();if(w.body!=null&&t==="sse")return w.body;if(w.body!=null&&t==="streaming")return Us(w.body);if(w.body!=null&&t==="text")return await w.text();{let o=await w.text();if(o.length>0)try{return JSON.parse(o)}catch{return{ok:!1,error:{reason:"non-json",statusCode:w.status,rawBody:o}}}else return}}var Sw="timeout";function Ps(w){let t=new AbortController,o=setTimeout(()=>t.abort(Sw),w);return{signal:t.signal,abortId:o}}function Cs(...w){let t=w.length===1&&Array.isArray(w[0])?w[0]:w,o=new AbortController;for(let r of t){if(r.aborted){o.abort(r?.reason);break}r.addEventListener("abort",()=>o.abort(r?.reason),{signal:o.signal})}return o.signal}var Cr=async(w,t,o,r,i,m,g,p,s)=>{let l=[],u;if(m!=null){let{signal:C,abortId:O}=Ps(m);u=O,l.push(C)}g!=null&&l.push(g);let z=Cs(l),y=await w(t,{method:o,headers:r,body:i,signal:z,credentials:p?"include":void 0,duplex:s});return u!=null&&clearTimeout(u),y};function xw(w){let t=1+(Math.random()*2-1)*.2;return w*t}async function Tr(w,t=2){let o=await w();for(let r=0;r<t&&([408,429].includes(o.status)||o.status>=500);++r){let i=Math.min(1e3*Math.pow(2,r),6e4),m=xw(i);await new Promise(g=>setTimeout(g,m)),o=await w()}return o}async function Ew(w){let t={};if(w.body!==void 0&&w.contentType!=null&&(t["Content-Type"]=w.contentType),w.headers!=null)for(let[m,g]of Object.entries(w.headers))g!=null&&(t[m]=g);let o=xr(w.url,w.queryParameters),r=await Ur({body:w.body,type:w.requestType==="json"?"json":"other"}),i=await Er();try{let m=await Tr(async()=>Cr(i,o,w.method,t,r,w.timeoutMs,w.abortSignal,w.withCredentials,w.duplex),w.maxRetries),g=await Pr(m,w.responseType);return m.status>=200&&m.status<400?{ok:!0,body:g,headers:m.headers,rawResponse:We(m)}:{ok:!1,error:{reason:"status-code",statusCode:m.status,body:g},rawResponse:We(m)}}catch(m){return w.abortSignal!=null&&w.abortSignal.aborted?{ok:!1,error:{reason:"unknown",errorMessage:"The user aborted a request"},rawResponse:Fe}:m instanceof Error&&m.name==="AbortError"?{ok:!1,error:{reason:"timeout"},rawResponse:Fe}:m instanceof Error?{ok:!1,error:{reason:"unknown",errorMessage:m.message},rawResponse:Ie}:{ok:!1,error:{reason:"unknown",errorMessage:pe(m)},rawResponse:Ie}}}var _=Ew;var d={get:async w=>typeof w=="function"?w():w};var b=class w extends Promise{constructor(t){super(o=>{o(void 0)}),this.innerPromise=t}static fromFunction(t,...o){return new w(t(...o))}static interceptFunction(t){return(...o)=>w.fromPromise(t(...o))}static fromPromise(t){return new w(t)}static fromExecutor(t){let o=new Promise(t);return new w(o)}static fromResult(t){let o=Promise.resolve(t);return new w(o)}unwrap(){return this.unwrappedPromise||(this.unwrappedPromise=this.innerPromise.then(({data:t})=>t)),this.unwrappedPromise}then(t,o){return this.unwrap().then(t,o)}catch(t){return this.unwrap().catch(t)}finally(t){return this.unwrap().finally(t)}async withRawResponse(){return await this.innerPromise}};var e={};re(e,{JsonError:()=>Je,ParseError:()=>$e,any:()=>Ls,bigint:()=>vs,boolean:()=>Gs,booleanLiteral:()=>Ks,date:()=>Os,discriminant:()=>Qs,enum_:()=>Or,getObjectLikeUtils:()=>ye,getObjectUtils:()=>Ke,getSchemaUtils:()=>F,isProperty:()=>Ce,lazy:()=>Bs,lazyObject:()=>As,list:()=>jr,number:()=>Ns,object:()=>Br,objectWithoutOptionalProperties:()=>Ms,optional:()=>Zo,property:()=>ks,record:()=>Js,set:()=>$s,string:()=>Xs,stringLiteral:()=>Is,transform:()=>Yo,undiscriminatedUnion:()=>Ys,union:()=>rn,unknown:()=>Hs,withParsedProperties:()=>et});var k={BIGINT:"bigint",DATE:"date",ENUM:"enum",LIST:"list",STRING_LITERAL:"stringLiteral",BOOLEAN_LITERAL:"booleanLiteral",OBJECT:"object",ANY:"any",BOOLEAN:"boolean",NUMBER:"number",STRING:"string",UNKNOWN:"unknown",RECORD:"record",SET:"set",UNION:"union",UNDISCRIMINATED_UNION:"undiscriminatedUnion",NULLABLE:"nullable",OPTIONAL:"optional",OPTIONAL_NULLABLE:"optionalNullable"};function A(w,t){return`Expected ${t}. Received ${Uw(w)}.`}function Uw(w){if(Array.isArray(w))return"list";if(w===null)return"null";if(w instanceof BigInt)return"BigInt";switch(typeof w){case"string":return`"${w}"`;case"bigint":case"number":case"boolean":case"undefined":return`${w}`}return typeof w}function Y(w){return{...w,json:Ts(w.json),parse:Ts(w.parse)}}function Ts(w){return(t,o)=>{let r=w(t,o),{skipValidation:i=!1}=o??{};return!r.ok&&i?(console.warn(["Failed to validate.",...r.errors.map(m=>" - "+(m.path.length>0?`${m.path.join(".")}: ${m.message}`:m.message))].join(`
3
- `)),{ok:!0,value:t}):r}}function vr(w){return w.path.length===0?w.message:`${w.path.join(" -> ")}: ${w.message}`}var Je=class w extends Error{constructor(o){super(o.map(vr).join("; "));this.errors=o;Object.setPrototypeOf(this,w.prototype)}};var $e=class w extends Error{constructor(o){super(o.map(vr).join("; "));this.errors=o;Object.setPrototypeOf(this,w.prototype)}};function F(w){return{nullable:()=>Pw(w),optional:()=>Zo(w),optionalNullable:()=>Cw(w),transform:t=>Yo(w,t),parseOrThrow:(t,o)=>{let r=w.parse(t,o);if(r.ok)return r.value;throw new $e(r.errors)},jsonOrThrow:(t,o)=>{let r=w.json(t,o);if(r.ok)return r.value;throw new Je(r.errors)}}}function Pw(w){let t={parse:(o,r)=>o==null?{ok:!0,value:null}:w.parse(o,r),json:(o,r)=>o==null?{ok:!0,value:null}:w.json(o,r),getType:()=>k.NULLABLE};return{...t,...F(t)}}function Zo(w){let t={parse:(o,r)=>o==null?{ok:!0,value:void 0}:w.parse(o,r),json:(o,r)=>r?.omitUndefined&&o===void 0?{ok:!0,value:void 0}:o==null?{ok:!0,value:null}:w.json(o,r),getType:()=>k.OPTIONAL};return{...t,...F(t)}}function Cw(w){let t={parse:(o,r)=>o===void 0?{ok:!0,value:void 0}:o===null?{ok:!0,value:null}:w.parse(o,r),json:(o,r)=>o===void 0?{ok:!0,value:void 0}:o===null?{ok:!0,value:null}:w.json(o,r),getType:()=>k.OPTIONAL_NULLABLE};return{...t,...F(t)}}function Yo(w,t){let o={parse:(r,i)=>{let m=w.parse(r,i);return m.ok?{ok:!0,value:t.transform(m.value)}:m},json:(r,i)=>{let m=t.untransform(r);return w.json(m,i)},getType:()=>w.getType()};return{...o,...F(o)}}function vs(){let w={parse:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t=="bigint"?{ok:!0,value:t}:typeof t=="number"?{ok:!0,value:BigInt(t)}:{ok:!1,errors:[{path:o,message:A(t,"bigint | number")}]},json:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t!="bigint"?{ok:!1,errors:[{path:o,message:A(t,"bigint")}]}:{ok:!0,value:t},getType:()=>k.BIGINT};return{...Y(w),...F(w)}}var Tw=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;function Os(){let w={parse:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:o,message:A(t,"string")}]}:Tw.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:o,message:A(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:o=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:o,message:A(t,"Date object")}]},getType:()=>k.DATE};return{...Y(w),...F(w)}}function te(w,t){return()=>{let o={parse:t,json:t,getType:()=>w};return{...Y(o),...F(o)}}}function Or(w){let t=new Set(w);return te(k.ENUM,(r,{allowUnrecognizedEnumValues:i,breadcrumbsPrefix:m=[]}={})=>typeof r!="string"?{ok:!1,errors:[{path:m,message:A(r,"string")}]}:!t.has(r)&&!i?{ok:!1,errors:[{path:m,message:A(r,"enum")}]}:{ok:!0,value:r})()}function Bs(w){let t=Qo(w);return{...t,...F(t)}}function Qo(w){return{parse:(t,o)=>Ze(w).parse(t,o),json:(t,o)=>Ze(w).json(t,o),getType:()=>Ze(w).getType()}}function Ze(w){let t=w;return t.__zurg_memoized==null&&(t.__zurg_memoized=w()),t.__zurg_memoized}function zr(w){return Object.entries(w)}function Rr(w,t){let o=new Set(t);return Object.entries(w).reduce((r,[i,m])=>(o.has(i)&&(r[i]=m),r),{})}function Pe(w){if(typeof w!="object"||w===null)return!1;if(Object.getPrototypeOf(w)===null)return!0;let t=w;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(w)===t}function br(w){return Object.keys(w)}function js(w,t){let o=[],r=[];for(let i of w)t(i)?o.push(i):r.push(i);return[o,r]}function ye(w){return{withParsedProperties:t=>et(w,t)}}function et(w,t){let o={parse:(r,i)=>{let m=w.parse(r,i);if(!m.ok)return m;let g=Object.entries(t).reduce((p,[s,l])=>({...p,[s]:typeof l=="function"?l(m.value):l}),{});return{ok:!0,value:{...m.value,...g}}},json:(r,i)=>{if(!Pe(r))return{ok:!1,errors:[{path:i?.breadcrumbsPrefix??[],message:A(r,"object")}]};let m=new Set(Object.keys(t)),g=Rr(r,Object.keys(r).filter(p=>!m.has(p)));return w.json(g,i)},getType:()=>w.getType()};return{...o,...F(o),...ye(o)}}function ks(w,t){return{rawKey:w,valueSchema:t,isProperty:!0}}function Ce(w){return w.isProperty}function Br(w){let t={_getRawProperties:()=>Object.entries(w).map(([o,r])=>Ce(r)?r.rawKey:o),_getParsedProperties:()=>br(w),parse:(o,r)=>{let i={},m=[];for(let[g,p]of zr(w)){let s=Ce(p)?p.rawKey:g,l=Ce(p)?p.valueSchema:p,u={rawKey:s,parsedKey:g,valueSchema:l};i[s]=u,qs(l)&&m.push(s)}return Ds({value:o,requiredKeys:m,getProperty:g=>{let p=i[g];if(p!=null)return{transformedKey:p.parsedKey,transform:s=>p.valueSchema.parse(s,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],g]})}},unrecognizedObjectKeys:r?.unrecognizedObjectKeys,skipValidation:r?.skipValidation,breadcrumbsPrefix:r?.breadcrumbsPrefix,omitUndefined:r?.omitUndefined})},json:(o,r)=>{let i=[];for(let[m,g]of zr(w)){let p=Ce(g)?g.valueSchema:g;qs(p)&&i.push(m)}return Ds({value:o,requiredKeys:i,getProperty:m=>{let g=w[m];if(g!=null)return Ce(g)?{transformedKey:g.rawKey,transform:p=>g.valueSchema.json(p,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],m]})}:{transformedKey:m,transform:p=>g.json(p,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],m]})}},unrecognizedObjectKeys:r?.unrecognizedObjectKeys,skipValidation:r?.skipValidation,breadcrumbsPrefix:r?.breadcrumbsPrefix,omitUndefined:r?.omitUndefined})},getType:()=>k.OBJECT};return{...Y(t),...F(t),...ye(t),...Ke(t)}}function Ds({value:w,requiredKeys:t,getProperty:o,unrecognizedObjectKeys:r="fail",skipValidation:i=!1,breadcrumbsPrefix:m=[]}){if(!Pe(w))return{ok:!1,errors:[{path:m,message:A(w,"object")}]};let g=new Set(t),p=[],s={};for(let[l,u]of Object.entries(w)){let z=o(l);if(z!=null){g.delete(l);let y=z.transform(u);y.ok?s[z.transformedKey]=y.value:(s[l]=u,p.push(...y.errors))}else switch(r){case"fail":p.push({path:[...m,l],message:`Unexpected key "${l}"`});break;case"strip":break;case"passthrough":s[l]=u;break}}return p.push(...t.filter(l=>g.has(l)).map(l=>({path:m,message:`Missing required key "${l}"`}))),p.length===0||i?{ok:!0,value:s}:{ok:!1,errors:p}}function Ke(w){return{extend:t=>{let o={_getParsedProperties:()=>[...w._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...w._getRawProperties(),...t._getRawProperties()],parse:(r,i)=>Vs({extensionKeys:t._getRawProperties(),value:r,transformBase:m=>w.parse(m,i),transformExtension:m=>t.parse(m,i)}),json:(r,i)=>Vs({extensionKeys:t._getParsedProperties(),value:r,transformBase:m=>w.json(m,i),transformExtension:m=>t.json(m,i)}),getType:()=>k.OBJECT};return{...o,...F(o),...ye(o),...Ke(o)}},passthrough:()=>{let t={_getParsedProperties:()=>w._getParsedProperties(),_getRawProperties:()=>w._getRawProperties(),parse:(o,r)=>{let i=w.parse(o,{...r,unrecognizedObjectKeys:"passthrough"});return i.ok?{ok:!0,value:{...o,...i.value}}:i},json:(o,r)=>{let i=w.json(o,{...r,unrecognizedObjectKeys:"passthrough"});return i.ok?{ok:!0,value:{...o,...i.value}}:i},getType:()=>k.OBJECT};return{...t,...F(t),...ye(t),...Ke(t)}}}}function Vs({extensionKeys:w,value:t,transformBase:o,transformExtension:r}){let i=new Set(w),[m,g]=js(br(t),l=>i.has(l)),p=o(Rr(t,g)),s=r(Rr(t,m));return p.ok&&s.ok?{ok:!0,value:{...p.value,...s.value}}:{ok:!1,errors:[...p.ok?[]:p.errors,...s.ok?[]:s.errors]}}function qs(w){return!vw(w)}function vw(w){switch(w.getType()){case k.ANY:case k.UNKNOWN:case k.OPTIONAL:case k.OPTIONAL_NULLABLE:return!0;default:return!1}}function Ms(w){return Br(w)}function As(w){let t={...Qo(w),_getRawProperties:()=>Ze(w)._getRawProperties(),_getParsedProperties:()=>Ze(w)._getParsedProperties()};return{...t,...F(t),...ye(t),...Ke(t)}}function jr(w){let t={parse:(o,r)=>Fs(o,(i,m)=>w.parse(i,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],`[${m}]`]})),json:(o,r)=>Fs(o,(i,m)=>w.json(i,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],`[${m}]`]})),getType:()=>k.LIST};return{...Y(t),...F(t)}}function Fs(w,t){return Array.isArray(w)?w.map((r,i)=>t(r,i)).reduce((r,i)=>{if(r.ok&&i.ok)return{ok:!0,value:[...r.value,i.value]};let m=[];return r.ok||m.push(...r.errors),i.ok||m.push(...i.errors),{ok:!1,errors:m}},{ok:!0,value:[]}):{ok:!1,errors:[{message:A(w,"list"),path:[]}]}}function Is(w){return te(k.STRING_LITERAL,(o,{breadcrumbsPrefix:r=[]}={})=>o===w?{ok:!0,value:w}:{ok:!1,errors:[{path:r,message:A(o,`"${w}"`)}]})()}function Ks(w){return te(k.BOOLEAN_LITERAL,(o,{breadcrumbsPrefix:r=[]}={})=>o===w?{ok:!0,value:w}:{ok:!1,errors:[{path:r,message:A(o,`${w.toString()}`)}]})()}var Ls=te(k.ANY,w=>({ok:!0,value:w}));var Gs=te(k.BOOLEAN,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="boolean"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:A(w,"boolean")}]});var Ns=te(k.NUMBER,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="number"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:A(w,"number")}]});var Xs=te(k.STRING,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="string"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:A(w,"string")}]});var Hs=te(k.UNKNOWN,w=>({ok:!0,value:w}));function Js(w,t){let o={parse:(r,i)=>Ws({value:r,isKeyNumeric:w.getType()===k.NUMBER,transformKey:m=>w.parse(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${m} (key)`]}),transformValue:(m,g)=>t.parse(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${g}`]}),breadcrumbsPrefix:i?.breadcrumbsPrefix}),json:(r,i)=>Ws({value:r,isKeyNumeric:w.getType()===k.NUMBER,transformKey:m=>w.json(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${m} (key)`]}),transformValue:(m,g)=>t.json(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${g}`]}),breadcrumbsPrefix:i?.breadcrumbsPrefix}),getType:()=>k.RECORD};return{...Y(o),...F(o)}}function Ws({value:w,isKeyNumeric:t,transformKey:o,transformValue:r,breadcrumbsPrefix:i=[]}){return Pe(w)?zr(w).reduce((m,[g,p])=>{if(p===void 0)return m;let s=m,l=g;if(t){let C=g.length>0?Number(g):NaN;isNaN(C)||(l=C)}let u=o(l),z=r(p,l);if(s.ok&&u.ok&&z.ok)return{ok:!0,value:{...s.value,[u.value]:z.value}};let y=[];return s.ok||y.push(...s.errors),u.ok||y.push(...u.errors),z.ok||y.push(...z.errors),{ok:!1,errors:y}},{ok:!0,value:{}}):{ok:!1,errors:[{path:i,message:A(w,"object")}]}}function $s(w){let t=jr(w),o={parse:(r,i)=>{let m=t.parse(r,i);return m.ok?{ok:!0,value:new Set(m.value)}:m},json:(r,i)=>r instanceof Set?t.json([...r],i):{ok:!1,errors:[{path:i?.breadcrumbsPrefix??[],message:A(r,"Set")}]},getType:()=>k.SET};return{...Y(o),...F(o)}}function Ys(w){let t={parse:(o,r)=>Zs((i,m)=>i.parse(o,m),w,r),json:(o,r)=>Zs((i,m)=>i.json(o,m),w,r),getType:()=>k.UNDISCRIMINATED_UNION};return{...Y(t),...F(t)}}function Zs(w,t,o){let r=[];for(let[i,m]of t.entries()){let g=w(m,{...o,skipValidation:!1});if(g.ok)return g;for(let p of g.errors)r.push({path:p.path,message:`[Variant ${i}] ${p.message}`})}return{ok:!1,errors:r}}function Qs(w,t){return{parsedDiscriminant:w,rawDiscriminant:t}}function rn(w,t){let o=typeof w=="string"?w:w.rawDiscriminant,r=typeof w=="string"?w:w.parsedDiscriminant,i=Or(br(t)),m={parse:(g,p)=>en({value:g,discriminant:o,transformedDiscriminant:r,transformDiscriminantValue:s=>i.parse(s,{allowUnrecognizedEnumValues:p?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...p?.breadcrumbsPrefix??[],o]}),getAdditionalPropertiesSchema:s=>t[s],allowUnrecognizedUnionMembers:p?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(s,l)=>l.parse(s,p),breadcrumbsPrefix:p?.breadcrumbsPrefix}),json:(g,p)=>en({value:g,discriminant:r,transformedDiscriminant:o,transformDiscriminantValue:s=>i.json(s,{allowUnrecognizedEnumValues:p?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...p?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:s=>t[s],allowUnrecognizedUnionMembers:p?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(s,l)=>l.json(s,p),breadcrumbsPrefix:p?.breadcrumbsPrefix}),getType:()=>k.UNION};return{...Y(m),...F(m),...ye(m)}}function en({value:w,discriminant:t,transformedDiscriminant:o,transformDiscriminantValue:r,getAdditionalPropertiesSchema:i,allowUnrecognizedUnionMembers:m=!1,transformAdditionalProperties:g,breadcrumbsPrefix:p=[]}){if(!Pe(w))return{ok:!1,errors:[{path:p,message:A(w,"object")}]};let{[t]:s,...l}=w;if(s==null)return{ok:!1,errors:[{path:p,message:`Missing discriminant ("${t}")`}]};let u=r(s);if(!u.ok)return{ok:!1,errors:u.errors};let z=i(u.value);if(z==null)return m?{ok:!0,value:{[o]:u.value,...l}}:{ok:!1,errors:[{path:[...p,t],message:"Unexpected discriminant value"}]};let y=g(l,z);return y.ok?{ok:!0,value:{[o]:s,...y.value}}:y}var ui=H(require("url-join"));var ae=H(require("url-join"));var on=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),requireEnvironment:e.property("require_environment",e.boolean().optional())});var me=e.object({createdAt:e.property("created_at",e.date()),description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),lastUsedAt:e.property("last_used_at",e.date().optional()),name:e.string(),scopes:e.list(e.string()),updatedAt:e.property("updated_at",e.date())});var tn=e.object({data:e.list(me),params:on});var an=e.object({createdAt:e.property("created_at",e.date()),description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),lastUsedAt:e.property("last_used_at",e.date().optional()),name:e.string(),scopes:e.list(e.string()),secret:e.string(),updatedAt:e.property("updated_at",e.date())});var sn=e.object({data:an,params:e.record(e.string(),e.unknown())});var nn=e.object({data:me,params:e.record(e.string(),e.unknown())});var cn=e.object({data:me,params:e.record(e.string(),e.unknown())});var M=e.object({deleted:e.boolean().optional()});var pn=e.object({data:M,params:e.record(e.string(),e.unknown())});var ln=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),requireEnvironment:e.property("require_environment",e.boolean().optional())});var j=e.object({count:e.number().optional()});var mn=e.object({data:j,params:ln});var un=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),requestType:e.property("request_type",e.string().optional())});var kr=e.object({apiKeyId:e.property("api_key_id",e.string()),endedAt:e.property("ended_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),method:e.string(),reqBody:e.property("req_body",e.string().optional()),requestType:e.property("request_type",e.string().optional()),resourceId:e.property("resource_id",e.number().optional()),resourceIdString:e.property("resource_id_string",e.string().optional()),resourceName:e.property("resource_name",e.string().optional()),resourceType:e.property("resource_type",e.string().optional()),respCode:e.property("resp_code",e.number().optional()),secondaryResource:e.property("secondary_resource",e.string().optional()),startedAt:e.property("started_at",e.date()),url:e.string(),userName:e.property("user_name",e.string().optional())});var dn=e.object({data:e.list(kr),params:un});var hn=e.object({apiKey:e.property("api_key",me.optional()),apiKeyId:e.property("api_key_id",e.string()),endedAt:e.property("ended_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),method:e.string(),reqBody:e.property("req_body",e.string().optional()),requestType:e.property("request_type",e.string().optional()),resourceId:e.property("resource_id",e.number().optional()),resourceIdString:e.property("resource_id_string",e.string().optional()),resourceName:e.property("resource_name",e.string().optional()),resourceType:e.property("resource_type",e.string().optional()),respBody:e.property("resp_body",e.string().optional()),respCode:e.property("resp_code",e.number().optional()),secondaryResource:e.property("secondary_resource",e.string().optional()),startedAt:e.property("started_at",e.date()),url:e.string(),userAgent:e.property("user_agent",e.string().optional()),userId:e.property("user_id",e.string().optional()),userName:e.property("user_name",e.string().optional())});var gn=e.object({data:hn,params:e.record(e.string(),e.unknown())});var wn=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),requestType:e.property("request_type",e.string().optional())});var yn=e.object({data:j,params:wn});var zn=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var Ye=e.object({createdAt:e.property("created_at",e.date()),environmentType:e.property("environment_type",e.string()),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Rn=e.object({data:e.list(Ye),params:zn});var bn=e.enum_(["development","staging","production"]);var fn=e.object({apiKeys:e.property("api_keys",e.list(me)),createdAt:e.property("created_at",e.date()),environmentType:e.property("environment_type",e.string()),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var _n=e.object({data:fn,params:e.record(e.string(),e.unknown())});var Sn=e.object({data:Ye,params:e.record(e.string(),e.unknown())});var xn=e.enum_(["development","staging","production"]);var En=e.object({data:Ye,params:e.record(e.string(),e.unknown())});var Un=e.object({data:M,params:e.record(e.string(),e.unknown())});var Pn=e.object({ok:e.boolean()});var Cn=e.object({data:Pn,params:e.record(e.string(),e.unknown())});var rt=e.object({description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),name:e.string()});var ot=e.object({description:e.string().optional(),name:e.string().optional()});var tt=e.object({environmentType:e.property("environment_type",bn),name:e.string()});var it=e.object({environmentType:e.property("environment_type",xn.optional()),name:e.string().optional()});var Tn=e.object({isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Dr=e.object({accountId:e.property("account_id",e.string()),amountOff:e.property("amount_off",e.number().optional()),currency:e.string().optional(),duration:e.string().optional(),durationInMonths:e.property("duration_in_months",e.number().optional()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),isActive:e.property("is_active",e.boolean()),maxRedemptions:e.property("max_redemptions",e.number().optional()),metadata:e.record(e.string(),e.unknown()),name:e.string(),percentOff:e.property("percent_off",e.number().optional()),timesRedeemed:e.property("times_redeemed",e.number()),validFrom:e.property("valid_from",e.date().optional()),validUntil:e.property("valid_until",e.date().optional())});var vn=e.object({data:e.list(Dr),params:Tn});var On=e.object({data:Dr,params:e.record(e.string(),e.unknown())});var Bn=e.object({companyId:e.property("company_id",e.string().optional()),deletedAt:e.property("deleted_at",e.date().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var jn=e.object({data:Bn,params:e.record(e.string(),e.unknown())});var kn=e.object({companyIds:e.property("company_ids",e.list(e.string()).optional()),failedToImport:e.property("failed_to_import",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),q:e.string().optional()});var Dn=e.object({currency:e.string(),expiredAt:e.property("expired_at",e.date().optional()),interval:e.string(),meteredUsage:e.property("metered_usage",e.boolean()),perUnitPrice:e.property("per_unit_price",e.number()),totalPrice:e.property("total_price",e.number())});var Vn=e.object({companyId:e.property("company_id",e.string().optional()),deletedAt:e.property("deleted_at",e.date().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),id:e.string(),name:e.string(),subscriptions:e.list(Dn),updatedAt:e.property("updated_at",e.date())});var qn=e.object({data:e.list(Vn),params:kn});var Mn=e.object({companyIds:e.property("company_ids",e.list(e.string()).optional()),failedToImport:e.property("failed_to_import",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),q:e.string().optional()});var An=e.object({data:j,params:Mn});var Fn=e.object({companyId:e.property("company_id",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),subscriptionExternalId:e.property("subscription_external_id",e.string().optional())});var le=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string().optional()),id:e.string(),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),updatedAt:e.property("updated_at",e.date()),url:e.string().optional()});var In=e.object({data:e.list(le),params:Fn});var Kn=e.object({data:le,params:e.record(e.string(),e.unknown())});var Ln=e.object({displayName:e.property("display_name",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var Vr=e.object({dispalyName:e.property("dispaly_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string()),externalPriceId:e.property("external_price_id",e.string()),id:e.string()});var Gn=e.object({data:e.list(Vr),params:Ln});var Nn=e.object({data:Vr,params:e.record(e.string(),e.unknown())});var Xn=e.object({companyId:e.property("company_id",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var ce=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),customerExternalId:e.property("customer_external_id",e.string()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),paymentMethodType:e.property("payment_method_type",e.string()),updatedAt:e.property("updated_at",e.date())});var Hn=e.object({data:e.list(ce),params:Xn});var Wn=e.object({data:ce,params:e.record(e.string(),e.unknown())});var Jn=e.enum_(["volume","graduated"]);var $n=e.enum_(["licensed","metered"]);var Zn=e.enum_(["volume","graduated"]);var Yn=e.enum_(["licensed","metered"]);var Qn=e.object({forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),ids:e.list(e.string()).optional(),interval:e.string().optional(),limit:e.number().optional(),offset:e.number().optional(),price:e.number().optional(),productId:e.property("product_id",e.string().optional()),q:e.string().optional(),requiresPaymentMethod:e.property("requires_payment_method",e.boolean().optional()),tiersMode:e.property("tiers_mode",Zn.optional()),usageType:e.property("usage_type",Yn.optional())});var qr=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),upTo:e.property("up_to",e.number().optional())});var Q=e.object({billingScheme:e.property("billing_scheme",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),id:e.string(),interval:e.string(),isActive:e.property("is_active",e.boolean()),meterEventName:e.property("meter_event_name",e.string().optional()),meterEventPayloadKey:e.property("meter_event_payload_key",e.string().optional()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceId:e.property("price_id",e.string()),priceTier:e.property("price_tier",e.list(qr)),productExternalId:e.property("product_external_id",e.string()),productId:e.property("product_id",e.string()),productName:e.property("product_name",e.string()),tiersMode:e.property("tiers_mode",e.string().optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",e.string())});var ec=e.object({data:e.list(Q),params:Qn});var rc=e.enum_(["per_unit","tiered"]);var oc=e.enum_(["volume","graduated"]);var tc=e.enum_(["licensed","metered"]);var I=e.object({currency:e.string(),externalPriceId:e.property("external_price_id",e.string()),id:e.string(),interval:e.string(),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),scheme:e.string()});var ic=e.object({data:I,params:e.record(e.string(),e.unknown())});var ac=e.object({data:M,params:e.record(e.string(),e.unknown())});var sc=e.enum_(["licensed","metered"]);var nc=e.enum_(["licensed","metered"]);var cc=e.object({ids:e.list(e.string()).optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),priceUsageType:e.property("price_usage_type",nc.optional()),q:e.string().optional(),withOneTimeCharges:e.property("with_one_time_charges",e.boolean().optional()),withPricesOnly:e.property("with_prices_only",e.boolean().optional()),withZeroPrice:e.property("with_zero_price",e.boolean().optional()),withoutLinkedToPlan:e.property("without_linked_to_plan",e.boolean().optional())});var pc=e.object({data:e.list(I),params:cc});var lc=e.object({data:M,params:e.record(e.string(),e.unknown())});var Qe=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string().optional(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),name:e.string(),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),productId:e.property("product_id",e.string()),quantity:e.number(),updatedAt:e.property("updated_at",e.date())});var mc=e.object({data:Qe,params:e.record(e.string(),e.unknown())});var uc=e.enum_(["licensed","metered"]);var dc=e.enum_(["licensed","metered"]);var hc=e.object({ids:e.list(e.string()).optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),priceUsageType:e.property("price_usage_type",dc.optional()),q:e.string().optional(),withOneTimeCharges:e.property("with_one_time_charges",e.boolean().optional()),withPricesOnly:e.property("with_prices_only",e.boolean().optional()),withZeroPrice:e.property("with_zero_price",e.boolean().optional()),withoutLinkedToPlan:e.property("without_linked_to_plan",e.boolean().optional())});var Te=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string().optional(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),name:e.string(),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),prices:e.list(I),productId:e.property("product_id",e.string()),quantity:e.number(),subscriptionCount:e.property("subscription_count",e.number()),updatedAt:e.property("updated_at",e.date())});var gc=e.object({data:e.list(Te),params:hc});var wc=e.enum_(["licensed","metered"]);var yc=e.enum_(["licensed","metered"]);var zc=e.object({ids:e.list(e.string()).optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),priceUsageType:e.property("price_usage_type",yc.optional()),q:e.string().optional(),withOneTimeCharges:e.property("with_one_time_charges",e.boolean().optional()),withPricesOnly:e.property("with_prices_only",e.boolean().optional()),withZeroPrice:e.property("with_zero_price",e.boolean().optional()),withoutLinkedToPlan:e.property("without_linked_to_plan",e.boolean().optional())});var Rc=e.object({data:j,params:zc});var bc=e.enum_(["subscribe","cancel"]);var fc=e.object({cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",e.string().optional())});var _c=e.object({data:fc,params:e.record(e.string(),e.unknown())});var at=e.object({amountOff:e.property("amount_off",e.number()),currency:e.string().optional(),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number()),externalId:e.property("external_id",e.string()),maxRedemptions:e.property("max_redemptions",e.number()),name:e.string(),percentOff:e.property("percent_off",e.number()),timesRedeemed:e.property("times_redeemed",e.number())});var st=e.object({companyId:e.property("company_id",e.string().optional()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),meta:e.record(e.string(),e.string()),name:e.string()});var nt=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),externalId:e.property("external_id",e.string().optional()),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),url:e.string().optional()});var ct=e.object({displayName:e.property("display_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string()),externalId:e.property("external_id",e.string())});var pt=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string()),externalId:e.property("external_id",e.string()),paymentMethodType:e.property("payment_method_type",e.string())});var Sc=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitDecimal:e.property("per_unit_decimal",e.string().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),priceExternalId:e.property("price_external_id",e.string()),upTo:e.property("up_to",e.number().optional())});var lt=e.object({billingScheme:e.property("billing_scheme",rc),currency:e.string(),externalAccountId:e.property("external_account_id",e.string()),interval:e.string(),isActive:e.property("is_active",e.boolean()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number().optional()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceTiers:e.property("price_tiers",e.list(Sc)),productExternalId:e.property("product_external_id",e.string()),tiersMode:e.property("tiers_mode",oc.optional()),usageType:e.property("usage_type",tc)});var mt=e.object({externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean().optional()),name:e.string(),price:e.number()});var xc=e.object({couponExternalId:e.property("coupon_external_id",e.string()),customerFacingCode:e.property("customer_facing_code",e.string().optional()),endedAt:e.property("ended_at",e.date().optional()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),promoCodeExternalId:e.property("promo_code_external_id",e.string().optional()),startedAt:e.property("started_at",e.date())});var Ec=e.enum_(["licensed","metered"]);var Uc=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),currency:e.string(),interval:e.string(),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number().optional()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),quantity:e.number(),subscriptionItemExternalId:e.property("subscription_item_external_id",e.string().optional()),usageType:e.property("usage_type",Ec)});var ut=e.object({cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodExternalId:e.property("default_payment_method_external_id",e.string().optional()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),discounts:e.list(xc),expiredAt:e.property("expired_at",e.date()),interval:e.string().optional(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number().optional()),periodStart:e.property("period_start",e.number().optional()),productExternalIds:e.property("product_external_ids",e.list(Uc)),status:e.string().optional(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",bc.optional())});var Pc=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var ze=e.object({burnStrategy:e.property("burn_strategy",e.string()),createdAt:e.property("created_at",e.date()),defaultExpiryUnit:e.property("default_expiry_unit",e.string()),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",e.string()),description:e.string(),icon:e.string().optional(),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:I.optional(),product:Qe.optional(),singularName:e.property("singular_name",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var Cc=e.object({data:e.list(ze),params:Pc});var Tc=e.enum_(["plan_first_then_credit_bundles_first_in_first_out","first_in_first_out","last_in_first_out","expiration_priority"]);var vc=e.enum_(["none","rollover","expire"]);var Oc=e.object({data:ze,params:e.record(e.string(),e.unknown())});var Bc=e.object({data:ze,params:e.record(e.string(),e.unknown())});var jc=e.enum_(["plan_first_then_credit_bundles_first_in_first_out","first_in_first_out","last_in_first_out","expiration_priority"]);var kc=e.enum_(["none","rollover","expire"]);var Dc=e.object({data:ze,params:e.record(e.string(),e.unknown())});var Vc=e.object({data:M,params:e.record(e.string(),e.unknown())});var qc=e.enum_(["active","inactive"]);var Mc=e.enum_(["active","inactive"]);var Ac=e.object({bundleType:e.property("bundle_type",e.stringLiteral("fixed").optional()),creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),status:Mc.optional()});var ue=e.object({billingInvoiceId:e.property("billing_invoice_id",e.string().optional()),bundleType:e.property("bundle_type",e.string()),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string().optional()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",e.string()),expiryUnit:e.property("expiry_unit",e.string()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),hasGrants:e.property("has_grants",e.boolean()),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:I.optional(),quantity:e.number().optional(),singularName:e.property("singular_name",e.string().optional()),status:e.string(),unitPrice:e.property("unit_price",I.optional()),updatedAt:e.property("updated_at",e.date())});var Fc=e.object({data:e.list(ue),params:Ac});var Ic=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var Kc=e.enum_(["days","billing_periods"]);var Lc=e.enum_(["active","inactive"]);var Gc=e.object({data:ue,params:e.record(e.string(),e.unknown())});var Nc=e.object({data:ue,params:e.record(e.string(),e.unknown())});var Xc=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var Hc=e.enum_(["days","billing_periods"]);var Wc=e.enum_(["active","inactive"]);var Jc=e.object({data:ue,params:e.record(e.string(),e.unknown())});var $c=e.object({data:M,params:e.record(e.string(),e.unknown())});var Zc=e.enum_(["active","inactive"]);var Yc=e.enum_(["active","inactive"]);var Qc=e.object({bundleType:e.property("bundle_type",e.stringLiteral("fixed").optional()),creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),status:Yc.optional()});var ep=e.object({data:j,params:Qc});var rp=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var op=e.object({data:j,params:rp});var tp=e.enum_(["plan_change","manual","plan_period_reset","expired"]);var ve=e.object({companyId:e.property("company_id",e.string()),companyName:e.property("company_name",e.string()),createdAt:e.property("created_at",e.date()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiresAt:e.property("expires_at",e.date().optional()),grantReason:e.property("grant_reason",e.string()),id:e.string(),planId:e.property("plan_id",e.string().optional()),planName:e.property("plan_name",e.string().optional()),price:I.optional(),quantity:e.number(),quantityRemaining:e.property("quantity_remaining",e.number()),quantityUsed:e.property("quantity_used",e.number()),sourceLabel:e.property("source_label",e.string()),updatedAt:e.property("updated_at",e.date()),validFrom:e.property("valid_from",e.date().optional()),zeroedOutDate:e.property("zeroed_out_date",e.date().optional()),zeroedOutReason:e.property("zeroed_out_reason",e.string().optional())});var ip=e.object({data:ve,params:e.record(e.string(),e.unknown())});var ap=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var sp=e.enum_(["days","billing_periods"]);var np=e.object({data:ve,params:e.record(e.string(),e.unknown())});var cp=e.enum_(["created_at","expires_at","quantity","quantity_remaining"]);var pp=e.enum_(["asc","desc"]);var lp=e.enum_(["asc","desc"]);var mp=e.enum_(["created_at","expires_at","quantity","quantity_remaining"]);var up=e.object({companyId:e.property("company_id",e.string().optional()),dir:lp.optional(),limit:e.number().optional(),offset:e.number().optional(),order:mp.optional()});var dp=e.object({data:e.list(ve),params:up});var hp=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var gp=e.object({data:j,params:hp});var wp=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var yp=e.object({data:e.list(ve),params:wp});var zp=e.enum_(["daily","weekly","monthly","raw"]);var Rp=e.enum_(["daily","weekly","monthly","raw"]);var bp=e.object({billingCreditId:e.property("billing_credit_id",e.string().optional()),companyId:e.property("company_id",e.string().optional()),endTime:e.property("end_time",e.string().optional()),featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),period:Rp.optional(),startTime:e.property("start_time",e.string().optional())});var fp=e.object({id:e.string(),logoUrl:e.property("logo_url",e.string().optional()),name:e.string()});var _p=e.object({description:e.string().optional(),icon:e.string().optional(),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var Sp=e.object({description:e.string().optional(),icon:e.string().optional(),id:e.string(),name:e.string()});var xp=e.object({billingCreditAutoTopupGrantCount:e.property("billing_credit_auto_topup_grant_count",e.number()),billingCreditId:e.property("billing_credit_id",e.string()),company:fp.optional(),companyId:e.property("company_id",e.string()),credit:_p.optional(),expiredGrantCount:e.property("expired_grant_count",e.number()),feature:Sp.optional(),featureId:e.property("feature_id",e.string().optional()),firstTransactionAt:e.property("first_transaction_at",e.date()),freeGrantCount:e.property("free_grant_count",e.number()),grantCount:e.property("grant_count",e.number()),lastTransactionAt:e.property("last_transaction_at",e.date()),manuallyZeroedCount:e.property("manually_zeroed_count",e.number()),netChange:e.property("net_change",e.number()),planGrantCount:e.property("plan_grant_count",e.number()),purchasedGrantCount:e.property("purchased_grant_count",e.number()),timeBucket:e.property("time_bucket",e.date()),totalConsumed:e.property("total_consumed",e.number()),totalGranted:e.property("total_granted",e.number()),transactionCount:e.property("transaction_count",e.number()),usageCount:e.property("usage_count",e.number()),zeroedOutCount:e.property("zeroed_out_count",e.number())});var Ep=e.object({data:e.list(xp),params:bp});var Up=e.enum_(["daily","weekly","monthly","raw"]);var Pp=e.enum_(["daily","weekly","monthly","raw"]);var Cp=e.object({billingCreditId:e.property("billing_credit_id",e.string().optional()),companyId:e.property("company_id",e.string().optional()),endTime:e.property("end_time",e.string().optional()),featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),period:Pp.optional(),startTime:e.property("start_time",e.string().optional())});var Tp=e.object({data:j,params:Cp});var vp=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional())});var Re=e.object({autoTopupAmount:e.property("auto_topup_amount",e.number().optional()),autoTopupAmountType:e.property("auto_topup_amount_type",e.string().optional()),autoTopupEnabled:e.property("auto_topup_enabled",e.boolean()),autoTopupExpiryType:e.property("auto_topup_expiry_type",e.string().optional()),autoTopupExpiryUnit:e.property("auto_topup_expiry_unit",e.string().optional()),autoTopupExpiryUnitCount:e.property("auto_topup_expiry_unit_count",e.number().optional()),autoTopupThresholdPercent:e.property("auto_topup_threshold_percent",e.number().optional()),createdAt:e.property("created_at",e.date()),creditAmount:e.property("credit_amount",e.number()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),creditPluralName:e.property("credit_plural_name",e.string().optional()),creditSingularName:e.property("credit_singular_name",e.string().optional()),expiryType:e.property("expiry_type",e.string().optional()),expiryUnit:e.property("expiry_unit",e.string().optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),id:e.string(),planId:e.property("plan_id",e.string()),planName:e.property("plan_name",e.string()),resetCadence:e.property("reset_cadence",e.string()),resetStart:e.property("reset_start",e.string()),resetType:e.property("reset_type",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var Op=e.object({data:e.list(Re),params:vp});var Bp=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var jp=e.enum_(["days","billing_periods"]);var kp=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var Dp=e.enum_(["days","billing_periods"]);var Vp=e.enum_(["monthly","yearly","daily","weekly"]);var qp=e.enum_(["billing_period","first_of_month"]);var Mp=e.enum_(["plan_period","no_reset"]);var Ap=e.object({data:Re,params:e.record(e.string(),e.unknown())});var Fp=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var Ip=e.enum_(["days","billing_periods"]);var Kp=e.enum_(["monthly","yearly","daily","weekly"]);var Lp=e.enum_(["billing_period","first_of_month"]);var Gp=e.enum_(["plan_period","no_reset"]);var Np=e.object({data:Re,params:e.record(e.string(),e.unknown())});var Xp=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional())});var Hp=e.object({data:M,params:Xp});var Wp=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional())});var Jp=e.object({data:j,params:Wp});var dt=e.object({burnStrategy:e.property("burn_strategy",Tc.optional()),currency:e.string(),defaultExpiryUnit:e.property("default_expiry_unit",e.string().optional()),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",vc.optional()),description:e.string(),icon:e.string().optional(),name:e.string(),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var ht=e.object({burnStrategy:e.property("burn_strategy",jc.optional()),defaultExpiryUnit:e.property("default_expiry_unit",e.stringLiteral("days").optional()),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",kc.optional()),description:e.string(),icon:e.string().optional(),name:e.string(),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var gt=e.object({bundleName:e.property("bundle_name",e.string()),bundleType:e.property("bundle_type",e.stringLiteral("fixed").optional()),creditId:e.property("credit_id",e.string()),currency:e.string(),expiryType:e.property("expiry_type",Ic.optional()),expiryUnit:e.property("expiry_unit",Kc.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),pricePerUnit:e.property("price_per_unit",e.number()),pricePerUnitDecimal:e.property("price_per_unit_decimal",e.string().optional()),quantity:e.number().optional(),status:Lc.optional()});var wt=e.object({bundleName:e.property("bundle_name",e.string()),expiryType:e.property("expiry_type",Xc.optional()),expiryUnit:e.property("expiry_unit",Hc.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),pricePerUnit:e.property("price_per_unit",e.number()),pricePerUnitDecimal:e.property("price_per_unit_decimal",e.string().optional()),quantity:e.number().optional(),status:Wc.optional()});var yt=e.object({reason:tp.optional()});var zt=e.object({billingPeriodsCount:e.property("billing_periods_count",e.number().optional()),companyId:e.property("company_id",e.string()),creditId:e.property("credit_id",e.string()),expiresAt:e.property("expires_at",e.date().optional()),expiryType:e.property("expiry_type",ap.optional()),expiryUnit:e.property("expiry_unit",sp.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),quantity:e.number(),reason:e.string()});var Rt=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional()),autoTopupAmount:e.property("auto_topup_amount",e.number().optional()),autoTopupAmountType:e.property("auto_topup_amount_type",e.stringLiteral("credit").optional()),autoTopupEnabled:e.property("auto_topup_enabled",e.boolean().optional()),autoTopupExpiryType:e.property("auto_topup_expiry_type",Bp.optional()),autoTopupExpiryUnit:e.property("auto_topup_expiry_unit",jp.optional()),autoTopupExpiryUnitCount:e.property("auto_topup_expiry_unit_count",e.number().optional()),autoTopupThresholdPercent:e.property("auto_topup_threshold_percent",e.number().optional()),creditAmount:e.property("credit_amount",e.number()),creditId:e.property("credit_id",e.string()),expiryType:e.property("expiry_type",kp.optional()),expiryUnit:e.property("expiry_unit",Dp.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),planId:e.property("plan_id",e.string()),resetCadence:e.property("reset_cadence",Vp),resetStart:e.property("reset_start",qp),resetType:e.property("reset_type",Mp.optional())});var bt=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional()),creditAmount:e.property("credit_amount",e.number().optional()),expiryType:e.property("expiry_type",Fp.optional()),expiryUnit:e.property("expiry_unit",Ip.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),resetCadence:e.property("reset_cadence",Kp),resetStart:e.property("reset_start",Lp),resetType:e.property("reset_type",Gp.optional())});var $p=e.object({cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),confirmPaymentIntentClientSecret:e.property("confirm_payment_intent_client_secret",e.string().optional()),confirmPaymentIntentId:e.property("confirm_payment_intent_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",e.string().optional())});var Zp=e.object({data:$p,params:e.record(e.string(),e.unknown())});var Mr=e.object({companyCount:e.property("company_count",e.number()),environmentId:e.property("environment_id",e.string()),eventCount:e.property("event_count",e.number()),eventSubtype:e.property("event_subtype",e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),userCount:e.property("user_count",e.number())});var er=e.object({createdAt:e.property("created_at",e.date()),description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",e.string()),icon:e.string(),id:e.string(),lifecyclePhase:e.property("lifecycle_phase",e.string().optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var $=e.object({createdAt:e.property("created_at",e.date()),displayName:e.property("display_name",e.string()),entityType:e.property("entity_type",e.string()),hierarchy:e.list(e.string()),id:e.string(),traitType:e.property("trait_type",e.string()),updatedAt:e.property("updated_at",e.date())});var Yp=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var Ar=e.object({comparisonTrait:e.property("comparison_trait",$.optional()),comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionGroupId:e.property("condition_group_id",e.string().optional()),conditionType:e.property("condition_type",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),metricValue:e.property("metric_value",e.number().optional()),operator:e.string(),resourceIds:e.property("resource_ids",e.list(e.string())),resources:e.list(Yp),ruleId:e.property("rule_id",e.string()),trait:$.optional(),traitEntityType:e.property("trait_entity_type",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var Qp=e.object({conditions:e.list(Ar),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),ruleId:e.property("rule_id",e.string()),updatedAt:e.property("updated_at",e.date())});var Fr=e.object({conditionGroups:e.property("condition_groups",e.list(Qp)),conditions:e.list(Ar),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",e.string()),updatedAt:e.property("updated_at",e.date()),value:e.boolean()});var be=e.object({createdAt:e.property("created_at",e.date()),defaultValue:e.property("default_value",e.boolean()),description:e.string(),feature:er.optional(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",e.string()),id:e.string(),key:e.string(),lastCheckedAt:e.property("last_checked_at",e.date().optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),rules:e.list(Fr),updatedAt:e.property("updated_at",e.date())});var rr=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var W=e.object({createdAt:e.property("created_at",e.date()),description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),eventSummary:e.property("event_summary",Mr.optional()),featureType:e.property("feature_type",e.string()),flags:e.list(be),icon:e.string(),id:e.string(),lifecyclePhase:e.property("lifecycle_phase",e.string().optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),plans:e.list(rr),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),trait:$.optional(),traitId:e.property("trait_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var ee=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Te.optional()),chargeType:e.property("charge_type",e.string()),companyCount:e.property("company_count",e.number()),controlledBy:e.property("controlled_by",e.string()),createdAt:e.property("created_at",e.date()),description:e.string(),features:e.list(W),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(Re).optional()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",I.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",I.optional()),planType:e.property("plan_type",e.string()),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),yearlyPrice:e.property("yearly_price",I.optional())});var Le=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),consumptionRate:e.property("consumption_rate",e.number().optional()),featureId:e.property("feature_id",e.string()),meteredPrice:e.property("metered_price",Q.optional()),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",Q.optional()),priceBehavior:e.property("price_behavior",e.string().optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueType:e.property("value_type",e.string()),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",Q.optional())});var or=e.object({addedOn:e.property("added_on",e.date().optional()),billingProductExternalId:e.property("billing_product_external_id",e.string().optional()),billingProductId:e.property("billing_product_id",e.string().optional()),description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string(),planPeriod:e.property("plan_period",e.string().optional()),planPrice:e.property("plan_price",e.number().optional())});var Ir=e.object({amountOff:e.property("amount_off",e.number().optional()),couponId:e.property("coupon_id",e.string()),couponName:e.property("coupon_name",e.string()),currency:e.string().optional(),customerFacingCode:e.property("customer_facing_code",e.string().optional()),discountExternalId:e.property("discount_external_id",e.string()),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number().optional()),endedAt:e.property("ended_at",e.date().optional()),isActive:e.property("is_active",e.boolean()),percentOff:e.property("percent_off",e.number().optional()),promoCodeExternalId:e.property("promo_code_external_id",e.string().optional()),startedAt:e.property("started_at",e.date()),subscriptionExternalId:e.property("subscription_external_id",e.string())});var Kr=e.object({billingScheme:e.property("billing_scheme",e.string()),billingThreshold:e.property("billing_threshold",e.number().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),interval:e.string(),meterId:e.property("meter_id",e.string().optional()),name:e.string(),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceId:e.property("price_id",e.string()),priceTier:e.property("price_tier",e.list(qr)),quantity:e.number(),subscriptionId:e.property("subscription_id",e.string()),subscriptionItemExternalId:e.property("subscription_item_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",e.string())});var Oe=e.object({cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),discounts:e.list(Ir),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),latestInvoice:e.property("latest_invoice",le.optional()),metadata:e.record(e.string(),e.unknown()).optional(),paymentMethod:e.property("payment_method",ce.optional()),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),products:e.list(Kr),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",e.string().optional())});var tr=e.object({createdAt:e.property("created_at",e.date()),definition:$.optional(),definitionId:e.property("definition_id",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var Lr=e.object({createdAt:e.property("created_at",e.date()),entityType:e.property("entity_type",e.string()),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date())});var ir=e.object({createdAt:e.property("created_at",e.date()),definition:Lr.optional(),definitionId:e.property("definition_id",e.string()),entityId:e.property("entity_id",e.string()),entityType:e.property("entity_type",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var Gr=e.object({accountId:e.property("account_id",e.string()),capturedAtMax:e.property("captured_at_max",e.date()),capturedAtMin:e.property("captured_at_min",e.date()),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string()),monthReset:e.property("month_reset",e.string()),period:e.string(),validUntil:e.property("valid_until",e.date().optional()),value:e.number()});var Nr=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var el=e.enum_(["bool","date","int","string"]);var rl=e.enum_(["user","company"]);var ft=e.object({comparableType:e.property("comparable_type",el),entityType:e.property("entity_type",rl),id:e.string()});var ol=e.enum_(["base_plan","billing_product","company","credit","crm_product","metric","plan","trait","user"]);var tl=e.enum_(["all_time","current_day","current_month","current_week"]);var il=e.enum_(["first_of_month","billing_cycle"]);var al=e.enum_(["eq","ne","gt","lt","gte","lte","is_empty","not_empty"]);var Xr=e.object({accountId:e.property("account_id",e.string()),comparisonTraitDefinition:e.property("comparison_trait_definition",ft.optional()),conditionType:e.property("condition_type",ol),consumptionRate:e.property("consumption_rate",e.number().optional()),creditId:e.property("credit_id",e.string().optional()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",tl.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",il.optional()),metricValue:e.property("metric_value",e.number().optional()),operator:al,resourceIds:e.property("resource_ids",e.list(e.string())),traitDefinition:e.property("trait_definition",ft.optional()),traitValue:e.property("trait_value",e.string())});var sl=e.object({conditions:e.list(Xr)});var nl=e.enum_(["default","global_override","company_override","company_override_usage_exceeded","plan_entitlement","plan_entitlement_usage_exceeded","standard"]);var Hr=e.object({accountId:e.property("account_id",e.string()),conditionGroups:e.property("condition_groups",e.list(sl)),conditions:e.list(Xr),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",nl),value:e.boolean()});var K=e.object({addOns:e.property("add_ons",e.list(or)),billingCreditBalances:e.property("billing_credit_balances",e.record(e.string(),e.number()).optional()),billingSubscription:e.property("billing_subscription",Oe.optional()),billingSubscriptions:e.property("billing_subscriptions",e.list(Oe)),createdAt:e.property("created_at",e.date()),defaultPaymentMethod:e.property("default_payment_method",ce.optional()),entityTraits:e.property("entity_traits",e.list(tr)),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.list(ir),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),metrics:e.list(Gr),name:e.string(),paymentMethods:e.property("payment_methods",e.list(ce)),plan:or.optional(),plans:e.list(Nr),rules:e.list(Hr),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date()),userCount:e.property("user_count",e.number())});var cl=e.enum_(["boolean","numeric","trait","unlimited"]);var pl=e.object({createdAt:e.property("created_at",e.date()),externalUserId:e.property("external_user_id",e.string()),externalUserName:e.property("external_user_name",e.string()),id:e.string(),note:e.string(),updatedAt:e.property("updated_at",e.date())});var de=e.object({company:K.optional(),companyId:e.property("company_id",e.string()),consumptionRate:e.property("consumption_rate",e.number().optional()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expirationDate:e.property("expiration_date",e.date().optional()),feature:er.optional(),featureId:e.property("feature_id",e.string()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),notes:e.list(pl),ruleId:e.property("rule_id",e.string().optional()),ruleIdUsageExceeded:e.property("rule_id_usage_exceeded",e.string().optional()),updatedAt:e.property("updated_at",e.date()),valueBool:e.property("value_bool",e.boolean().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTrait:e.property("value_trait",$.optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",e.string())});var ll=e.enum_(["free","plan","purchased"]);var Be=e.object({creditTypeIcon:e.property("credit_type_icon",e.string().optional()),expiresAt:e.property("expires_at",e.date().optional()),grantReason:e.property("grant_reason",ll),quantity:e.number()});var ml=e.enum_(["free","plan","purchased"]);var je=e.object({audienceType:e.property("audience_type",e.string().optional()),createdAt:e.property("created_at",e.date()),description:e.string(),icon:e.string(),id:e.string(),name:e.string(),planType:e.property("plan_type",e.string()),updatedAt:e.property("updated_at",e.date())});var ie=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),consumptionRate:e.property("consumption_rate",e.number().optional()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),feature:er.optional(),featureId:e.property("feature_id",e.string()),id:e.string(),meteredMonthlyPrice:e.property("metered_monthly_price",Q.optional()),meteredYearlyPrice:e.property("metered_yearly_price",Q.optional()),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),plan:je.optional(),planId:e.property("plan_id",e.string()),priceBehavior:e.property("price_behavior",e.string().optional()),ruleId:e.property("rule_id",e.string()),ruleIdUsageExceeded:e.property("rule_id_usage_exceeded",e.string().optional()),softLimit:e.property("soft_limit",e.number().optional()),updatedAt:e.property("updated_at",e.date()),usageBasedProduct:e.property("usage_based_product",Qe.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCredit:e.property("value_credit",ze.optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTrait:e.property("value_trait",$.optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",e.string())});var ke=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",cl),companyOverride:e.property("company_override",de.optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(Be).optional()),creditGrantReason:e.property("credit_grant_reason",ml.optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional()),effectiveLimit:e.property("effective_limit",e.number().optional()),effectivePrice:e.property("effective_price",e.number().optional()),entitlementExpirationDate:e.property("entitlement_expiration_date",e.date().optional()),entitlementId:e.property("entitlement_id",e.string()),entitlementSource:e.property("entitlement_source",e.string().optional()),entitlementType:e.property("entitlement_type",e.string()),feature:W.optional(),hasValidAllocation:e.property("has_valid_allocation",e.boolean().optional()),isUnlimited:e.property("is_unlimited",e.boolean().optional()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",Q.optional()),overuse:e.number().optional(),percentUsed:e.property("percent_used",e.number().optional()),period:e.string().optional(),plan:je.optional(),planEntitlement:e.property("plan_entitlement",ie.optional()),priceBehavior:e.property("price_behavior",e.string().optional()),softLimit:e.property("soft_limit",e.number().optional()),usage:e.number().optional(),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",Q.optional())});var De=e.object({features:e.list(ke)});var ul=e.object({bundle:ue.optional(),quantity:e.number(),total:e.number()});var Ve=e.object({cancelAt:e.property("cancel_at",e.date().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),discounts:e.list(Ir),expiredAt:e.property("expired_at",e.date().optional()),interval:e.string(),latestInvoice:e.property("latest_invoice",le.optional()),paymentMethod:e.property("payment_method",ce.optional()),products:e.list(Kr),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.date().optional())});var dl=e.object({activeAddOns:e.property("active_add_ons",e.list(ee)),activePlan:e.property("active_plan",ee.optional()),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(Le)),availableCreditBundles:e.property("available_credit_bundles",e.list(ue)),company:K.optional(),featureUsage:e.property("feature_usage",De.optional()),selectedCreditBundles:e.property("selected_credit_bundles",e.list(ul)),selectedPlan:e.property("selected_plan",ee.optional()),selectedUsageBasedEntitlements:e.property("selected_usage_based_entitlements",e.list(Le)),subscription:Ve.optional()});var hl=e.object({data:dl,params:e.record(e.string(),e.unknown())});var gl=e.object({amount:e.number(),description:e.string(),priceId:e.property("price_id",e.string()),proration:e.boolean(),quantity:e.number()});var wl=e.object({amountOff:e.property("amount_off",e.number()),dueNow:e.property("due_now",e.number()),newCharges:e.property("new_charges",e.number()),percentOff:e.property("percent_off",e.number()),periodStart:e.property("period_start",e.date()),promoCodeApplied:e.property("promo_code_applied",e.boolean()),proration:e.number(),taxAmount:e.property("tax_amount",e.number().optional()),taxDisplayName:e.property("tax_display_name",e.string().optional()),taxRequireBillingDetails:e.property("tax_require_billing_details",e.boolean()),trialEnd:e.property("trial_end",e.date().optional()),upcomingInvoiceLineItems:e.property("upcoming_invoice_line_items",e.list(gl))});var Wr=e.object({amountOff:e.property("amount_off",e.number()),dueNow:e.property("due_now",e.number()),finance:wl.optional(),newCharges:e.property("new_charges",e.number()),paymentMethodRequired:e.property("payment_method_required",e.boolean()),percentOff:e.property("percent_off",e.number()),periodStart:e.property("period_start",e.date()),promoCodeApplied:e.property("promo_code_applied",e.boolean()),proration:e.number(),trialEnd:e.property("trial_end",e.date().optional()),usageViolations:e.property("usage_violations",e.list(ke))});var yl=e.object({data:Wr,params:e.record(e.string(),e.unknown())});var zl=e.object({company:K.optional(),success:e.boolean()});var Rl=e.object({data:zl,params:e.record(e.string(),e.unknown())});var bl=e.object({subscriptionChangePreview:e.property("subscription_change_preview",Wr.optional())});var fl=e.object({data:bl,params:e.record(e.string(),e.unknown())});var _l=e.object({data:Oe,params:e.record(e.string(),e.unknown())});var _t=e.object({companyId:e.property("company_id",e.string()),selectedPlanId:e.property("selected_plan_id",e.string().optional())});var St=e.object({trialEnd:e.property("trial_end",e.date().optional())});var Sl=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional(),withSubscription:e.property("with_subscription",e.boolean().optional()),withoutFeatureOverrideFor:e.property("without_feature_override_for",e.string().optional()),withoutPlan:e.property("without_plan",e.boolean().optional())});var xl=e.object({data:e.list(K),params:Sl});var El=e.object({data:K,params:e.record(e.string(),e.unknown())});var Ul=e.object({data:K,params:e.record(e.string(),e.unknown())});var Pl=e.object({cancelSubscription:e.property("cancel_subscription",e.boolean().optional()),prorate:e.boolean().optional()});var Cl=e.object({data:M,params:Pl});var Tl=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional(),withSubscription:e.property("with_subscription",e.boolean().optional()),withoutFeatureOverrideFor:e.property("without_feature_override_for",e.string().optional()),withoutPlan:e.property("without_plan",e.boolean().optional())});var vl=e.object({data:j,params:Tl});var Ol=e.enum_(["asc","desc"]);var Bl=e.enum_(["asc","desc"]);var jl=e.object({creditTypeIds:e.property("credit_type_ids",e.list(e.string()).optional()),displayProperties:e.property("display_properties",e.list(e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),monetizedSubscriptions:e.property("monetized_subscriptions",e.boolean().optional()),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),sortOrderColumn:e.property("sort_order_column",e.string().optional()),sortOrderDirection:e.property("sort_order_direction",Bl.optional()),subscriptionStatuses:e.property("subscription_statuses",e.list(e.string()).optional()),subscriptionTypes:e.property("subscription_types",e.list(e.string()).optional()),withoutPlan:e.property("without_plan",e.boolean().optional()),withoutSubscription:e.property("without_subscription",e.boolean().optional())});var kl=e.object({data:j,params:jl});var Dl=e.object({data:K,params:e.record(e.string(),e.unknown())});var ar=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Vl=e.object({data:ar,params:e.record(e.string(),e.unknown())});var ql=e.enum_(["asc","desc"]);var Ml=e.enum_(["asc","desc"]);var Al=e.object({creditTypeIds:e.property("credit_type_ids",e.list(e.string()).optional()),displayProperties:e.property("display_properties",e.list(e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),monetizedSubscriptions:e.property("monetized_subscriptions",e.boolean().optional()),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),sortOrderColumn:e.property("sort_order_column",e.string().optional()),sortOrderDirection:e.property("sort_order_direction",Ml.optional()),subscriptionStatuses:e.property("subscription_statuses",e.list(e.string()).optional()),subscriptionTypes:e.property("subscription_types",e.list(e.string()).optional()),withoutPlan:e.property("without_plan",e.boolean().optional()),withoutSubscription:e.property("without_subscription",e.boolean().optional())});var Fl=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(Be)),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditTypeName:e.property("credit_type_name",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional())});var Il=e.object({creditTypeId:e.property("credit_type_id",e.string().optional()),creditUsage:e.property("credit_usage",Fl.optional()),entitlementSource:e.property("entitlement_source",e.string()),entitlementValueType:e.property("entitlement_value_type",e.string()),featureId:e.property("feature_id",e.string()),featureName:e.property("feature_name",e.string()),featureType:e.property("feature_type",e.string()),hardLimit:e.property("hard_limit",e.string()),hasAccess:e.property("has_access",e.boolean()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",Q.optional()),priceBehavior:e.property("price_behavior",e.string().optional()),softLimit:e.property("soft_limit",e.string()),usage:e.string(),valueNumeric:e.property("value_numeric",e.number().optional()),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",Q.optional())});var Kl=e.object({addOns:e.property("add_ons",e.list(or)),billingCreditBalances:e.property("billing_credit_balances",e.record(e.string(),e.number()).optional()),billingSubscription:e.property("billing_subscription",Oe.optional()),billingSubscriptions:e.property("billing_subscriptions",e.list(Oe)),createdAt:e.property("created_at",e.date()),defaultPaymentMethod:e.property("default_payment_method",ce.optional()),entityTraits:e.property("entity_traits",e.list(tr)),environmentId:e.property("environment_id",e.string()),featureUsage:e.property("feature_usage",e.list(Il)),id:e.string(),keys:e.list(ir),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),metrics:e.list(Gr),name:e.string(),paymentMethods:e.property("payment_methods",e.list(ce)),plan:or.optional(),plans:e.list(Nr),rules:e.list(Hr),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date()),userCount:e.property("user_count",e.number())});var Ll=e.object({data:e.list(Kl),params:Al});var Gl=e.object({keys:e.record(e.string(),e.string()).optional()});var Nl=e.object({data:K,params:Gl});var Xl=e.object({companyId:e.property("company_id",e.string().optional()),dealStage:e.property("deal_stage",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var xt=e.record(e.string(),e.unknown());var Hl=e.object({billingFrequency:e.property("billing_frequency",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),description:e.string(),discountPercentage:e.property("discount_percentage",xt.optional()),id:e.string(),name:e.string(),price:e.number(),quantity:e.number(),termMonth:e.property("term_month",e.number().optional()),totalDiscount:e.property("total_discount",xt.optional()),updatedAt:e.property("updated_at",e.date())});var Wl=e.object({dealArr:e.property("deal_arr",e.string()),dealExternalId:e.property("deal_external_id",e.string()),dealMrr:e.property("deal_mrr",e.string()),dealName:e.property("deal_name",e.string().optional()),lineItems:e.property("line_items",e.list(Hl))});var Jl=e.object({data:e.list(Wl),params:Xl});var $l=e.object({companyId:e.property("company_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),userId:e.property("user_id",e.string().optional())});var sr=e.object({company:ar.optional(),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),id:e.string(),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string())});var Zl=e.object({data:e.list(sr),params:$l});var Yl=e.object({data:sr,params:e.record(e.string(),e.unknown())});var Ql=e.object({data:M,params:e.record(e.string(),e.unknown())});var em=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional()});var rm=e.object({data:e.list(Ve),params:em});var om=e.object({data:K,params:e.record(e.string(),e.unknown())});var tm=e.enum_(["company","user"]);var im=e.enum_(["company","user"]);var am=e.object({entityType:e.property("entity_type",im.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var sm=e.object({data:e.list(Lr),params:am});var nm=e.enum_(["company","user"]);var cm=e.enum_(["company","user"]);var pm=e.object({entityType:e.property("entity_type",cm.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var lm=e.object({data:j,params:pm});var mm=e.enum_(["company","user"]);var um=e.enum_(["boolean","currency","date","number","string","url"]);var dm=e.enum_(["company","user"]);var hm=e.enum_(["boolean","currency","date","number","string","url"]);var gm=e.object({entityType:e.property("entity_type",dm.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),traitType:e.property("trait_type",hm.optional())});var wm=e.object({data:e.list($),params:gm});var ym=e.enum_(["company","user"]);var zm=e.enum_(["boolean","currency","date","number","string","url"]);var Rm=e.object({data:$,params:e.record(e.string(),e.unknown())});var bm=e.object({data:$,params:e.record(e.string(),e.unknown())});var fm=e.enum_(["boolean","currency","date","number","string","url"]);var _m=e.object({data:$,params:e.record(e.string(),e.unknown())});var Sm=e.enum_(["company","user"]);var xm=e.enum_(["boolean","currency","date","number","string","url"]);var Em=e.enum_(["company","user"]);var Um=e.enum_(["boolean","currency","date","number","string","url"]);var Pm=e.object({entityType:e.property("entity_type",Em.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),traitType:e.property("trait_type",Um.optional())});var Cm=e.object({data:j,params:Pm});var Tm=e.object({definitionId:e.property("definition_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var vm=e.object({definitionId:e.property("definition_id",e.string()),value:e.string()});var Om=e.object({data:e.list(vm),params:Tm});var Bm=e.object({action:e.string().optional(),basePlanAction:e.property("base_plan_action",e.string().optional()),companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional())});var jm=e.enum_(["checkout","company_upsert","fallback_plan","manage_plan","migration","plan_billing_product_changed","plan_deleted","quickstart","subscription_change"]);var km=e.enum_(["app_user","api_key","system","temporary_access_token"]);var fr=e.object({deleted:e.boolean(),description:e.string(),icon:e.string(),id:e.string(),name:e.string()});var Dm=e.enum_(["fallback","initial","trait","trial_expiry"]);var Vm=e.enum_(["downgrade","invalid","subscribe","unsubscribe","upgrade","upgrade_trial"]);var qm=e.object({featureId:e.property("feature_id",e.string()),hierarchy:e.list(e.string()),reason:e.string(),traitId:e.property("trait_id",e.string()),traitName:e.property("trait_name",e.string()),traitType:e.property("trait_type",e.string()),value:e.string()});var Jr=e.object({action:jm,actorType:e.property("actor_type",km),addOnsAdded:e.property("add_ons_added",e.list(fr)),addOnsRemoved:e.property("add_ons_removed",e.list(fr)),apiKey:e.property("api_key",me.optional()),apiKeyRequest:e.property("api_key_request",kr.optional()),basePlan:e.property("base_plan",fr.optional()),basePlanAction:e.property("base_plan_action",Dm.optional()),company:ar.optional(),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),previousBasePlan:e.property("previous_base_plan",fr.optional()),requestId:e.property("request_id",e.string().optional()),subscriptionChangeAction:e.property("subscription_change_action",Vm.optional()),traitsUpdated:e.property("traits_updated",e.list(qm)),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string().optional()),userName:e.property("user_name",e.string().optional())});var Mm=e.object({data:e.list(Jr),params:Bm});var Am=e.object({data:Jr,params:e.record(e.string(),e.unknown())});var Fm=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitIds:e.property("trait_ids",e.list(e.string()).optional())});var fe=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),planId:e.property("plan_id",e.string()),planType:e.property("plan_type",e.string()),traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var Im=e.object({data:e.list(fe),params:Fm});var Km=e.object({data:fe,params:e.record(e.string(),e.unknown())});var Lm=e.object({data:fe,params:e.record(e.string(),e.unknown())});var Gm=e.object({data:fe,params:e.record(e.string(),e.unknown())});var Nm=e.object({data:M,params:e.record(e.string(),e.unknown())});var Xm=e.object({data:e.list(fe),params:e.record(e.string(),e.unknown())});var Hm=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitIds:e.property("trait_ids",e.list(e.string()).optional())});var Wm=e.object({data:j,params:Hm});var he=e.object({companyMemberships:e.property("company_memberships",e.list(sr)),createdAt:e.property("created_at",e.date()),entityTraits:e.property("entity_traits",e.list(tr)),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.list(ir),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string(),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date())});var Jm=e.object({data:he,params:e.record(e.string(),e.unknown())});var $m=e.object({companyId:e.property("company_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional()});var Zm=e.object({data:e.list(he),params:$m});var Ym=e.object({data:he,params:e.record(e.string(),e.unknown())});var Qm=e.object({data:he,params:e.record(e.string(),e.unknown())});var eu=e.object({data:M,params:e.record(e.string(),e.unknown())});var ru=e.object({companyId:e.property("company_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional()});var ou=e.object({data:j,params:ru});var tu=e.object({data:he,params:e.record(e.string(),e.unknown())});var $r=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var iu=e.object({data:$r,params:e.record(e.string(),e.unknown())});var au=e.object({keys:e.record(e.string(),e.string()).optional()});var su=e.object({data:he,params:au});var Et=e.object({companyId:e.property("company_id",e.string()),userId:e.property("user_id",e.string())});var Ut=e.object({displayName:e.property("display_name",e.string().optional()),entityType:e.property("entity_type",ym),hierarchy:e.list(e.string()),traitType:e.property("trait_type",zm)});var Pt=e.object({displayName:e.property("display_name",e.string().optional()),traitType:e.property("trait_type",fm)});var Ct=e.object({planId:e.property("plan_id",e.string()),traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string())});var Tt=e.object({planId:e.property("plan_id",e.string()),traitValue:e.property("trait_value",e.string())});var nu=e.object({traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string())});var vt=e.object({planId:e.property("plan_id",e.string()),traits:e.list(nu)});var cu=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutExpired:e.property("without_expired",e.boolean().optional())});var pu=e.object({data:e.list(de),params:cu});var lu=e.enum_(["all_time","current_month","current_week","current_day"]);var mu=e.enum_(["first_of_month","billing_cycle"]);var uu=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var du=e.object({data:de,params:e.record(e.string(),e.unknown())});var hu=e.object({data:de,params:e.record(e.string(),e.unknown())});var gu=e.enum_(["all_time","current_month","current_week","current_day"]);var wu=e.enum_(["first_of_month","billing_cycle"]);var yu=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var zu=e.object({data:de,params:e.record(e.string(),e.unknown())});var Ru=e.object({data:M,params:e.record(e.string(),e.unknown())});var bu=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutExpired:e.property("without_expired",e.boolean().optional())});var fu=e.object({data:j,params:bu});var _u=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Su=e.enum_(["boolean","numeric","trait","unlimited"]);var xu=e.enum_(["free","plan","purchased"]);var Eu=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(Be).optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditTypeName:e.property("credit_type_name",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional())});var Uu=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",Su),company:K.optional(),companyOverride:e.property("company_override",de.optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(Be).optional()),creditGrantReason:e.property("credit_grant_reason",xu.optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditUsage:e.property("credit_usage",Eu.optional()),creditUsed:e.property("credit_used",e.number().optional()),effectiveLimit:e.property("effective_limit",e.number().optional()),effectivePrice:e.property("effective_price",e.number().optional()),entitlementExpirationDate:e.property("entitlement_expiration_date",e.date().optional()),entitlementId:e.property("entitlement_id",e.string()),entitlementSource:e.property("entitlement_source",e.string().optional()),entitlementType:e.property("entitlement_type",e.string()),feature:W.optional(),hasValidAllocation:e.property("has_valid_allocation",e.boolean().optional()),isUnlimited:e.property("is_unlimited",e.boolean().optional()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",Q.optional()),overuse:e.number().optional(),percentUsed:e.property("percent_used",e.number().optional()),period:e.string().optional(),plan:je.optional(),planEntitlement:e.property("plan_entitlement",ie.optional()),priceBehavior:e.property("price_behavior",e.string().optional()),softLimit:e.property("soft_limit",e.number().optional()),usage:e.number().optional(),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",Q.optional())});var Pu=e.object({data:e.list(Uu),params:_u});var Cu=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Tu=e.object({data:j,params:Cu});var vu=e.object({companyId:e.property("company_id",e.string().optional()),companyKeys:e.property("company_keys",e.record(e.string(),e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutNegativeEntitlements:e.property("without_negative_entitlements",e.boolean().optional())});var Ou=e.object({data:e.list(ke),params:vu});var Bu=e.object({companyId:e.property("company_id",e.string().optional()),companyKeys:e.property("company_keys",e.record(e.string(),e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutNegativeEntitlements:e.property("without_negative_entitlements",e.boolean().optional())});var ju=e.object({data:j,params:Bu});var ku=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Du=e.enum_(["boolean","numeric","trait","unlimited","unknown"]);var Vu=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",Du),company:K.optional(),entitlementId:e.property("entitlement_id",e.string()),entitlementType:e.property("entitlement_type",e.string()),feature:W.optional(),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),period:e.string().optional(),plan:je.optional(),usage:e.number().optional(),user:$r.optional()});var qu=e.object({data:e.list(Vu),params:ku});var Mu=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Au=e.object({data:j,params:Mu});var Fu=e.object({featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),withMeteredProducts:e.property("with_metered_products",e.boolean().optional())});var Iu=e.object({data:e.list(ie),params:Fu});var Ku=e.enum_(["all_time","current_month","current_week","current_day"]);var Lu=e.enum_(["first_of_month","billing_cycle"]);var Gu=e.enum_(["pay_as_you_go","pay_in_advance","overage","credit_burndown","tier"]);var Nu=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var Xu=e.object({data:ie,params:e.record(e.string(),e.unknown())});var Hu=e.object({data:ie,params:e.record(e.string(),e.unknown())});var Wu=e.enum_(["all_time","current_month","current_week","current_day"]);var Ju=e.enum_(["first_of_month","billing_cycle"]);var $u=e.enum_(["pay_as_you_go","pay_in_advance","overage","credit_burndown","tier"]);var Zu=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var Yu=e.object({data:ie,params:e.record(e.string(),e.unknown())});var Qu=e.object({data:M,params:e.record(e.string(),e.unknown())});var ed=e.object({featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),withMeteredProducts:e.property("with_metered_products",e.boolean().optional())});var rd=e.object({data:j,params:ed});var od=e.object({keys:e.record(e.string(),e.string()).optional()});var td=e.object({data:De,params:od});var Ot=e.object({companyId:e.property("company_id",e.string()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),expirationDate:e.property("expiration_date",e.date().optional()),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",lu.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",mu.optional()),note:e.string().optional(),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",uu)});var Bt=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),expirationDate:e.property("expiration_date",e.date().optional()),metricPeriod:e.property("metric_period",gu.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",wu.optional()),note:e.string().optional(),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",yu)});var ge=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),upTo:e.property("up_to",e.number().optional())});var jt=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),currency:e.string().optional(),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",Ku.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Lu.optional()),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(ge).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),planId:e.property("plan_id",e.string()),priceBehavior:e.property("price_behavior",Gu.optional()),priceTiers:e.property("price_tiers",e.list(ge).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",e.string().optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",Nu),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(ge).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var kt=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),currency:e.string().optional(),metricPeriod:e.property("metric_period",Wu.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Ju.optional()),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(ge).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),priceBehavior:e.property("price_behavior",$u.optional()),priceTiers:e.property("price_tiers",e.list(ge).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",e.string().optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",Zu),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(ge).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var id=e.object({data:K,params:e.record(e.string(),e.unknown())});var ad=e.enum_(["plan","add_on"]);var sd=e.enum_(["plan","add_on"]);var nd=e.object({companyId:e.property("company_id",e.string().optional()),forFallbackPlan:e.property("for_fallback_plan",e.boolean().optional()),forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),hasProductId:e.property("has_product_id",e.boolean().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planType:e.property("plan_type",sd.optional()),q:e.string().optional(),requiresPaymentMethod:e.property("requires_payment_method",e.boolean().optional()),withoutEntitlementFor:e.property("without_entitlement_for",e.string().optional()),withoutPaidProductId:e.property("without_paid_product_id",e.boolean().optional()),withoutProductId:e.property("without_product_id",e.boolean().optional())});var cd=e.object({data:e.list(ee),params:nd});var pd=e.enum_(["plan","add_on"]);var ld=e.object({data:ee,params:e.record(e.string(),e.unknown())});var md=e.object({data:ee,params:e.record(e.string(),e.unknown())});var ud=e.object({data:ee,params:e.record(e.string(),e.unknown())});var dd=e.object({data:M,params:e.record(e.string(),e.unknown())});var hd=e.enum_(["one_time","recurring","free"]);var gd=e.object({accountId:e.property("account_id",e.string()),billingProductId:e.property("billing_product_id",e.string()),chargeType:e.property("charge_type",e.string()),controlledBy:e.property("controlled_by",e.string()),environmentId:e.property("environment_id",e.string()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPriceId:e.property("monthly_price_id",e.string().optional()),oneTimePriceId:e.property("one_time_price_id",e.string().optional()),planId:e.property("plan_id",e.string()),trialDays:e.property("trial_days",e.number().optional()),yearlyPriceId:e.property("yearly_price_id",e.string().optional())});var wd=e.object({data:gd,params:e.record(e.string(),e.unknown())});var yd=e.enum_(["plan","add_on"]);var zd=e.enum_(["plan","add_on"]);var Rd=e.object({companyId:e.property("company_id",e.string().optional()),forFallbackPlan:e.property("for_fallback_plan",e.boolean().optional()),forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),hasProductId:e.property("has_product_id",e.boolean().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planType:e.property("plan_type",zd.optional()),q:e.string().optional(),requiresPaymentMethod:e.property("requires_payment_method",e.boolean().optional()),withoutEntitlementFor:e.property("without_entitlement_for",e.string().optional()),withoutPaidProductId:e.property("without_paid_product_id",e.boolean().optional()),withoutProductId:e.property("without_product_id",e.boolean().optional())});var bd=e.object({data:j,params:Rd});var fd=e.object({planId:e.property("plan_id",e.string().optional())});var _d=e.object({code:e.string(),description:e.string(),detail:e.string().optional(),id:e.string().optional()});var Sd=e.object({data:e.list(_d),params:fd});var Dt=e.object({addOnIds:e.property("add_on_ids",e.list(e.string())),basePlanId:e.property("base_plan_id",e.string().optional())});var Vt=e.object({description:e.string(),icon:e.string().optional(),name:e.string(),planType:e.property("plan_type",pd)});var qt=e.object({description:e.string().optional(),icon:e.string().optional(),name:e.string()});var Mt=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),chargeType:e.property("charge_type",hd),currency:e.string().optional(),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",e.number().optional()),monthlyPriceId:e.property("monthly_price_id",e.string().optional()),oneTimePrice:e.property("one_time_price",e.number().optional()),oneTimePriceId:e.property("one_time_price_id",e.string().optional()),trialDays:e.property("trial_days",e.number().optional()),yearlyPrice:e.property("yearly_price",e.number().optional()),yearlyPriceId:e.property("yearly_price_id",e.string().optional())});var xd=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var we=e.object({ast:e.record(e.string(),e.number()).optional(),createdAt:e.property("created_at",e.date()),id:e.string(),name:e.string(),state:e.string(),type:e.string(),updatedAt:e.property("updated_at",e.date())});var Ed=e.object({data:e.list(we),params:xd});var Ud=e.enum_(["entitlement","billing"]);var Pd=e.object({data:we,params:e.record(e.string(),e.unknown())});var Cd=e.object({data:we,params:e.record(e.string(),e.unknown())});var Td=e.enum_(["entitlement","billing"]);var vd=e.enum_(["draft","live"]);var Od=e.object({data:we,params:e.record(e.string(),e.unknown())});var Bd=e.object({data:M,params:e.record(e.string(),e.unknown())});var jd=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var kd=e.object({data:j,params:jd});var Dd=e.object({companyId:e.property("company_id",e.string().optional()),componentId:e.property("component_id",e.string().optional())});var nr=e.object({ctaText:e.property("cta_text",e.string()),ctaWebSite:e.property("cta_web_site",e.string()),priceText:e.property("price_text",e.string())});var Vd=e.object({billingCreditAutoTopupAmount:e.property("billing_credit_auto_topup_amount",e.number().optional()),billingCreditAutoTopupAmountType:e.property("billing_credit_auto_topup_amount_type",e.string().optional()),billingCreditAutoTopupEnabled:e.property("billing_credit_auto_topup_enabled",e.boolean()),billingCreditAutoTopupExpiryType:e.property("billing_credit_auto_topup_expiry_type",e.string().optional()),billingCreditAutoTopupExpiryUnit:e.property("billing_credit_auto_topup_expiry_unit",e.string().optional()),billingCreditAutoTopupExpiryUnitCount:e.property("billing_credit_auto_topup_expiry_unit_count",e.number().optional()),billingCreditAutoTopupThresholdPercent:e.property("billing_credit_auto_topup_threshold_percent",e.number().optional()),createdAt:e.property("created_at",e.date()),creditAmount:e.property("credit_amount",e.number()),creditDescription:e.property("credit_description",e.string()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",e.string().optional()),expiryUnit:e.property("expiry_unit",e.string().optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),id:e.string(),planId:e.property("plan_id",e.string()),planName:e.property("plan_name",e.string()),pluralName:e.property("plural_name",e.string().optional()),resetCadence:e.property("reset_cadence",e.string()),resetStart:e.property("reset_start",e.string()),resetType:e.property("reset_type",e.string()),singularName:e.property("singular_name",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var cr=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Te.optional()),chargeType:e.property("charge_type",e.string()),companyCanTrial:e.property("company_can_trial",e.boolean()),companyCount:e.property("company_count",e.number()),compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),controlledBy:e.property("controlled_by",e.string()),createdAt:e.property("created_at",e.date()),current:e.boolean(),custom:e.boolean(),customPlanConfig:e.property("custom_plan_config",nr.optional()),description:e.string(),entitlements:e.list(ie),features:e.list(W),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(Vd)),isCustom:e.property("is_custom",e.boolean()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",I.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",I.optional()),planType:e.property("plan_type",e.string()),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),usageViolations:e.property("usage_violations",e.list(ke)),valid:e.boolean(),yearlyPrice:e.property("yearly_price",I.optional())});var qe=e.object({compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),sourcePlanId:e.property("source_plan_id",e.string())});var Zr=e.object({badgeVisibility:e.property("badge_visibility",e.boolean()),checkout:e.boolean()});var Yr=e.object({collectAddress:e.property("collect_address",e.boolean()),collectEmail:e.property("collect_email",e.boolean()),collectPhone:e.property("collect_phone",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean())});var _r=e.object({billingScheme:e.property("billing_scheme",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),id:e.string(),interval:e.string(),isActive:e.property("is_active",e.boolean()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),tiersMode:e.property("tiers_mode",e.string().optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",e.string())});var Qr=e.object({billingInvoiceId:e.property("billing_invoice_id",e.string().optional()),bundleType:e.property("bundle_type",e.string()),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string().optional()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",e.string()),expiryUnit:e.property("expiry_unit",e.string()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),hasGrants:e.property("has_grants",e.boolean()),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:_r.optional(),quantity:e.number().optional(),singularName:e.property("singular_name",e.string().optional()),status:e.string(),unitPrice:e.property("unit_price",_r.optional()),updatedAt:e.property("updated_at",e.date())});var eo=e.object({billingCreditBundleId:e.property("billing_credit_bundle_id",e.string().optional()),billingCreditId:e.property("billing_credit_id",e.string()),companyId:e.property("company_id",e.string()),companyName:e.property("company_name",e.string()),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string()),creditIcon:e.property("credit_icon",e.string().optional()),creditName:e.property("credit_name",e.string()),expiresAt:e.property("expires_at",e.date().optional()),expiryType:e.property("expiry_type",e.string().optional()),expiryUnit:e.property("expiry_unit",e.string().optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),grantReason:e.property("grant_reason",e.string()),id:e.string(),planId:e.property("plan_id",e.string().optional()),planName:e.property("plan_name",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),price:_r.optional(),quantity:e.number(),quantityRemaining:e.property("quantity_remaining",e.number()),quantityUsed:e.property("quantity_used",e.number()),singularName:e.property("singular_name",e.string().optional()),sourceLabel:e.property("source_label",e.string()),updatedAt:e.property("updated_at",e.date()),validFrom:e.property("valid_from",e.date().optional()),zeroedOutDate:e.property("zeroed_out_date",e.date().optional()),zeroedOutReason:e.property("zeroed_out_reason",e.string().optional())});var ro=e.object({accountId:e.property("account_id",e.string().optional()),publishableKey:e.property("publishable_key",e.string().optional()),schematicPublishableKey:e.property("schematic_publishable_key",e.string()),setupIntentClientSecret:e.property("setup_intent_client_secret",e.string().optional())});var qd=e.object({activeAddOns:e.property("active_add_ons",e.list(cr)),activePlans:e.property("active_plans",e.list(cr)),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(Le)),addOnCompatibilities:e.property("add_on_compatibilities",e.list(qe)),capabilities:Zr.optional(),checkoutSettings:e.property("checkout_settings",Yr),company:K.optional(),component:we.optional(),creditBundles:e.property("credit_bundles",e.list(Qr)),creditGrants:e.property("credit_grants",e.list(eo)),defaultPlan:e.property("default_plan",ee.optional()),featureUsage:e.property("feature_usage",De.optional()),invoices:e.list(le),postTrialPlan:e.property("post_trial_plan",ee.optional()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),stripeEmbed:e.property("stripe_embed",ro.optional()),subscription:Ve.optional(),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional()),upcomingInvoice:e.property("upcoming_invoice",le.optional())});var Md=e.object({data:qd,params:Dd});var At=e.object({ast:e.record(e.string(),e.number()).optional(),entityType:e.property("entity_type",Ud),name:e.string()});var Ft=e.object({ast:e.record(e.string(),e.number()).optional(),entityType:e.property("entity_type",Td.optional()),name:e.string().optional(),state:vd.optional()});var oo=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),dealId:e.property("deal_id",e.string().optional()),environmentId:e.property("environment_id",e.string()),productExternalId:e.property("product_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var Ad=e.object({data:oo,params:e.record(e.string(),e.unknown())});var Fd=e.object({data:oo,params:e.record(e.string(),e.unknown())});var Id=e.object({accountId:e.property("account_id",e.string()),arr:e.string(),companyExternalId:e.property("company_external_id",e.string().optional()),createdAt:e.property("created_at",e.date()),dealExternalId:e.property("deal_external_id",e.string()),dealId:e.property("deal_id",e.string()),environmentId:e.property("environment_id",e.string()),mrr:e.string(),name:e.string().optional(),productExternalId:e.property("product_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var Kd=e.object({data:Id,params:e.record(e.string(),e.unknown())});var Ld=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var to=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),name:e.string(),price:e.string(),productId:e.property("product_id",e.string()),quantity:e.number(),updatedAt:e.property("updated_at",e.date())});var Gd=e.object({data:e.list(to),params:Ld});var Nd=e.object({data:to,params:e.record(e.string(),e.unknown())});var It=e.object({dealExternalId:e.property("deal_external_id",e.string()),lineItemExternalId:e.property("line_item_external_id",e.string())});var Kt=e.object({amount:e.string(),discountPercentage:e.property("discount_percentage",e.string().optional()),interval:e.string(),lineItemExternalId:e.property("line_item_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),quantity:e.number(),termMonth:e.property("term_month",e.number().optional()),totalDiscount:e.property("total_discount",e.string().optional())});var Lt=e.object({arr:e.string().optional(),crmCompanyId:e.property("crm_company_id",e.string().optional()),crmCompanyKey:e.property("crm_company_key",e.string()),crmProductId:e.property("crm_product_id",e.string().optional()),crmType:e.property("crm_type",e.string()),dealExternalId:e.property("deal_external_id",e.string()),dealName:e.property("deal_name",e.string().optional()),dealStage:e.property("deal_stage",e.string().optional()),mrr:e.string().optional()});var Gt=e.object({currency:e.string(),description:e.string(),externalId:e.property("external_id",e.string()),interval:e.string(),name:e.string(),price:e.string(),quantity:e.number(),sku:e.string()});var Xd=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),exportType:e.property("export_type",e.string()),id:e.string(),metadata:e.string(),outputFileType:e.property("output_file_type",e.string()),status:e.string(),updatedAt:e.property("updated_at",e.date())});var Hd=e.object({data:Xd,params:e.record(e.string(),e.unknown())});var Nt=e.object({metadata:e.string()});var io=e.object({capturedAt:e.property("captured_at",e.date()),eventId:e.property("event_id",e.string().optional()),remoteAddr:e.property("remote_addr",e.string()),remoteIp:e.property("remote_ip",e.string()),userAgent:e.property("user_agent",e.string())});var Wd=e.object({events:e.list(io)});var Jd=e.object({data:Wd,params:e.record(e.string(),e.unknown())});var $d=e.object({eventSubtypes:e.property("event_subtypes",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Zd=e.object({data:e.list(Mr),params:$d});var Xt=e.enum_(["identify","track","flag_check"]);var Yd=e.enum_(["identify","track","flag_check"]);var Qd=e.object({companyId:e.property("company_id",e.string().optional()),eventSubtype:e.property("event_subtype",e.string().optional()),eventTypes:e.property("event_types",e.list(Yd).optional()),flagId:e.property("flag_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),userId:e.property("user_id",e.string().optional())});var ao=e.object({apiKey:e.property("api_key",e.string().optional()),body:e.record(e.string(),e.unknown()),bodyPreview:e.property("body_preview",e.string()),capturedAt:e.property("captured_at",e.date()),company:rr.optional(),companyId:e.property("company_id",e.string().optional()),enrichedAt:e.property("enriched_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),errorMessage:e.property("error_message",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string())),features:e.list(rr),id:e.string(),loadedAt:e.property("loaded_at",e.date().optional()),processedAt:e.property("processed_at",e.date().optional()),quantity:e.number(),sentAt:e.property("sent_at",e.date().optional()),status:e.string(),subtype:e.string().optional(),type:e.string(),updatedAt:e.property("updated_at",e.date()),user:rr.optional(),userId:e.property("user_id",e.string().optional())});var eh=e.object({data:e.list(ao),params:Qd});var rh=e.object({data:io,params:e.record(e.string(),e.unknown())});var oh=e.object({data:ao,params:e.record(e.string(),e.unknown())});var th=e.object({connected:e.boolean(),environmentId:e.property("environment_id",e.string()),lastEventAt:e.property("last_event_at",e.date().optional())});var ih=e.object({data:th,params:e.record(e.string(),e.unknown())});var ah=e.object({company:e.record(e.string(),e.string()).optional(),event:e.string(),quantity:e.number().optional(),traits:e.record(e.string(),e.unknown()).optional(),user:e.record(e.string(),e.string()).optional()});var sh=e.object({companyId:e.property("company_id",e.string().optional()),error:e.string().optional(),flagId:e.property("flag_id",e.string().optional()),flagKey:e.property("flag_key",e.string()),reason:e.string(),reqCompany:e.property("req_company",e.record(e.string(),e.string()).optional()),reqUser:e.property("req_user",e.record(e.string(),e.string()).optional()),ruleId:e.property("rule_id",e.string().optional()),userId:e.property("user_id",e.string().optional()),value:e.boolean()});var nh=e.object({keys:e.record(e.string(),e.string()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional()});var ch=e.object({company:nh.optional(),keys:e.record(e.string(),e.string()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional()});var ph=e.undiscriminatedUnion([ah,sh,ch]);var lh=e.enum_(["identify","track","flag_check"]);var so=e.object({body:ph.optional(),eventType:e.property("event_type",lh),sentAt:e.property("sent_at",e.date().optional())});var Ht=e.object({events:e.list(so)});var mh=e.object({booleanRequireEvent:e.property("boolean_require_event",e.boolean().optional()),featureType:e.property("feature_type",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutCompanyOverrideFor:e.property("without_company_override_for",e.string().optional()),withoutPlanEntitlementFor:e.property("without_plan_entitlement_for",e.string().optional())});var uh=e.object({data:e.list(W),params:mh});var dh=e.enum_(["boolean","event","trait"]);var hh=e.enum_(["add_on","alpha","beta","deprecated","ga","in_plan","inactive","internal_testing","legacy"]);var gh=e.object({data:W,params:e.record(e.string(),e.unknown())});var wh=e.object({data:W,params:e.record(e.string(),e.unknown())});var yh=e.enum_(["boolean","event","trait"]);var zh=e.enum_(["add_on","alpha","beta","deprecated","ga","in_plan","inactive","internal_testing","legacy"]);var Rh=e.object({data:W,params:e.record(e.string(),e.unknown())});var bh=e.object({data:M,params:e.record(e.string(),e.unknown())});var fh=e.object({booleanRequireEvent:e.property("boolean_require_event",e.boolean().optional()),featureType:e.property("feature_type",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutCompanyOverrideFor:e.property("without_company_override_for",e.string().optional()),withoutPlanEntitlementFor:e.property("without_plan_entitlement_for",e.string().optional())});var _h=e.object({data:j,params:fh});var Sh=e.object({featureId:e.property("feature_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var xh=e.object({data:e.list(be),params:Sh});var Eh=e.object({data:be,params:e.record(e.string(),e.unknown())});var Uh=e.object({data:be,params:e.record(e.string(),e.unknown())});var Ph=e.object({data:be,params:e.record(e.string(),e.unknown())});var Ch=e.object({data:M,params:e.record(e.string(),e.unknown())});var Th=e.object({createdAt:e.property("created_at",e.date()),defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",e.string()),id:e.string(),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var vh=e.object({flag:Th.optional(),rules:e.list(Fr)});var Oh=e.object({data:vh,params:e.record(e.string(),e.unknown())});var no=e.object({companyId:e.property("company_id",e.string().optional()),error:e.string().optional(),featureAllocation:e.property("feature_allocation",e.number().optional()),featureUsage:e.property("feature_usage",e.number().optional()),featureUsageEvent:e.property("feature_usage_event",e.string().optional()),featureUsagePeriod:e.property("feature_usage_period",e.string().optional()),featureUsageResetAt:e.property("feature_usage_reset_at",e.date().optional()),flag:e.string(),flagId:e.property("flag_id",e.string().optional()),reason:e.string(),ruleId:e.property("rule_id",e.string().optional()),ruleType:e.property("rule_type",e.string().optional()),userId:e.property("user_id",e.string().optional()),value:e.boolean()});var Bh=e.object({data:no,params:e.record(e.string(),e.unknown())});var jh=e.object({flags:e.list(no)});var kh=e.object({data:jh,params:e.record(e.string(),e.unknown())});var Dh=e.object({featureId:e.property("feature_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Vh=e.object({data:j,params:Dh});var co=e.object({defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",e.stringLiteral("boolean")),id:e.string().optional(),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string()});var Wt=e.object({description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",dh),flag:co.optional(),icon:e.string().optional(),lifecyclePhase:e.property("lifecycle_phase",hh.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional())});var Jt=e.object({description:e.string().optional(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",yh.optional()),flag:co.optional(),icon:e.string().optional(),lifecyclePhase:e.property("lifecycle_phase",zh.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string().optional(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional())});var qh=e.enum_(["company","metric","trait","user","plan","billing_product","crm_product","base_plan"]);var Mh=e.enum_(["all_time","current_month","current_week","current_day"]);var Ah=e.enum_(["first_of_month","billing_cycle"]);var Fh=e.enum_(["eq","ne","gt","gte","lt","lte","is_empty","not_empty"]);var pr=e.object({comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionType:e.property("condition_type",qh),creditCost:e.property("credit_cost",e.number().optional()),creditId:e.property("credit_id",e.string().optional()),eventSubtype:e.property("event_subtype",e.string().optional()),id:e.string().optional(),metricPeriod:e.property("metric_period",Mh.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Ah.optional()),metricValue:e.property("metric_value",e.number().optional()),operator:Fh,resourceIds:e.property("resource_ids",e.list(e.string())),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string().optional())});var po=e.object({conditions:e.list(pr),flagId:e.property("flag_id",e.string().optional()),id:e.string().optional()});var Ih=e.enum_(["global_override","company_override","plan_entitlement","standard","default"]);var Kh=e.object({conditionGroups:e.property("condition_groups",e.list(po)),conditions:e.list(pr),id:e.string().optional(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",Ih.optional()),value:e.boolean()});var $t=e.object({rules:e.list(Kh)});var lo=e.object({ctaText:e.property("cta_text",e.string()),ctaWebSite:e.property("cta_web_site",e.string()),priceText:e.property("price_text",e.string())});var Ge=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Te.optional()),chargeType:e.property("charge_type",e.string()),companyCount:e.property("company_count",e.number()),compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),controlledBy:e.property("controlled_by",e.string()),createdAt:e.property("created_at",e.date()),customPlanConfig:e.property("custom_plan_config",lo.optional()),description:e.string(),entitlements:e.list(ie),features:e.list(W),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(Re).optional()),isCustom:e.property("is_custom",e.boolean()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",I.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",I.optional()),planType:e.property("plan_type",e.string()),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),yearlyPrice:e.property("yearly_price",I.optional())});var mo=e.object({collectAddress:e.property("collect_address",e.boolean()),collectEmail:e.property("collect_email",e.boolean()),collectPhone:e.property("collect_phone",e.boolean())});var Lh=e.object({planEntitlementId:e.property("plan_entitlement_id",e.string()),visible:e.boolean().optional()});var Zt=e.object({entitlements:e.list(Lh).optional(),planId:e.property("plan_id",e.string())});var lr=e.object({bundleId:e.string()});var Gh=e.object({addOns:e.property("add_ons",e.list(Ge)),checkoutSettings:e.property("checkout_settings",mo),customPlanConfig:e.property("custom_plan_config",lo.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),defaultPlan:e.property("default_plan",Ge.optional()),defaultPlanId:e.property("default_plan_id",e.string().optional()),fallbackPlan:e.property("fallback_plan",Ge.optional()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),id:e.string(),initialPlan:e.property("initial_plan",Ge.optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPrice:e.property("initial_plan_price",I.optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOnList:e.property("ordered_add_on_list",e.list(Zt)),orderedBundleList:e.property("ordered_bundle_list",e.list(lr)),orderedPlanList:e.property("ordered_plan_list",e.list(Zt)),plans:e.list(Ge),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetailsForTax:e.property("sync_customer_billing_details_for_tax",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlan:e.property("trial_expiry_plan",Ge.optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPrice:e.property("trial_expiry_plan_price",I.optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var Nh=e.object({data:Gh,params:e.record(e.string(),e.unknown())});var Xh=e.object({compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),sourcePlanId:e.property("source_plan_id",e.string())});var Hh=e.object({entitlementId:e.property("entitlement_id",e.string()),visible:e.boolean().optional()});var Ue=e.object({entitlements:e.list(Hh).optional(),planId:e.property("plan_id",e.string())});var uo=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(Xh)),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutSettings:e.property("checkout_settings",mo),defaultPlanId:e.property("default_plan_id",e.string().optional()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),id:e.string(),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOnIds:e.property("ordered_add_on_ids",e.list(Ue)),planIds:e.property("plan_ids",e.list(Ue)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetailsForTax:e.property("sync_customer_billing_details_for_tax",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var Wh=e.object({data:uo,params:e.record(e.string(),e.unknown())});var Jh=e.object({data:uo,params:e.record(e.string(),e.unknown())});var Yt=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(qe).optional()),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutCollectAddress:e.property("checkout_collect_address",e.boolean()),checkoutCollectEmail:e.property("checkout_collect_email",e.boolean()),checkoutCollectPhone:e.property("checkout_collect_phone",e.boolean()),customPlanConfig:e.property("custom_plan_config",nr.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),enableTaxCollection:e.property("enable_tax_collection",e.boolean()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOns:e.property("ordered_add_ons",e.list(Ue)),orderedBundleList:e.property("ordered_bundle_list",e.list(lr)),orderedPlans:e.property("ordered_plans",e.list(Ue)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetailsForTax:e.property("sync_customer_billing_details_for_tax",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var Qt=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(qe).optional()),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutCollectAddress:e.property("checkout_collect_address",e.boolean()),checkoutCollectEmail:e.property("checkout_collect_email",e.boolean()),checkoutCollectPhone:e.property("checkout_collect_phone",e.boolean()),customPlanConfig:e.property("custom_plan_config",nr.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),enableTaxCollection:e.property("enable_tax_collection",e.boolean()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOns:e.property("ordered_add_ons",e.list(Ue)),orderedBundleList:e.property("ordered_bundle_list",e.list(lr)),orderedPlans:e.property("ordered_plans",e.list(Ue)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetailsForTax:e.property("sync_customer_billing_details_for_tax",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var $h=e.object({apiKeyId:e.property("api_key_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expiredAt:e.property("expired_at",e.date()),id:e.string(),resourceType:e.property("resource_type",e.string()),token:e.string(),updatedAt:e.property("updated_at",e.date())});var Zh=e.object({data:$h,params:e.record(e.string(),e.unknown())});var ei=e.object({lookup:e.record(e.string(),e.string()),resource_type:e.string()});var Yh=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),webhookId:e.property("webhook_id",e.string().optional())});var mr=e.object({creditId:e.property("credit_id",e.string())});var ur=e.object({featureId:e.property("feature_id",e.string())});var _e=e.object({createdAt:e.property("created_at",e.date()),creditTriggerConfigs:e.property("credit_trigger_configs",e.list(mr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(ur).optional()),id:e.string(),name:e.string(),requestTypes:e.property("request_types",e.list(e.string())),secret:e.string(),status:e.string(),updatedAt:e.property("updated_at",e.date()),url:e.string()});var ho=e.object({createdAt:e.property("created_at",e.date()),id:e.string(),payload:e.string().optional(),requestType:e.property("request_type",e.string()),responseCode:e.property("response_code",e.number().optional()),sentAt:e.property("sent_at",e.date().optional()),status:e.string(),updatedAt:e.property("updated_at",e.date()),webhook:_e.optional(),webhookId:e.property("webhook_id",e.string())});var Qh=e.object({data:e.list(ho),params:Yh});var eg=e.object({data:ho,params:e.record(e.string(),e.unknown())});var rg=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),webhookId:e.property("webhook_id",e.string().optional())});var og=e.object({data:j,params:rg});var tg=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var ig=e.object({data:e.list(_e),params:tg});var ag=e.enum_(["company.updated","user.updated","plan.updated","plan.entitlement.updated","company.override.updated","feature.updated","flag.updated","flag_rules.updated","company.created","user.created","plan.created","plan.entitlement.created","company.override.created","feature.created","flag.created","company.deleted","user.deleted","plan.deleted","plan.entitlement.deleted","company.override.deleted","feature.deleted","flag.deleted","test.send","subscription.trial.ended","entitlement.limit.warning","entitlement.limit.reached","entitlement.soft_limit.warning","entitlement.soft_limit.reached","entitlement.tier_limit.warning","entitlement.tier_limit.reached","credit.limit.warning","credit.limit.reached","company.plan_change"]);var sg=e.object({data:_e,params:e.record(e.string(),e.unknown())});var ng=e.object({data:_e,params:e.record(e.string(),e.unknown())});var cg=e.enum_(["company.updated","user.updated","plan.updated","plan.entitlement.updated","company.override.updated","feature.updated","flag.updated","flag_rules.updated","company.created","user.created","plan.created","plan.entitlement.created","company.override.created","feature.created","flag.created","company.deleted","user.deleted","plan.deleted","plan.entitlement.deleted","company.override.deleted","feature.deleted","flag.deleted","test.send","subscription.trial.ended","entitlement.limit.warning","entitlement.limit.reached","entitlement.soft_limit.warning","entitlement.soft_limit.reached","entitlement.tier_limit.warning","entitlement.tier_limit.reached","credit.limit.warning","credit.limit.reached","company.plan_change"]);var pg=e.enum_(["active","inactive"]);var lg=e.object({data:_e,params:e.record(e.string(),e.unknown())});var mg=e.object({data:M,params:e.record(e.string(),e.unknown())});var ug=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var dg=e.object({data:j,params:ug});var ri=e.object({creditTriggerConfigs:e.property("credit_trigger_configs",e.list(mr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(ur).optional()),name:e.string(),requestTypes:e.property("request_types",e.list(ag)),url:e.string()});var oi=e.object({creditTriggerConfigs:e.property("credit_trigger_configs",e.list(mr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(ur).optional()),name:e.string().optional(),requestTypes:e.property("request_types",e.list(cg).optional()),status:pg.optional(),url:e.string().optional()});var a=e.object({error:e.string()});var go=e.object({addOnId:e.property("add_on_id",e.string()),priceId:e.property("price_id",e.string())});var dr=e.object({bundleId:e.property("bundle_id",e.string()),quantity:e.number()});var hr=e.object({priceId:e.property("price_id",e.string()),quantity:e.number()});var ti=e.object({addOnIds:e.property("add_on_ids",e.list(go)),companyId:e.property("company_id",e.string()),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(dr)),newPlanId:e.property("new_plan_id",e.string()),newPriceId:e.property("new_price_id",e.string()),payInAdvance:e.property("pay_in_advance",e.list(hr)),paymentMethodId:e.property("payment_method_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional()),skipTrial:e.property("skip_trial",e.boolean())});var iie=e.object({addOnIds:e.property("add_on_ids",e.list(go)),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(dr)),newPlanId:e.property("new_plan_id",e.string()),newPriceId:e.property("new_price_id",e.string()),payInAdvance:e.property("pay_in_advance",e.list(hr)),paymentMethodId:e.property("payment_method_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional()),skipTrial:e.property("skip_trial",e.boolean())});var ii=e.object({company:e.record(e.string(),e.string()).optional(),user:e.record(e.string(),e.string()).optional()});var nie=e.object({companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),id:e.string(),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string())});var Sie=e.object({activeAddOns:e.property("active_add_ons",e.list(cr)),activePlans:e.property("active_plans",e.list(cr)),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(Le)),addOnCompatibilities:e.property("add_on_compatibilities",e.list(qe)),capabilities:Zr.optional(),checkoutSettings:e.property("checkout_settings",Yr),company:K.optional(),component:we.optional(),creditBundles:e.property("credit_bundles",e.list(Qr)),creditGrants:e.property("credit_grants",e.list(eo)),defaultPlan:e.property("default_plan",ee.optional()),featureUsage:e.property("feature_usage",De.optional()),postTrialPlan:e.property("post_trial_plan",ee.optional()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),stripeEmbed:e.property("stripe_embed",ro.optional()),subscription:Ve.optional(),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional()),upcomingInvoice:e.property("upcoming_invoice",le.optional())});var Eie=e.object({amountOff:e.property("amount_off",e.number()),currency:e.string().optional(),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number()),maxRedemptions:e.property("max_redemptions",e.number()),name:e.string(),percentOff:e.property("percent_off",e.number()),timesRedeemed:e.property("times_redeemed",e.number())});var hg=e.enum_(["all_time","current_month","current_week","current_day"]);var gg=e.enum_(["first_of_month","billing_cycle"]);var wg=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var jie=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",hg.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",gg.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",wg)});var ai=e.object({defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",e.stringLiteral("boolean")),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string()});var yg=e.enum_(["duration","no_expiry","end_of_trial","end_of_billing_period","end_of_next_billing_period"]);var zg=e.enum_(["days","billing_periods"]);var Rg=e.enum_(["monthly","yearly","daily","weekly"]);var bg=e.enum_(["billing_period","first_of_month"]);var fg=e.enum_(["plan_period","no_reset"]);var Xie=e.object({expiryType:e.property("expiry_type",yg.optional()),expiryUnit:e.property("expiry_unit",zg.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),resetCadence:e.property("reset_cadence",Rg),resetStart:e.property("reset_start",bg),resetType:e.property("reset_type",fg.optional())});var Wie=e.object({createdAt:e.property("created_at",e.date()),definitionId:e.property("definition_id",e.string()),entityId:e.property("entity_id",e.string()),entityType:e.property("entity_type",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var $ie=e.object({createdAt:e.property("created_at",e.date()),definitionId:e.property("definition_id",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var Yie=e.object({apiKey:e.property("api_key",e.string().optional()),body:e.record(e.string(),e.unknown()),bodyPreview:e.property("body_preview",e.string()),capturedAt:e.property("captured_at",e.date()),companyId:e.property("company_id",e.string().optional()),enrichedAt:e.property("enriched_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),errorMessage:e.property("error_message",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string())),id:e.string(),loadedAt:e.property("loaded_at",e.date().optional()),processedAt:e.property("processed_at",e.date().optional()),quantity:e.number(),sentAt:e.property("sent_at",e.date().optional()),status:e.string(),subtype:e.string().optional(),type:e.string(),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string().optional())});var eae=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),url:e.string().optional()});var si=e.object({keys:e.record(e.string(),e.string())});var _g=e.object({planId:e.property("plan_id",e.string()),priceId:e.property("price_id",e.string().optional())});var ni=e.object({addOnSelections:e.property("add_on_selections",e.list(_g)),basePlanId:e.property("base_plan_id",e.string().optional()),basePlanPriceId:e.property("base_plan_price_id",e.string().optional()),companyId:e.property("company_id",e.string()),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(dr)),payInAdvanceEntitlements:e.property("pay_in_advance_entitlements",e.list(hr)),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional())});var cae=e.object({displayName:e.property("display_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string())});var lae=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string()),paymentMethodType:e.property("payment_method_type",e.string())});var uae=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),ruleId:e.property("rule_id",e.string()),updatedAt:e.property("updated_at",e.date())});var hae=e.object({comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionGroupId:e.property("condition_group_id",e.string().optional()),conditionType:e.property("condition_type",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),metricValue:e.property("metric_value",e.number().optional()),operator:e.string(),resourceIds:e.property("resource_ids",e.list(e.string())),ruleId:e.property("rule_id",e.string()),traitEntityType:e.property("trait_entity_type",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var wae=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",e.string()),updatedAt:e.property("updated_at",e.date()),value:e.boolean()});var zae=e.object({apiKeyId:e.property("api_key_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expiredAt:e.property("expired_at",e.date()),id:e.string(),resourceType:e.property("resource_type",e.string()),updatedAt:e.property("updated_at",e.date())});var Sg=e.enum_(["all_time","current_month","current_week","current_day"]);var xg=e.enum_(["first_of_month","billing_cycle"]);var Eg=e.enum_(["boolean","credit","numeric","trait","unlimited"]);var Uae=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),metricPeriod:e.property("metric_period",Sg.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",xg.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",Eg)});var vae=e.object({conditionGroups:e.property("condition_groups",e.list(po)),conditions:e.list(pr),name:e.string(),priority:e.number(),value:e.boolean()});var ci=e.object({id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var pi=e.object({incr:e.number().optional(),keys:e.record(e.string(),e.string()),set:e.string().optional(),trait:e.string(),updateOnly:e.property("update_only",e.boolean().optional())});var li=e.object({companies:e.list(e.record(e.string(),e.string())).optional(),company:e.record(e.string(),e.string()).optional(),companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var Dae=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var Ug=e.enum_(["pay_as_you_go","pay_in_advance","overage","credit_burndown","tier"]);var Fae=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),currency:e.string().optional(),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(ge).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),priceBehavior:e.property("price_behavior",Ug.optional()),priceTiers:e.property("price_tiers",e.list(ge).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",e.string().optional()),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(ge).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var Kae=e.object({createdAt:e.property("created_at",e.date()),id:e.string(),payload:e.string().optional(),requestType:e.property("request_type",e.string()),responseCode:e.property("response_code",e.number().optional()),sentAt:e.property("sent_at",e.date().optional()),status:e.string(),updatedAt:e.property("updated_at",e.date()),webhookId:e.property("webhook_id",e.string())});var wo=class{constructor(t={}){this._options=t}listApiKeys(t,o){return b.fromPromise(this.__listApiKeys(t,o))}async __listApiKeys(t,o){let{environmentId:r,requireEnvironment:i,limit:m,offset:g}=t,p={};r!=null&&(p.environment_id=r),p.require_environment=i.toString(),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:tn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-keys.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}createApiKey(t,o){return b.fromPromise(this.__createApiKey(t,o))}async __createApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:rt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:sn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /api-keys.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getApiKey(t,o){return b.fromPromise(this.__getApiKey(t,o))}async __getApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:nn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-keys/{api_key_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateApiKey(t,o={},r){return b.fromPromise(this.__updateApiKey(t,o,r))}async __updateApiKey(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ot.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:cn.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /api-keys/{api_key_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteApiKey(t,o){return b.fromPromise(this.__deleteApiKey(t,o))}async __deleteApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:pn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /api-keys/{api_key_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countApiKeys(t,o){return b.fromPromise(this.__countApiKeys(t,o))}async __countApiKeys(t,o){let{environmentId:r,requireEnvironment:i,limit:m,offset:g}=t,p={};r!=null&&(p.environment_id=r),p.require_environment=i.toString(),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:mn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-keys/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listApiRequests(t={},o){return b.fromPromise(this.__listApiRequests(t,o))}async __listApiRequests(t={},o){let{q:r,requestType:i,environmentId:m,limit:g,offset:p}=t,s={};r!=null&&(s.q=r),i!=null&&(s.request_type=i),m!=null&&(s.environment_id=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-requests"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:dn.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-requests.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}getApiRequest(t,o){return b.fromPromise(this.__getApiRequest(t,o))}async __getApiRequest(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-requests/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:gn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-requests/{api_request_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countApiRequests(t={},o){return b.fromPromise(this.__countApiRequests(t,o))}async __countApiRequests(t={},o){let{q:r,requestType:i,environmentId:m,limit:g,offset:p}=t,s={};r!=null&&(s.q=r),i!=null&&(s.request_type=i),m!=null&&(s.environment_id=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-requests/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:yn.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /api-requests/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}listEnvironments(t={},o){return b.fromPromise(this.__listEnvironments(t,o))}async __listEnvironments(t={},o){let{ids:r,limit:i,offset:m}=t,g={};r!=null&&(Array.isArray(r)?g.ids=r.map(s=>s):g.ids=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"environments"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Rn.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /environments.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}createEnvironment(t,o){return b.fromPromise(this.__createEnvironment(t,o))}async __createEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"environments"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:tt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:_n.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /environments.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEnvironment(t,o){return b.fromPromise(this.__getEnvironment(t,o))}async __getEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Sn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /environments/{environment_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateEnvironment(t,o={},r){return b.fromPromise(this.__updateEnvironment(t,o,r))}async __updateEnvironment(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:it.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:En.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /environments/{environment_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteEnvironment(t,o){return b.fromPromise(this.__deleteEnvironment(t,o))}async __deleteEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Un.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /environments/{environment_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}quickstart(t){return b.fromPromise(this.__quickstart(t))}async __quickstart(t){let o=await(this._options.fetcher??_)({url:(0,ae.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"quickstart"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:Cn.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 400:throw new P(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /quickstart.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var X=H(require("url-join"));var yo=class{constructor(t={}){this._options=t}listCoupons(t={},o){return b.fromPromise(this.__listCoupons(t,o))}async __listCoupons(t={},o){let{isActive:r,q:i,limit:m,offset:g}=t,p={};r!=null&&(p.is_active=r.toString()),i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/coupons"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:vn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/coupons.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertBillingCoupon(t,o){return b.fromPromise(this.__upsertBillingCoupon(t,o))}async __upsertBillingCoupon(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/coupons"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:at.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:On.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/coupons.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingCustomer(t,o){return b.fromPromise(this.__upsertBillingCustomer(t,o))}async __upsertBillingCustomer(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customer/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:st.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:jn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/customer/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCustomersWithSubscriptions(t={},o){return b.fromPromise(this.__listCustomersWithSubscriptions(t,o))}async __listCustomersWithSubscriptions(t={},o){let{companyIds:r,name:i,failedToImport:m,q:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.company_ids=r.map(z=>z):l.company_ids=r),i!=null&&(l.name=i),m!=null&&(l.failed_to_import=m.toString()),g!=null&&(l.q=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customers"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:qn.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/customers.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}countCustomers(t={},o){return b.fromPromise(this.__countCustomers(t,o))}async __countCustomers(t={},o){let{companyIds:r,name:i,failedToImport:m,q:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.company_ids=r.map(z=>z):l.company_ids=r),i!=null&&(l.name=i),m!=null&&(l.failed_to_import=m.toString()),g!=null&&(l.q=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customers/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:An.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/customers/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}listInvoices(t,o){return b.fromPromise(this.__listInvoices(t,o))}async __listInvoices(t,o){let{companyId:r,customerExternalId:i,subscriptionExternalId:m,limit:g,offset:p}=t,s={};r!=null&&(s.company_id=r),s.customer_external_id=i,s.subscription_external_id=m,g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/invoices"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:In.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/invoices.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}upsertInvoice(t,o){return b.fromPromise(this.__upsertInvoice(t,o))}async __upsertInvoice(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/invoices"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:nt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Kn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/invoices.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listMeters(t={},o){return b.fromPromise(this.__listMeters(t,o))}async __listMeters(t={},o){let{displayName:r,limit:i,offset:m}=t,g={};r!=null&&(g.display_name=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/meter"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Gn.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/meter.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}upsertBillingMeter(t,o){return b.fromPromise(this.__upsertBillingMeter(t,o))}async __upsertBillingMeter(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/meter/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ct.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Nn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/meter/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listPaymentMethods(t,o){return b.fromPromise(this.__listPaymentMethods(t,o))}async __listPaymentMethods(t,o){let{companyId:r,customerExternalId:i,limit:m,offset:g}=t,p={};r!=null&&(p.company_id=r),p.customer_external_id=i,m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/payment-methods"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Hn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/payment-methods.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertPaymentMethod(t,o){return b.fromPromise(this.__upsertPaymentMethod(t,o))}async __upsertPaymentMethod(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/payment-methods"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:pt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Wn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/payment-methods.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}searchBillingPrices(t={},o){return b.fromPromise(this.__searchBillingPrices(t,o))}async __searchBillingPrices(t={},o){let{forInitialPlan:r,forTrialExpiryPlan:i,ids:m,productId:g,interval:p,price:s,q:l,requiresPaymentMethod:u,tiersMode:z,usageType:y,limit:C,offset:O}=t,T={};r!=null&&(T.for_initial_plan=r.toString()),i!=null&&(T.for_trial_expiry_plan=i.toString()),m!=null&&(Array.isArray(m)?T.ids=m.map(q=>q):T.ids=m),g!=null&&(T.product_id=g),p!=null&&(T.interval=p),s!=null&&(T.price=s.toString()),l!=null&&(T.q=l),u!=null&&(T.requires_payment_method=u.toString()),z!=null&&(T.tiers_mode=Jn.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})),y!=null&&(T.usage_type=$n.jsonOrThrow(y,{unrecognizedObjectKeys:"strip"})),C!=null&&(T.limit=C.toString()),O!=null&&(T.offset=O.toString());let V=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/price"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:T,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(V.ok)return{data:ec.parseOrThrow(V.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:V.rawResponse};if(V.error.reason==="status-code")switch(V.error.statusCode){case 400:throw new P(a.parseOrThrow(V.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),V.rawResponse);case 401:throw new S(a.parseOrThrow(V.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),V.rawResponse);case 403:throw new x(a.parseOrThrow(V.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),V.rawResponse);case 404:throw new E(a.parseOrThrow(V.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),V.rawResponse);case 500:throw new U(a.parseOrThrow(V.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),V.rawResponse);default:throw new c({statusCode:V.error.statusCode,body:V.error.body,rawResponse:V.rawResponse})}switch(V.error.reason){case"non-json":throw new c({statusCode:V.error.statusCode,body:V.error.rawBody,rawResponse:V.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/price.");case"unknown":throw new c({message:V.error.errorMessage,rawResponse:V.rawResponse})}}upsertBillingPrice(t,o){return b.fromPromise(this.__upsertBillingPrice(t,o))}async __upsertBillingPrice(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/price/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:lt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ic.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/price/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteBillingProduct(t,o){return b.fromPromise(this.__deleteBillingProduct(t,o))}async __deleteBillingProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/product/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ac.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /billing/product/{billing_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listProductPrices(t={},o){return b.fromPromise(this.__listProductPrices(t,o))}async __listProductPrices(t={},o){let{ids:r,name:i,q:m,priceUsageType:g,withoutLinkedToPlan:p,withOneTimeCharges:s,withZeroPrice:l,withPricesOnly:u,isActive:z,limit:y,offset:C}=t,O={};r!=null&&(Array.isArray(r)?O.ids=r.map(V=>V):O.ids=r),i!=null&&(O.name=i),m!=null&&(O.q=m),g!=null&&(O.price_usage_type=sc.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),p!=null&&(O.without_linked_to_plan=p.toString()),s!=null&&(O.with_one_time_charges=s.toString()),l!=null&&(O.with_zero_price=l.toString()),u!=null&&(O.with_prices_only=u.toString()),z!=null&&(O.is_active=z.toString()),y!=null&&(O.limit=y.toString()),C!=null&&(O.offset=C.toString());let T=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/product/prices"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:O,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(T.ok)return{data:pc.parseOrThrow(T.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:T.rawResponse};if(T.error.reason==="status-code")switch(T.error.statusCode){case 400:throw new P(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 401:throw new S(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 403:throw new x(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 404:throw new E(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 500:throw new U(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);default:throw new c({statusCode:T.error.statusCode,body:T.error.body,rawResponse:T.rawResponse})}switch(T.error.reason){case"non-json":throw new c({statusCode:T.error.statusCode,body:T.error.rawBody,rawResponse:T.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/product/prices.");case"unknown":throw new c({message:T.error.errorMessage,rawResponse:T.rawResponse})}}deleteProductPrice(t,o){return b.fromPromise(this.__deleteProductPrice(t,o))}async __deleteProductPrice(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/product/prices/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:lc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /billing/product/prices/{billing_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingProduct(t,o){return b.fromPromise(this.__upsertBillingProduct(t,o))}async __upsertBillingProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/product/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:mt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:mc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/product/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listBillingProducts(t={},o){return b.fromPromise(this.__listBillingProducts(t,o))}async __listBillingProducts(t={},o){let{ids:r,name:i,q:m,priceUsageType:g,withoutLinkedToPlan:p,withOneTimeCharges:s,withZeroPrice:l,withPricesOnly:u,isActive:z,limit:y,offset:C}=t,O={};r!=null&&(Array.isArray(r)?O.ids=r.map(V=>V):O.ids=r),i!=null&&(O.name=i),m!=null&&(O.q=m),g!=null&&(O.price_usage_type=uc.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),p!=null&&(O.without_linked_to_plan=p.toString()),s!=null&&(O.with_one_time_charges=s.toString()),l!=null&&(O.with_zero_price=l.toString()),u!=null&&(O.with_prices_only=u.toString()),z!=null&&(O.is_active=z.toString()),y!=null&&(O.limit=y.toString()),C!=null&&(O.offset=C.toString());let T=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/products"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:O,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(T.ok)return{data:gc.parseOrThrow(T.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:T.rawResponse};if(T.error.reason==="status-code")switch(T.error.statusCode){case 400:throw new P(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 401:throw new S(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 403:throw new x(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 404:throw new E(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 500:throw new U(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);default:throw new c({statusCode:T.error.statusCode,body:T.error.body,rawResponse:T.rawResponse})}switch(T.error.reason){case"non-json":throw new c({statusCode:T.error.statusCode,body:T.error.rawBody,rawResponse:T.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/products.");case"unknown":throw new c({message:T.error.errorMessage,rawResponse:T.rawResponse})}}countBillingProducts(t={},o){return b.fromPromise(this.__countBillingProducts(t,o))}async __countBillingProducts(t={},o){let{ids:r,name:i,q:m,priceUsageType:g,withoutLinkedToPlan:p,withOneTimeCharges:s,withZeroPrice:l,withPricesOnly:u,isActive:z,limit:y,offset:C}=t,O={};r!=null&&(Array.isArray(r)?O.ids=r.map(V=>V):O.ids=r),i!=null&&(O.name=i),m!=null&&(O.q=m),g!=null&&(O.price_usage_type=wc.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),p!=null&&(O.without_linked_to_plan=p.toString()),s!=null&&(O.with_one_time_charges=s.toString()),l!=null&&(O.with_zero_price=l.toString()),u!=null&&(O.with_prices_only=u.toString()),z!=null&&(O.is_active=z.toString()),y!=null&&(O.limit=y.toString()),C!=null&&(O.offset=C.toString());let T=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/products/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:O,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(T.ok)return{data:Rc.parseOrThrow(T.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:T.rawResponse};if(T.error.reason==="status-code")switch(T.error.statusCode){case 400:throw new P(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 401:throw new S(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 403:throw new x(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 404:throw new E(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 500:throw new U(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);default:throw new c({statusCode:T.error.statusCode,body:T.error.body,rawResponse:T.rawResponse})}switch(T.error.reason){case"non-json":throw new c({statusCode:T.error.statusCode,body:T.error.rawBody,rawResponse:T.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/products/count.");case"unknown":throw new c({message:T.error.errorMessage,rawResponse:T.rawResponse})}}upsertBillingSubscription(t,o){return b.fromPromise(this.__upsertBillingSubscription(t,o))}async __upsertBillingSubscription(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/subscription/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ut.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:_c.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/subscription/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var G=H(require("url-join"));var zo=class{constructor(t={}){this._options=t}listBillingCredits(t={},o){return b.fromPromise(this.__listBillingCredits(t,o))}async __listBillingCredits(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(l=>l):p.ids=r),i!=null&&(p.name=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Cc.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}createBillingCredit(t,o){return b.fromPromise(this.__createBillingCredit(t,o))}async __createBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:dt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Oc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/credits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getSingleBillingCredit(t,o){return b.fromPromise(this.__getSingleBillingCredit(t,o))}async __getSingleBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Bc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/{credit_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateBillingCredit(t,o,r){return b.fromPromise(this.__updateBillingCredit(t,o,r))}async __updateBillingCredit(t,o,r){let i=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ht.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Dc.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /billing/credits/{credit_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}softDeleteBillingCredit(t,o){return b.fromPromise(this.__softDeleteBillingCredit(t,o))}async __softDeleteBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /billing/credits/{credit_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCreditBundles(t={},o){return b.fromPromise(this.__listCreditBundles(t,o))}async __listCreditBundles(t={},o){let{ids:r,creditId:i,status:m,bundleType:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(z=>z):l.ids=r),i!=null&&(l.credit_id=i),m!=null&&(l.status=qc.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(l.bundle_type=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Fc.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/bundles.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createCreditBundle(t,o){return b.fromPromise(this.__createCreditBundle(t,o))}async __createCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:gt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Gc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/credits/bundles.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCreditBundle(t,o){return b.fromPromise(this.__getCreditBundle(t,o))}async __getCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Nc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCreditBundleDetails(t,o,r){return b.fromPromise(this.__updateCreditBundleDetails(t,o,r))}async __updateCreditBundleDetails(t,o,r){let i=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:wt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Jc.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteCreditBundle(t,o){return b.fromPromise(this.__deleteCreditBundle(t,o))}async __deleteCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:$c.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countCreditBundles(t={},o){return b.fromPromise(this.__countCreditBundles(t,o))}async __countCreditBundles(t={},o){let{ids:r,creditId:i,status:m,bundleType:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(z=>z):l.ids=r),i!=null&&(l.credit_id=i),m!=null&&(l.status=Zc.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(l.bundle_type=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:ep.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/bundles/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}countBillingCredits(t={},o){return b.fromPromise(this.__countBillingCredits(t,o))}async __countBillingCredits(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(l=>l):p.ids=r),i!=null&&(p.name=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:op.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}zeroOutGrant(t,o={},r){return b.fromPromise(this.__zeroOutGrant(t,o,r))}async __zeroOutGrant(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/grants/${encodeURIComponent(t)}/zero-out`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:yt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:ip.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /billing/credits/grants/{grant_id}/zero-out.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}grantBillingCreditsToCompany(t,o){return b.fromPromise(this.__grantBillingCreditsToCompany(t,o))}async __grantBillingCreditsToCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/company"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:zt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:np.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/credits/grants/company.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCompanyGrants(t={},o){return b.fromPromise(this.__listCompanyGrants(t,o))}async __listCompanyGrants(t={},o){let{companyId:r,order:i,dir:m,limit:g,offset:p}=t,s={};r!=null&&(s.company_id=r),i!=null&&(s.order=cp.jsonOrThrow(i,{unrecognizedObjectKeys:"strip"})),m!=null&&(s.dir=pp.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/company/list"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:dp.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/grants/company/list.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}countBillingCreditsGrants(t={},o){return b.fromPromise(this.__countBillingCreditsGrants(t,o))}async __countBillingCreditsGrants(t={},o){let{creditId:r,ids:i,limit:m,offset:g}=t,p={};r!=null&&(p.credit_id=r),i!=null&&(Array.isArray(i)?p.ids=i.map(l=>l):p.ids=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:gp.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/grants/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listGrantsForCredit(t={},o){return b.fromPromise(this.__listGrantsForCredit(t,o))}async __listGrantsForCredit(t={},o){let{creditId:r,ids:i,limit:m,offset:g}=t,p={};r!=null&&(p.credit_id=r),i!=null&&(Array.isArray(i)?p.ids=i.map(l=>l):p.ids=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/list"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:yp.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/grants/list.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}getEnrichedCreditLedger(t,o){return b.fromPromise(this.__getEnrichedCreditLedger(t,o))}async __getEnrichedCreditLedger(t,o){let{companyId:r,billingCreditId:i,featureId:m,period:g,startTime:p,endTime:s,limit:l,offset:u}=t,z={};z.company_id=r,i!=null&&(z.billing_credit_id=i),m!=null&&(z.feature_id=m),z.period=zp.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"}),p!=null&&(z.start_time=p),s!=null&&(z.end_time=s),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/ledger"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:Ep.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/ledger.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}countCreditLedger(t,o){return b.fromPromise(this.__countCreditLedger(t,o))}async __countCreditLedger(t,o){let{companyId:r,billingCreditId:i,featureId:m,period:g,startTime:p,endTime:s,limit:l,offset:u}=t,z={};z.company_id=r,i!=null&&(z.billing_credit_id=i),m!=null&&(z.feature_id=m),z.period=Up.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"}),p!=null&&(z.start_time=p),s!=null&&(z.end_time=s),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/ledger/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:Tp.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/ledger/count.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}listBillingPlanCreditGrants(t={},o){return b.fromPromise(this.__listBillingPlanCreditGrants(t,o))}async __listBillingPlanCreditGrants(t={},o){let{creditId:r,planId:i,planIds:m,ids:g,limit:p,offset:s}=t,l={};r!=null&&(l.credit_id=r),i!=null&&(l.plan_id=i),m!=null&&(Array.isArray(m)?l.plan_ids=m.map(z=>z):l.plan_ids=m),g!=null&&(Array.isArray(g)?l.ids=g.map(z=>z):l.ids=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Op.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/plan-grants.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createBillingPlanCreditGrant(t,o){return b.fromPromise(this.__createBillingPlanCreditGrant(t,o))}async __createBillingPlanCreditGrant(t,o){let r=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Rt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ap.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /billing/credits/plan-grants.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateBillingPlanCreditGrant(t,o,r){return b.fromPromise(this.__updateBillingPlanCreditGrant(t,o,r))}async __updateBillingPlanCreditGrant(t,o,r){let i=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/plan-grants/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:bt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Np.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /billing/credits/plan-grants/{plan_grant_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteBillingPlanCreditGrant(t,o={},r){return b.fromPromise(this.__deleteBillingPlanCreditGrant(t,o,r))}async __deleteBillingPlanCreditGrant(t,o={},r){let{applyToExisting:i}=o,m={};i!=null&&(m.apply_to_existing=i.toString());let g=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/plan-grants/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",queryParameters:m,requestType:"json",timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(g.ok)return{data:Hp.parseOrThrow(g.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:g.rawResponse};if(g.error.reason==="status-code")switch(g.error.statusCode){case 400:throw new P(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 401:throw new S(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 403:throw new x(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 404:throw new E(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 500:throw new U(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);default:throw new c({statusCode:g.error.statusCode,body:g.error.body,rawResponse:g.rawResponse})}switch(g.error.reason){case"non-json":throw new c({statusCode:g.error.statusCode,body:g.error.rawBody,rawResponse:g.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /billing/credits/plan-grants/{plan_grant_id}.");case"unknown":throw new c({message:g.error.errorMessage,rawResponse:g.rawResponse})}}countBillingPlanCreditGrants(t={},o){return b.fromPromise(this.__countBillingPlanCreditGrants(t,o))}async __countBillingPlanCreditGrants(t={},o){let{creditId:r,planId:i,planIds:m,ids:g,limit:p,offset:s}=t,l={};r!=null&&(l.credit_id=r),i!=null&&(l.plan_id=i),m!=null&&(Array.isArray(m)?l.plan_ids=m.map(z=>z):l.plan_ids=m),g!=null&&(Array.isArray(g)?l.ids=g.map(z=>z):l.ids=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,G.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Jp.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /billing/credits/plan-grants/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Ne=H(require("url-join"));var Ro=class{constructor(t={}){this._options=t}internal(t,o){return b.fromPromise(this.__internal(t,o))}async __internal(t,o){let r=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ti.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Zp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /checkout-internal.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCheckoutData(t,o){return b.fromPromise(this.__getCheckoutData(t,o))}async __getCheckoutData(t,o){let r=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal/data"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:_t.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:hl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /checkout-internal/data.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}previewCheckoutInternal(t,o){return b.fromPromise(this.__previewCheckoutInternal(t,o))}async __previewCheckoutInternal(t,o){let r=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal/preview"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ti.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:yl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /checkout-internal/preview.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}managePlan(t,o){return b.fromPromise(this.__managePlan(t,o))}async __managePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"manage-plan"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ni.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Rl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /manage-plan.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}previewManagePlan(t,o){return b.fromPromise(this.__previewManagePlan(t,o))}async __previewManagePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"manage-plan/preview"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ni.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:fl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /manage-plan/preview.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCustomerSubscriptionTrialEnd(t,o={},r){return b.fromPromise(this.__updateCustomerSubscriptionTrialEnd(t,o,r))}async __updateCustomerSubscriptionTrialEnd(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,Ne.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`subscription/${encodeURIComponent(t)}/edit-trial-end`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:St.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:_l.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /subscription/{subscription_id}/edit-trial-end.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var D=H(require("url-join"));var bo=class{constructor(t={}){this._options=t}listCompanies(t={},o){return b.fromPromise(this.__listCompanies(t,o))}async __listCompanies(t={},o){let{ids:r,planId:i,q:m,withoutFeatureOverrideFor:g,withoutPlan:p,withSubscription:s,limit:l,offset:u}=t,z={};r!=null&&(Array.isArray(r)?z.ids=r.map(C=>C):z.ids=r),i!=null&&(z.plan_id=i),m!=null&&(z.q=m),g!=null&&(z.without_feature_override_for=g),p!=null&&(z.without_plan=p.toString()),s!=null&&(z.with_subscription=s.toString()),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:xl.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}upsertCompany(t,o){return b.fromPromise(this.__upsertCompany(t,o))}async __upsertCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ci.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:El.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /companies.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCompany(t,o){return b.fromPromise(this.__getCompany(t,o))}async __getCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`companies/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ul.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies/{company_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompany(t,o={},r){return b.fromPromise(this.__deleteCompany(t,o,r))}async __deleteCompany(t,o={},r){let{cancelSubscription:i,prorate:m}=o,g={};i!=null&&(g.cancel_subscription=i.toString()),m!=null&&(g.prorate=m.toString());let p=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`companies/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(p.ok)return{data:Cl.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /companies/{company_id}.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}countCompanies(t={},o){return b.fromPromise(this.__countCompanies(t,o))}async __countCompanies(t={},o){let{ids:r,planId:i,q:m,withoutFeatureOverrideFor:g,withoutPlan:p,withSubscription:s,limit:l,offset:u}=t,z={};r!=null&&(Array.isArray(r)?z.ids=r.map(C=>C):z.ids=r),i!=null&&(z.plan_id=i),m!=null&&(z.q=m),g!=null&&(z.without_feature_override_for=g),p!=null&&(z.without_plan=p.toString()),s!=null&&(z.with_subscription=s.toString()),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:vl.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies/count.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}countCompaniesForAdvancedFilter(t={},o){return b.fromPromise(this.__countCompaniesForAdvancedFilter(t,o))}async __countCompaniesForAdvancedFilter(t={},o){let{ids:r,planIds:i,featureIds:m,creditTypeIds:g,subscriptionStatuses:p,subscriptionTypes:s,monetizedSubscriptions:l,q:u,withoutPlan:z,withoutSubscription:y,sortOrderColumn:C,sortOrderDirection:O,displayProperties:T,limit:V,offset:q}=t,v={};r!=null&&(Array.isArray(r)?v.ids=r.map(L=>L):v.ids=r),i!=null&&(Array.isArray(i)?v.plan_ids=i.map(L=>L):v.plan_ids=i),m!=null&&(Array.isArray(m)?v.feature_ids=m.map(L=>L):v.feature_ids=m),g!=null&&(Array.isArray(g)?v.credit_type_ids=g.map(L=>L):v.credit_type_ids=g),p!=null&&(Array.isArray(p)?v.subscription_statuses=p.map(L=>L):v.subscription_statuses=p),s!=null&&(Array.isArray(s)?v.subscription_types=s.map(L=>L):v.subscription_types=s),l!=null&&(v.monetized_subscriptions=l.toString()),u!=null&&(v.q=u),z!=null&&(v.without_plan=z.toString()),y!=null&&(v.without_subscription=y.toString()),C!=null&&(v.sort_order_column=C),O!=null&&(v.sort_order_direction=Ol.jsonOrThrow(O,{unrecognizedObjectKeys:"strip"})),T!=null&&(Array.isArray(T)?v.display_properties=T.map(L=>L):v.display_properties=T),V!=null&&(v.limit=V.toString()),q!=null&&(v.offset=q.toString());let B=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/count2"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:v,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(B.ok)return{data:kl.parseOrThrow(B.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:B.rawResponse};if(B.error.reason==="status-code")switch(B.error.statusCode){case 400:throw new P(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 401:throw new S(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 403:throw new x(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 404:throw new E(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 500:throw new U(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);default:throw new c({statusCode:B.error.statusCode,body:B.error.body,rawResponse:B.rawResponse})}switch(B.error.reason){case"non-json":throw new c({statusCode:B.error.statusCode,body:B.error.rawBody,rawResponse:B.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies/count2.");case"unknown":throw new c({message:B.error.errorMessage,rawResponse:B.rawResponse})}}createCompany(t,o){return b.fromPromise(this.__createCompany(t,o))}async __createCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/create"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ci.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Dl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /companies/create.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompanyByKeys(t,o){return b.fromPromise(this.__deleteCompanyByKeys(t,o))}async __deleteCompanyByKeys(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/delete"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:si.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /companies/delete.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCompaniesForAdvancedFilter(t={},o){return b.fromPromise(this.__listCompaniesForAdvancedFilter(t,o))}async __listCompaniesForAdvancedFilter(t={},o){let{ids:r,planIds:i,featureIds:m,creditTypeIds:g,subscriptionStatuses:p,subscriptionTypes:s,monetizedSubscriptions:l,q:u,withoutPlan:z,withoutSubscription:y,sortOrderColumn:C,sortOrderDirection:O,displayProperties:T,limit:V,offset:q}=t,v={};r!=null&&(Array.isArray(r)?v.ids=r.map(L=>L):v.ids=r),i!=null&&(Array.isArray(i)?v.plan_ids=i.map(L=>L):v.plan_ids=i),m!=null&&(Array.isArray(m)?v.feature_ids=m.map(L=>L):v.feature_ids=m),g!=null&&(Array.isArray(g)?v.credit_type_ids=g.map(L=>L):v.credit_type_ids=g),p!=null&&(Array.isArray(p)?v.subscription_statuses=p.map(L=>L):v.subscription_statuses=p),s!=null&&(Array.isArray(s)?v.subscription_types=s.map(L=>L):v.subscription_types=s),l!=null&&(v.monetized_subscriptions=l.toString()),u!=null&&(v.q=u),z!=null&&(v.without_plan=z.toString()),y!=null&&(v.without_subscription=y.toString()),C!=null&&(v.sort_order_column=C),O!=null&&(v.sort_order_direction=ql.jsonOrThrow(O,{unrecognizedObjectKeys:"strip"})),T!=null&&(Array.isArray(T)?v.display_properties=T.map(L=>L):v.display_properties=T),V!=null&&(v.limit=V.toString()),q!=null&&(v.offset=q.toString());let B=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/list2"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:v,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(B.ok)return{data:Ll.parseOrThrow(B.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:B.rawResponse};if(B.error.reason==="status-code")switch(B.error.statusCode){case 400:throw new P(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 401:throw new S(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 403:throw new x(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 404:throw new E(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);case 500:throw new U(a.parseOrThrow(B.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),B.rawResponse);default:throw new c({statusCode:B.error.statusCode,body:B.error.body,rawResponse:B.rawResponse})}switch(B.error.reason){case"non-json":throw new c({statusCode:B.error.statusCode,body:B.error.rawBody,rawResponse:B.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies/list2.");case"unknown":throw new c({message:B.error.errorMessage,rawResponse:B.rawResponse})}}lookupCompany(t,o){return b.fromPromise(this.__lookupCompany(t,o))}async __lookupCompany(t,o){let{keys:r}=t,i={};i.keys=pe(r);let m=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/lookup"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:Nl.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /companies/lookup.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}getActiveDeals(t,o){return b.fromPromise(this.__getActiveDeals(t,o))}async __getActiveDeals(t,o){let{companyId:r,dealStage:i,limit:m,offset:g}=t,p={};p.company_id=r,p.deal_stage=i,m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-crm-deals"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Jl.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-crm-deals.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listCompanyMemberships(t={},o){return b.fromPromise(this.__listCompanyMemberships(t,o))}async __listCompanyMemberships(t={},o){let{companyId:r,userId:i,limit:m,offset:g}=t,p={};r!=null&&(p.company_id=r),i!=null&&(p.user_id=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-memberships"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Zl.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-memberships.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}getOrCreateCompanyMembership(t,o){return b.fromPromise(this.__getOrCreateCompanyMembership(t,o))}async __getOrCreateCompanyMembership(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-memberships"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Et.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Yl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /company-memberships.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompanyMembership(t,o){return b.fromPromise(this.__deleteCompanyMembership(t,o))}async __deleteCompanyMembership(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-memberships/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ql.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /company-memberships/{company_membership_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getActiveCompanySubscription(t={},o){return b.fromPromise(this.__getActiveCompanySubscription(t,o))}async __getActiveCompanySubscription(t={},o){let{companyId:r,companyIds:i,limit:m,offset:g}=t,p={};r!=null&&(p.company_id=r),i!=null&&(Array.isArray(i)?p.company_ids=i.map(l=>l):p.company_ids=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-subscriptions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:rm.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-subscriptions.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertCompanyTrait(t,o){return b.fromPromise(this.__upsertCompanyTrait(t,o))}async __upsertCompanyTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:pi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:om.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /company-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listEntityKeyDefinitions(t={},o){return b.fromPromise(this.__listEntityKeyDefinitions(t,o))}async __listEntityKeyDefinitions(t={},o){let{entityType:r,ids:i,q:m,limit:g,offset:p}=t,s={};r!=null&&(s.entity_type=tm.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-key-definitions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:sm.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-key-definitions.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}countEntityKeyDefinitions(t={},o){return b.fromPromise(this.__countEntityKeyDefinitions(t,o))}async __countEntityKeyDefinitions(t={},o){let{entityType:r,ids:i,q:m,limit:g,offset:p}=t,s={};r!=null&&(s.entity_type=nm.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-key-definitions/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:lm.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-key-definitions/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}listEntityTraitDefinitions(t={},o){return b.fromPromise(this.__listEntityTraitDefinitions(t,o))}async __listEntityTraitDefinitions(t={},o){let{entityType:r,ids:i,q:m,traitType:g,limit:p,offset:s}=t,l={};r!=null&&(l.entity_type=mm.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?l.ids=i.map(z=>z):l.ids=i),m!=null&&(l.q=m),g!=null&&(l.trait_type=um.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:wm.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-trait-definitions.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}getOrCreateEntityTraitDefinition(t,o){return b.fromPromise(this.__getOrCreateEntityTraitDefinition(t,o))}async __getOrCreateEntityTraitDefinition(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ut.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Rm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /entity-trait-definitions.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEntityTraitDefinition(t,o){return b.fromPromise(this.__getEntityTraitDefinition(t,o))}async __getEntityTraitDefinition(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`entity-trait-definitions/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:bm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-trait-definitions/{entity_trait_definition_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateEntityTraitDefinition(t,o,r){return b.fromPromise(this.__updateEntityTraitDefinition(t,o,r))}async __updateEntityTraitDefinition(t,o,r){let i=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`entity-trait-definitions/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Pt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:_m.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /entity-trait-definitions/{entity_trait_definition_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}countEntityTraitDefinitions(t={},o){return b.fromPromise(this.__countEntityTraitDefinitions(t,o))}async __countEntityTraitDefinitions(t={},o){let{entityType:r,ids:i,q:m,traitType:g,limit:p,offset:s}=t,l={};r!=null&&(l.entity_type=Sm.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?l.ids=i.map(z=>z):l.ids=i),m!=null&&(l.q=m),g!=null&&(l.trait_type=xm.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Cm.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-trait-definitions/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}getEntityTraitValues(t,o){return b.fromPromise(this.__getEntityTraitValues(t,o))}async __getEntityTraitValues(t,o){let{definitionId:r,q:i,limit:m,offset:g}=t,p={};p.definition_id=r,i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-values"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Om.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /entity-trait-values.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listPlanChanges(t={},o){return b.fromPromise(this.__listPlanChanges(t,o))}async __listPlanChanges(t={},o){let{action:r,basePlanAction:i,companyId:m,companyIds:g,planIds:p,limit:s,offset:l}=t,u={};r!=null&&(u.action=r),i!=null&&(u.base_plan_action=i),m!=null&&(u.company_id=m),g!=null&&(Array.isArray(g)?u.company_ids=g.map(y=>y):u.company_ids=g),p!=null&&(Array.isArray(p)?u.plan_ids=p.map(y=>y):u.plan_ids=p),s!=null&&(u.limit=s.toString()),l!=null&&(u.offset=l.toString());let z=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-changes"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Mm.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-changes.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}getPlanChange(t,o){return b.fromPromise(this.__getPlanChange(t,o))}async __getPlanChange(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-changes/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Am.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-changes/{plan_change_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listPlanTraits(t={},o){return b.fromPromise(this.__listPlanTraits(t,o))}async __listPlanTraits(t={},o){let{ids:r,planId:i,traitId:m,traitIds:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(z=>z):l.ids=r),i!=null&&(l.plan_id=i),m!=null&&(l.trait_id=m),g!=null&&(Array.isArray(g)?l.trait_ids=g.map(z=>z):l.trait_ids=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Im.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-traits.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createPlanTrait(t,o){return b.fromPromise(this.__createPlanTrait(t,o))}async __createPlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ct.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Km.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /plan-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlanTrait(t,o){return b.fromPromise(this.__getPlanTrait(t,o))}async __getPlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Lm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanTrait(t,o,r){return b.fromPromise(this.__updatePlanTrait(t,o,r))}async __updatePlanTrait(t,o,r){let i=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Tt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Gm.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlanTrait(t,o){return b.fromPromise(this.__deletePlanTrait(t,o))}async __deletePlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Nm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanTraitsBulk(t,o){return b.fromPromise(this.__updatePlanTraitsBulk(t,o))}async __updatePlanTraitsBulk(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits/bulk"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:vt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Xm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /plan-traits/bulk.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countPlanTraits(t={},o){return b.fromPromise(this.__countPlanTraits(t,o))}async __countPlanTraits(t={},o){let{ids:r,planId:i,traitId:m,traitIds:g,limit:p,offset:s}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(z=>z):l.ids=r),i!=null&&(l.plan_id=i),m!=null&&(l.trait_id=m),g!=null&&(Array.isArray(g)?l.trait_ids=g.map(z=>z):l.trait_ids=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Wm.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-traits/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}upsertUserTrait(t,o){return b.fromPromise(this.__upsertUserTrait(t,o))}async __upsertUserTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"user-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:pi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Jm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /user-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listUsers(t={},o){return b.fromPromise(this.__listUsers(t,o))}async __listUsers(t={},o){let{companyId:r,ids:i,planId:m,q:g,limit:p,offset:s}=t,l={};r!=null&&(l.company_id=r),i!=null&&(Array.isArray(i)?l.ids=i.map(z=>z):l.ids=i),m!=null&&(l.plan_id=m),g!=null&&(l.q=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Zm.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /users.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}upsertUser(t,o){return b.fromPromise(this.__upsertUser(t,o))}async __upsertUser(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:li.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ym.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /users.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getUser(t,o){return b.fromPromise(this.__getUser(t,o))}async __getUser(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`users/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Qm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /users/{user_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteUser(t,o){return b.fromPromise(this.__deleteUser(t,o))}async __deleteUser(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`users/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:eu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /users/{user_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countUsers(t={},o){return b.fromPromise(this.__countUsers(t,o))}async __countUsers(t={},o){let{companyId:r,ids:i,planId:m,q:g,limit:p,offset:s}=t,l={};r!=null&&(l.company_id=r),i!=null&&(Array.isArray(i)?l.ids=i.map(z=>z):l.ids=i),m!=null&&(l.plan_id=m),g!=null&&(l.q=g),p!=null&&(l.limit=p.toString()),s!=null&&(l.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:ou.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /users/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createUser(t,o){return b.fromPromise(this.__createUser(t,o))}async __createUser(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/create"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:li.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:tu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /users/create.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteUserByKeys(t,o){return b.fromPromise(this.__deleteUserByKeys(t,o))}async __deleteUserByKeys(t,o){let r=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/delete"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:si.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:iu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /users/delete.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}lookupUser(t,o){return b.fromPromise(this.__lookupUser(t,o))}async __lookupUser(t,o){let{keys:r}=t,i={};i.keys=pe(r);let m=await(this._options.fetcher??_)({url:(0,D.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/lookup"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:su.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /users/lookup.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var J=H(require("url-join"));var fo=class{constructor(t={}){this._options=t}listCompanyOverrides(t={},o){return b.fromPromise(this.__listCompanyOverrides(t,o))}async __listCompanyOverrides(t={},o){let{companyId:r,companyIds:i,featureId:m,featureIds:g,ids:p,withoutExpired:s,q:l,limit:u,offset:z}=t,y={};r!=null&&(y.company_id=r),i!=null&&(Array.isArray(i)?y.company_ids=i.map(O=>O):y.company_ids=i),m!=null&&(y.feature_id=m),g!=null&&(Array.isArray(g)?y.feature_ids=g.map(O=>O):y.feature_ids=g),p!=null&&(Array.isArray(p)?y.ids=p.map(O=>O):y.ids=p),s!=null&&(y.without_expired=s.toString()),l!=null&&(y.q=l),u!=null&&(y.limit=u.toString()),z!=null&&(y.offset=z.toString());let C=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:pu.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-overrides.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}createCompanyOverride(t,o){return b.fromPromise(this.__createCompanyOverride(t,o))}async __createCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ot.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:du.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /company-overrides.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCompanyOverride(t,o){return b.fromPromise(this.__getCompanyOverride(t,o))}async __getCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:hu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-overrides/{company_override_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCompanyOverride(t,o,r){return b.fromPromise(this.__updateCompanyOverride(t,o,r))}async __updateCompanyOverride(t,o,r){let i=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Bt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:zu.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /company-overrides/{company_override_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteCompanyOverride(t,o){return b.fromPromise(this.__deleteCompanyOverride(t,o))}async __deleteCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ru.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /company-overrides/{company_override_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countCompanyOverrides(t={},o){return b.fromPromise(this.__countCompanyOverrides(t,o))}async __countCompanyOverrides(t={},o){let{companyId:r,companyIds:i,featureId:m,featureIds:g,ids:p,withoutExpired:s,q:l,limit:u,offset:z}=t,y={};r!=null&&(y.company_id=r),i!=null&&(Array.isArray(i)?y.company_ids=i.map(O=>O):y.company_ids=i),m!=null&&(y.feature_id=m),g!=null&&(Array.isArray(g)?y.feature_ids=g.map(O=>O):y.feature_ids=g),p!=null&&(Array.isArray(p)?y.ids=p.map(O=>O):y.ids=p),s!=null&&(y.without_expired=s.toString()),l!=null&&(y.q=l),u!=null&&(y.limit=u.toString()),z!=null&&(y.offset=z.toString());let C=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:fu.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /company-overrides/count.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}listFeatureCompanies(t,o){return b.fromPromise(this.__listFeatureCompanies(t,o))}async __listFeatureCompanies(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,p={};p.feature_id=r,i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-companies"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Pu.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-companies.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}countFeatureCompanies(t,o){return b.fromPromise(this.__countFeatureCompanies(t,o))}async __countFeatureCompanies(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,p={};p.feature_id=r,i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-companies/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Tu.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-companies/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listFeatureUsage(t={},o){return b.fromPromise(this.__listFeatureUsage(t,o))}async __listFeatureUsage(t={},o){let{companyId:r,companyKeys:i,featureIds:m,q:g,withoutNegativeEntitlements:p,limit:s,offset:l}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.company_keys=pe(i)),m!=null&&(Array.isArray(m)?u.feature_ids=m.map(y=>y):u.feature_ids=m),g!=null&&(u.q=g),p!=null&&(u.without_negative_entitlements=p.toString()),s!=null&&(u.limit=s.toString()),l!=null&&(u.offset=l.toString());let z=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-usage"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Ou.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-usage.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}countFeatureUsage(t={},o){return b.fromPromise(this.__countFeatureUsage(t,o))}async __countFeatureUsage(t={},o){let{companyId:r,companyKeys:i,featureIds:m,q:g,withoutNegativeEntitlements:p,limit:s,offset:l}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.company_keys=pe(i)),m!=null&&(Array.isArray(m)?u.feature_ids=m.map(y=>y):u.feature_ids=m),g!=null&&(u.q=g),p!=null&&(u.without_negative_entitlements=p.toString()),s!=null&&(u.limit=s.toString()),l!=null&&(u.offset=l.toString());let z=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-usage/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:ju.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-usage/count.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}listFeatureUsers(t,o){return b.fromPromise(this.__listFeatureUsers(t,o))}async __listFeatureUsers(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,p={};p.feature_id=r,i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-users"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:qu.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-users.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}countFeatureUsers(t,o){return b.fromPromise(this.__countFeatureUsers(t,o))}async __countFeatureUsers(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,p={};p.feature_id=r,i!=null&&(p.q=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-users/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Au.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /feature-users/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listPlanEntitlements(t={},o){return b.fromPromise(this.__listPlanEntitlements(t,o))}async __listPlanEntitlements(t={},o){let{featureId:r,featureIds:i,ids:m,planId:g,planIds:p,q:s,withMeteredProducts:l,limit:u,offset:z}=t,y={};r!=null&&(y.feature_id=r),i!=null&&(Array.isArray(i)?y.feature_ids=i.map(O=>O):y.feature_ids=i),m!=null&&(Array.isArray(m)?y.ids=m.map(O=>O):y.ids=m),g!=null&&(y.plan_id=g),p!=null&&(Array.isArray(p)?y.plan_ids=p.map(O=>O):y.plan_ids=p),s!=null&&(y.q=s),l!=null&&(y.with_metered_products=l.toString()),u!=null&&(y.limit=u.toString()),z!=null&&(y.offset=z.toString());let C=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:Iu.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-entitlements.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}createPlanEntitlement(t,o){return b.fromPromise(this.__createPlanEntitlement(t,o))}async __createPlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:jt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Xu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /plan-entitlements.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlanEntitlement(t,o){return b.fromPromise(this.__getPlanEntitlement(t,o))}async __getPlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Hu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanEntitlement(t,o,r){return b.fromPromise(this.__updatePlanEntitlement(t,o,r))}async __updatePlanEntitlement(t,o,r){let i=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:kt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Yu.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlanEntitlement(t,o){return b.fromPromise(this.__deletePlanEntitlement(t,o))}async __deletePlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Qu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countPlanEntitlements(t={},o){return b.fromPromise(this.__countPlanEntitlements(t,o))}async __countPlanEntitlements(t={},o){let{featureId:r,featureIds:i,ids:m,planId:g,planIds:p,q:s,withMeteredProducts:l,limit:u,offset:z}=t,y={};r!=null&&(y.feature_id=r),i!=null&&(Array.isArray(i)?y.feature_ids=i.map(O=>O):y.feature_ids=i),m!=null&&(Array.isArray(m)?y.ids=m.map(O=>O):y.ids=m),g!=null&&(y.plan_id=g),p!=null&&(Array.isArray(p)?y.plan_ids=p.map(O=>O):y.plan_ids=p),s!=null&&(y.q=s),l!=null&&(y.with_metered_products=l.toString()),u!=null&&(y.limit=u.toString()),z!=null&&(y.offset=z.toString());let C=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:rd.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-entitlements/count.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}getFeatureUsageByCompany(t,o){return b.fromPromise(this.__getFeatureUsageByCompany(t,o))}async __getFeatureUsageByCompany(t,o){let{keys:r}=t,i={};i.keys=pe(r);let m=await(this._options.fetcher??_)({url:(0,J.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"usage-by-company"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:td.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /usage-by-company.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Se=H(require("url-join"));var _o=class{constructor(t={}){this._options=t}updateCompanyPlans(t,o,r){return b.fromPromise(this.__updateCompanyPlans(t,o,r))}async __updateCompanyPlans(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-plans/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Dt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:id.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /company-plans/{company_plan_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}listPlans(t={},o){return b.fromPromise(this.__listPlans(t,o))}async __listPlans(t={},o){let{companyId:r,forFallbackPlan:i,forInitialPlan:m,forTrialExpiryPlan:g,hasProductId:p,ids:s,planType:l,q:u,requiresPaymentMethod:z,withoutEntitlementFor:y,withoutProductId:C,withoutPaidProductId:O,limit:T,offset:V}=t,q={};r!=null&&(q.company_id=r),i!=null&&(q.for_fallback_plan=i.toString()),m!=null&&(q.for_initial_plan=m.toString()),g!=null&&(q.for_trial_expiry_plan=g.toString()),p!=null&&(q.has_product_id=p.toString()),s!=null&&(Array.isArray(s)?q.ids=s.map(B=>B):q.ids=s),l!=null&&(q.plan_type=ad.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),u!=null&&(q.q=u),z!=null&&(q.requires_payment_method=z.toString()),y!=null&&(q.without_entitlement_for=y),C!=null&&(q.without_product_id=C.toString()),O!=null&&(q.without_paid_product_id=O.toString()),T!=null&&(q.limit=T.toString()),V!=null&&(q.offset=V.toString());let v=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:q,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(v.ok)return{data:cd.parseOrThrow(v.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:v.rawResponse};if(v.error.reason==="status-code")switch(v.error.statusCode){case 400:throw new P(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 401:throw new S(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 403:throw new x(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 404:throw new E(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 500:throw new U(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);default:throw new c({statusCode:v.error.statusCode,body:v.error.body,rawResponse:v.rawResponse})}switch(v.error.reason){case"non-json":throw new c({statusCode:v.error.statusCode,body:v.error.rawBody,rawResponse:v.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plans.");case"unknown":throw new c({message:v.error.errorMessage,rawResponse:v.rawResponse})}}createPlan(t,o){return b.fromPromise(this.__createPlan(t,o))}async __createPlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Vt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ld.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /plans.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlan(t,o){return b.fromPromise(this.__getPlan(t,o))}async __getPlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:md.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plans/{plan_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlan(t,o,r){return b.fromPromise(this.__updatePlan(t,o,r))}async __updatePlan(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:qt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:ud.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plans/{plan_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlan(t,o){return b.fromPromise(this.__deletePlan(t,o))}async __deletePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:dd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /plans/{plan_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingProductPlan(t,o,r){return b.fromPromise(this.__upsertBillingProductPlan(t,o,r))}async __upsertBillingProductPlan(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}/billing_products`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Mt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:wd.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plans/{plan_id}/billing_products.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}countPlans(t={},o){return b.fromPromise(this.__countPlans(t,o))}async __countPlans(t={},o){let{companyId:r,forFallbackPlan:i,forInitialPlan:m,forTrialExpiryPlan:g,hasProductId:p,ids:s,planType:l,q:u,requiresPaymentMethod:z,withoutEntitlementFor:y,withoutProductId:C,withoutPaidProductId:O,limit:T,offset:V}=t,q={};r!=null&&(q.company_id=r),i!=null&&(q.for_fallback_plan=i.toString()),m!=null&&(q.for_initial_plan=m.toString()),g!=null&&(q.for_trial_expiry_plan=g.toString()),p!=null&&(q.has_product_id=p.toString()),s!=null&&(Array.isArray(s)?q.ids=s.map(B=>B):q.ids=s),l!=null&&(q.plan_type=yd.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),u!=null&&(q.q=u),z!=null&&(q.requires_payment_method=z.toString()),y!=null&&(q.without_entitlement_for=y),C!=null&&(q.without_product_id=C.toString()),O!=null&&(q.without_paid_product_id=O.toString()),T!=null&&(q.limit=T.toString()),V!=null&&(q.offset=V.toString());let v=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:q,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(v.ok)return{data:bd.parseOrThrow(v.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:v.rawResponse};if(v.error.reason==="status-code")switch(v.error.statusCode){case 400:throw new P(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 401:throw new S(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 403:throw new x(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 404:throw new E(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 500:throw new U(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);default:throw new c({statusCode:v.error.statusCode,body:v.error.body,rawResponse:v.rawResponse})}switch(v.error.reason){case"non-json":throw new c({statusCode:v.error.statusCode,body:v.error.rawBody,rawResponse:v.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plans/count.");case"unknown":throw new c({message:v.error.errorMessage,rawResponse:v.rawResponse})}}listPlanIssues(t,o){return b.fromPromise(this.__listPlanIssues(t,o))}async __listPlanIssues(t,o){let{planId:r}=t,i={};i.plan_id=r;let m=await(this._options.fetcher??_)({url:(0,Se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans/issues"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:Sd.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 400:throw new P(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plans/issues.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Me=H(require("url-join"));var So=class{constructor(t={}){this._options=t}listComponents(t={},o){return b.fromPromise(this.__listComponents(t,o))}async __listComponents(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Ed.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /components.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}createComponent(t,o){return b.fromPromise(this.__createComponent(t,o))}async __createComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:At.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Pd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /components.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getComponent(t,o){return b.fromPromise(this.__getComponent(t,o))}async __getComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Cd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /components/{component_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateComponent(t,o={},r){return b.fromPromise(this.__updateComponent(t,o,r))}async __updateComponent(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ft.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Od.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /components/{component_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteComponent(t,o){return b.fromPromise(this.__deleteComponent(t,o))}async __deleteComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Bd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /components/{component_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countComponents(t={},o){return b.fromPromise(this.__countComponents(t,o))}async __countComponents(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:kd.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /components/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}previewComponentData(t={},o){return b.fromPromise(this.__previewComponentData(t,o))}async __previewComponentData(t={},o){let{companyId:r,componentId:i}=t,m={};r!=null&&(m.company_id=r),i!=null&&(m.component_id=i);let g=await(this._options.fetcher??_)({url:(0,Me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components/preview-data"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:m,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(g.ok)return{data:Md.parseOrThrow(g.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:g.rawResponse};if(g.error.reason==="status-code")switch(g.error.statusCode){case 401:throw new S(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 403:throw new x(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 404:throw new E(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 500:throw new U(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);default:throw new c({statusCode:g.error.statusCode,body:g.error.body,rawResponse:g.rawResponse})}switch(g.error.reason){case"non-json":throw new c({statusCode:g.error.statusCode,body:g.error.rawBody,rawResponse:g.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /components/preview-data.");case"unknown":throw new c({message:g.error.errorMessage,rawResponse:g.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var gr=H(require("url-join"));var xo=class{constructor(t={}){this._options=t}upsertDealLineItemAssociation(t,o){return b.fromPromise(this.__upsertDealLineItemAssociation(t,o))}async __upsertDealLineItemAssociation(t,o){let r=await(this._options.fetcher??_)({url:(0,gr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/associations/deal-line-item"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:It.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ad.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /crm/associations/deal-line-item.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertLineItem(t,o){return b.fromPromise(this.__upsertLineItem(t,o))}async __upsertLineItem(t,o){let r=await(this._options.fetcher??_)({url:(0,gr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/deal-line-item/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Kt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Fd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /crm/deal-line-item/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertCrmDeal(t,o){return b.fromPromise(this.__upsertCrmDeal(t,o))}async __upsertCrmDeal(t,o){let r=await(this._options.fetcher??_)({url:(0,gr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/deals/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Lt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Kd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /crm/deals/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCrmProducts(t={},o){return b.fromPromise(this.__listCrmProducts(t,o))}async __listCrmProducts(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(l=>l):p.ids=r),i!=null&&(p.name=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,gr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/products"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Gd.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /crm/products.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertCrmProduct(t,o){return b.fromPromise(this.__upsertCrmProduct(t,o))}async __upsertCrmProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,gr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/products/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Gt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Nd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /crm/products/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var mi=H(require("url-join"));var Eo=class{constructor(t={}){this._options=t}createDataExport(t,o){return b.fromPromise(this.__createDataExport(t,o))}async __createDataExport(t,o){let r=await(this._options.fetcher??_)({url:(0,mi.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"data-exports"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:{...Nt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),export_type:"company-feature-usage",output_file_type:"csv"},timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Hd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /data-exports.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getDataExportArtifact(t,o){return b.fromPromise(this.__getDataExportArtifact(t,o))}async __getDataExportArtifact(t,o){let r=await(this._options.fetcher??_)({url:(0,mi.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`data-exports/${encodeURIComponent(t)}/artifact`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",responseType:"streaming",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:r.body,rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /data-exports/{data_export_id}/artifact.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Xe=H(require("url-join"));var Uo=class{constructor(t={}){this._options=t}createEventBatch(t,o){return b.fromPromise(this.__createEventBatch(t,o))}async __createEventBatch(t,o){let r=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"event-batch"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ht.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Jd.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /event-batch.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEventSummaries(t={},o){return b.fromPromise(this.__getEventSummaries(t,o))}async __getEventSummaries(t={},o){let{q:r,eventSubtypes:i,limit:m,offset:g}=t,p={};r!=null&&(p.q=r),i!=null&&(Array.isArray(i)?p.event_subtypes=i.map(l=>l):p.event_subtypes=i),m!=null&&(p.limit=m.toString()),g!=null&&(p.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"event-types"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Zd.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /event-types.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listEvents(t={},o){return b.fromPromise(this.__listEvents(t,o))}async __listEvents(t={},o){let{companyId:r,eventSubtype:i,eventTypes:m,flagId:g,userId:p,limit:s,offset:l}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.event_subtype=i),m!=null&&(Array.isArray(m)?u.event_types=m.map(y=>Xt.jsonOrThrow(y,{unrecognizedObjectKeys:"strip"})):u.event_types=Xt.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(u.flag_id=g),p!=null&&(u.user_id=p),s!=null&&(u.limit=s.toString()),l!=null&&(u.offset=l.toString());let z=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"events"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:eh.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /events.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}createEvent(t,o){return b.fromPromise(this.__createEvent(t,o))}async __createEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"events"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:so.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:rh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /events.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEvent(t,o){return b.fromPromise(this.__getEvent(t,o))}async __getEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`events/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:oh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /events/{event_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getSegmentIntegrationStatus(t){return b.fromPromise(this.__getSegmentIntegrationStatus(t))}async __getSegmentIntegrationStatus(t){let o=await(this._options.fetcher??_)({url:(0,Xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"segment-integration"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:ih.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /segment-integration.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var se=H(require("url-join"));var Po=class{constructor(t={}){this._options=t}listFeatures(t={},o){return b.fromPromise(this.__listFeatures(t,o))}async __listFeatures(t={},o){let{ids:r,q:i,withoutCompanyOverrideFor:m,withoutPlanEntitlementFor:g,featureType:p,booleanRequireEvent:s,limit:l,offset:u}=t,z={};r!=null&&(Array.isArray(r)?z.ids=r.map(C=>C):z.ids=r),i!=null&&(z.q=i),m!=null&&(z.without_company_override_for=m),g!=null&&(z.without_plan_entitlement_for=g),p!=null&&(Array.isArray(p)?z.feature_type=p.map(C=>C):z.feature_type=p),s!=null&&(z.boolean_require_event=s.toString()),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:uh.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /features.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}createFeature(t,o){return b.fromPromise(this.__createFeature(t,o))}async __createFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Wt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:gh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /features.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getFeature(t,o){return b.fromPromise(this.__getFeature(t,o))}async __getFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:wh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /features/{feature_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFeature(t,o={},r){return b.fromPromise(this.__updateFeature(t,o,r))}async __updateFeature(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Jt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Rh.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /features/{feature_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteFeature(t,o){return b.fromPromise(this.__deleteFeature(t,o))}async __deleteFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:bh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /features/{feature_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countFeatures(t={},o){return b.fromPromise(this.__countFeatures(t,o))}async __countFeatures(t={},o){let{ids:r,q:i,withoutCompanyOverrideFor:m,withoutPlanEntitlementFor:g,featureType:p,booleanRequireEvent:s,limit:l,offset:u}=t,z={};r!=null&&(Array.isArray(r)?z.ids=r.map(C=>C):z.ids=r),i!=null&&(z.q=i),m!=null&&(z.without_company_override_for=m),g!=null&&(z.without_plan_entitlement_for=g),p!=null&&(Array.isArray(p)?z.feature_type=p.map(C=>C):z.feature_type=p),s!=null&&(z.boolean_require_event=s.toString()),l!=null&&(z.limit=l.toString()),u!=null&&(z.offset=u.toString());let y=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:_h.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /features/count.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}listFlags(t={},o){return b.fromPromise(this.__listFlags(t,o))}async __listFlags(t={},o){let{featureId:r,ids:i,q:m,limit:g,offset:p}=t,s={};r!=null&&(s.feature_id=r),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:xh.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /flags.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}createFlag(t,o){return b.fromPromise(this.__createFlag(t,o))}async __createFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ai.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Eh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /flags.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getFlag(t,o){return b.fromPromise(this.__getFlag(t,o))}async __getFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Uh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /flags/{flag_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFlag(t,o,r){return b.fromPromise(this.__updateFlag(t,o,r))}async __updateFlag(t,o,r){let i=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ai.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Ph.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /flags/{flag_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteFlag(t,o){return b.fromPromise(this.__deleteFlag(t,o))}async __deleteFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ch.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /flags/{flag_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFlagRules(t,o,r){return b.fromPromise(this.__updateFlagRules(t,o,r))}async __updateFlagRules(t,o,r){let i=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}/rules`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:$t.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Oh.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /flags/{flag_id}/rules.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}checkFlag(t,o,r){return b.fromPromise(this.__checkFlag(t,o,r))}async __checkFlag(t,o,r){let i=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}/check`),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ii.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Bh.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /flags/{key}/check.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}checkFlags(t,o){return b.fromPromise(this.__checkFlags(t,o))}async __checkFlags(t,o){let r=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags/check"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ii.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:kh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /flags/check.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countFlags(t={},o){return b.fromPromise(this.__countFlags(t,o))}async __countFlags(t={},o){let{featureId:r,ids:i,q:m,limit:g,offset:p}=t,s={};r!=null&&(s.feature_id=r),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,se.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:Vh.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /flags/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Co=H(require("url-join"));var To=class{constructor(t={}){this._options=t}getPlanGroup(t){return b.fromPromise(this.__getPlanGroup(t))}async __getPlanGroup(t){let o=await(this._options.fetcher??_)({url:(0,Co.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-groups"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:Nh.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /plan-groups.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}createPlanGroup(t,o){return b.fromPromise(this.__createPlanGroup(t,o))}async __createPlanGroup(t,o){let r=await(this._options.fetcher??_)({url:(0,Co.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-groups"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Yt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Wh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /plan-groups.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanGroup(t,o,r){return b.fromPromise(this.__updatePlanGroup(t,o,r))}async __updatePlanGroup(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Co.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-groups/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Qt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Jh.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plan-groups/{plan_group_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Pg=H(require("url-join"));var vo=class{constructor(t={}){this._options=t}issueTemporaryAccessToken(t,o){return b.fromPromise(this.__issueTemporaryAccessToken(t,o))}async __issueTemporaryAccessToken(t,o){let r=await(this._options.fetcher??_)({url:(0,Pg.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"temporary-access-tokens"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:{...ei.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),resource_type:"company"},timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Zh.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /temporary-access-tokens.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var xe=H(require("url-join"));var Oo=class{constructor(t={}){this._options=t}listWebhookEvents(t={},o){return b.fromPromise(this.__listWebhookEvents(t,o))}async __listWebhookEvents(t={},o){let{ids:r,q:i,webhookId:m,limit:g,offset:p}=t,s={};r!=null&&(Array.isArray(r)?s.ids=r.map(u=>u):s.ids=r),i!=null&&(s.q=i),m!=null&&(s.webhook_id=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhook-events"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:Qh.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhook-events.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}getWebhookEvent(t,o){return b.fromPromise(this.__getWebhookEvent(t,o))}async __getWebhookEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhook-events/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:eg.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhook-events/{webhook_event_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countWebhookEvents(t={},o){return b.fromPromise(this.__countWebhookEvents(t,o))}async __countWebhookEvents(t={},o){let{ids:r,q:i,webhookId:m,limit:g,offset:p}=t,s={};r!=null&&(Array.isArray(r)?s.ids=r.map(u=>u):s.ids=r),i!=null&&(s.q=i),m!=null&&(s.webhook_id=m),g!=null&&(s.limit=g.toString()),p!=null&&(s.offset=p.toString());let l=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhook-events/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:og.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhook-events/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}listWebhooks(t={},o){return b.fromPromise(this.__listWebhooks(t,o))}async __listWebhooks(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:ig.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhooks.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}createWebhook(t,o){return b.fromPromise(this.__createWebhook(t,o))}async __createWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ri.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:sg.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling POST /webhooks.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getWebhook(t,o){return b.fromPromise(this.__getWebhook(t,o))}async __getWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ng.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhooks/{webhook_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateWebhook(t,o={},r){return b.fromPromise(this.__updateWebhook(t,o,r))}async __updateWebhook(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:oi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:lg.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /webhooks/{webhook_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteWebhook(t,o){return b.fromPromise(this.__deleteWebhook(t,o))}async __deleteWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:mg.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /webhooks/{webhook_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countWebhooks(t={},o){return b.fromPromise(this.__countWebhooks(t,o))}async __countWebhooks(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let p=await(this._options.fetcher??_)({url:(0,xe.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:dg.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new R("Timeout exceeded when calling GET /webhooks/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Bo=class{constructor(t={}){this._options=t}get accounts(){return this._accounts??=new wo(this._options)}get billing(){return this._billing??=new yo(this._options)}get credits(){return this._credits??=new zo(this._options)}get checkout(){return this._checkout??=new Ro(this._options)}get companies(){return this._companies??=new bo(this._options)}get entitlements(){return this._entitlements??=new fo(this._options)}get plans(){return this._plans??=new _o(this._options)}get components(){return this._components??=new So(this._options)}get crm(){return this._crm??=new xo(this._options)}get dataexports(){return this._dataexports??=new Eo(this._options)}get events(){return this._events??=new Uo(this._options)}get features(){return this._features??=new Po(this._options)}get plangroups(){return this._plangroups??=new To(this._options)}get accesstokens(){return this._accesstokens??=new vo(this._options)}get webhooks(){return this._webhooks??=new Oo(this._options)}putPlanAudiencesPlanAudienceId(t,o){return b.fromPromise(this.__putPlanAudiencesPlanAudienceId(t,o))}async __putPlanAudiencesPlanAudienceId(t,o){let r=await(this._options.fetcher??_)({url:(0,ui.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-audiences/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:void 0,rawResponse:r.rawResponse};if(r.error.reason==="status-code")throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse});switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling PUT /plan-audiences/{plan_audience_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deletePlanAudiencesPlanAudienceId(t,o){return b.fromPromise(this.__deletePlanAudiencesPlanAudienceId(t,o))}async __deletePlanAudiencesPlanAudienceId(t,o){let r=await(this._options.fetcher??_)({url:(0,ui.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-audiences/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.6","User-Agent":"@schematichq/schematic-typescript-node/1.2.6","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:void 0,rawResponse:r.rawResponse};if(r.error.reason==="status-code")throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse});switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new R("Timeout exceeded when calling DELETE /plan-audiences/{plan_audience_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var wr=class{error(t,...o){console.error(t,...o)}warn(t,...o){console.warn(t,...o)}info(t,...o){console.info(t,...o)}debug(t,...o){console.debug(t,...o)}};var Xw=1e3,Hw=1e3,Ww=3,Jw=1e3,jo=class{constructor(t,o){this.events=[];this.intervalId=null;this.shutdown=!1;this.stopped=!1;this.flushing=!1;let{logger:r=new wr,maxSize:i=Hw,interval:m=Xw,offline:g=!1,maxRetries:p=Ww,initialRetryDelay:s=Jw}=o||{};this.eventsApi=t,this.interval=m,this.logger=r,this.maxSize=i,this.offline=g,this.maxRetries=p,this.initialRetryDelay=s,this.startPeriodicFlush()}async flush(){if(!(this.events.length===0||this.flushing)){this.flushing=!0;try{let t=[...this.events];this.events=[];let o=0,r=!1,i=null;for(;o<=this.maxRetries&&!r;)try{o>0&&this.logger.info(`Retrying event batch submission (attempt ${o} of ${this.maxRetries})`),await this.eventsApi.createEventBatch({events:t}),r=!0}catch(m){if(i=m,o++,o<=this.maxRetries){let g=this.initialRetryDelay*Math.pow(2,o-1),p=Math.random()*.1*g,s=g+p;this.logger.warn(`Event batch submission failed: ${m}. Retrying in ${(s/1e3).toFixed(2)} seconds...`),process.env.NODE_ENV!=="test"&&await new Promise(l=>setTimeout(l,s))}}r?o>0&&this.logger.info(`Event batch submission succeeded after ${o} retries`):this.logger.error(`Event batch submission failed after ${this.maxRetries} retries:`,i)}finally{this.flushing=!1}}}async push(t){if(!this.offline){if(this.stopped){this.logger.error("Event buffer is stopped, not accepting new events");return}this.events.length>=this.maxSize&&!this.flushing&&await this.flush(),this.events.push(t)}}async stop(){this.shutdown=!0,this.stopped=!0,this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null),await this.flush()}startPeriodicFlush(){this.offline||this.intervalId||(this.intervalId=setInterval(async()=>{this.shutdown||await this.flush()},this.interval))}};function Cg(w){return async function(o){let r={};if(w&&Object.assign(r,w),o.body!==void 0&&o.contentType!=null&&(r["Content-Type"]=o.contentType),o.headers!=null)for(let[p,s]of Object.entries(o.headers))s!=null&&(r[p]=s);let i=xr(o.url,o.queryParameters),m=await Ur({body:o.body,type:o.requestType==="json"?"json":"other"}),g=await Er();try{let p=await Tr(async()=>Cr(g,i,o.method,r,m,o.timeoutMs,o.abortSignal,o.withCredentials,o.duplex),o.maxRetries),s=await Pr(p,o.responseType),l=We(p);return p.status>=200&&p.status<400?{ok:!0,body:s,headers:p.headers,rawResponse:l}:{ok:!1,error:{reason:"status-code",statusCode:p.status,body:s},rawResponse:l}}catch(p){return o.abortSignal!=null&&o.abortSignal.aborted?{ok:!1,error:{reason:"unknown",errorMessage:"The user aborted a request"},rawResponse:Fe}:p instanceof Error&&p.name==="AbortError"?{ok:!1,error:{reason:"timeout"},rawResponse:Fe}:p instanceof Error?{ok:!1,error:{reason:"unknown",errorMessage:p.message},rawResponse:Ie}:{ok:!1,error:{reason:"unknown",errorMessage:JSON.stringify(p)},rawResponse:Ie}}}}async function $w(w){return{ok:!0,body:{},headers:{"Content-Type":"application/json"},rawResponse:{headers:new Ae,redirected:!1,status:200,statusText:"OK",type:"basic",url:""}}}var Tg=$w;var ko=class extends Bo{constructor(t){let{apiKey:o="",basePath:r,eventBufferInterval:i,flagDefaults:m={},logger:g=new wr}=t??{},{offline:p=!1}=t??{},s={};t?.environmentId&&(s["X-Schematic-Environment-Id"]=t.environmentId),t?.headers&&Object.assign(s,t.headers),p?o!==""&&g.debug("Offline mode enabled, ignoring API key"):o===""&&!p&&(g.warn("No API key was provided, running in offline mode"),p=!0),super({apiKey:o,environment:r,fetcher:p?Tg:Cg(s)}),this.logger=g,this.eventBuffer=new jo(this.events,{interval:i,logger:g,offline:p}),this.flagCheckCacheProviders=t?.cacheProviders?.flagChecks??[new He],this.flagDefaults=m,this.offline=p}async checkFlag(t,o){if(this.offline)return this.logger.debug(`Offline mode enabled, returning default flag value for flag ${o}`),this.getFlagDefault(o);try{let r=JSON.stringify({evalCtx:t,key:o});for(let m of this.flagCheckCacheProviders){let g=await m.get(r);if(g!==void 0)return this.logger.debug(`${m.constructor.name} cache hit for flag ${o}`),g}let i=await this.features.checkFlag(o,t);if(i.data.value===void 0)return this.logger.debug(`No value returned from feature flag API for flag ${o}, falling back to default`),this.getFlagDefault(o);for(let m of this.flagCheckCacheProviders)this.logger.debug(`Caching value for flag ${o} in ${m.constructor.name}`),await m.set(r,i.data.value);return this.logger.debug(`Feature flag API response for ${o}: ${JSON.stringify(i.data)}`),i.data.value}catch(r){return this.logger.error(`Error checking flag ${o}: ${r}`),this.getFlagDefault(o)}}async checkFlags(t,o){if(this.offline)return this.logger.debug(`Offline mode enabled, returning default flag values for flags ${o?o.join(", "):"all"}`),o&&o.length>0?o.map(r=>({flag:r,value:this.getFlagDefault(r),reason:"Offline mode - using default value"})):[];try{if(!o||o.length===0)return this.logger.debug("No specific flag keys provided, calling standard checkFlags API"),(await this.features.checkFlags(t)).data.flags;let r=new Map,i=[];for(let s of o){let l=JSON.stringify({evalCtx:t,key:s}),u=!1;for(let z of this.flagCheckCacheProviders){let y=await z.get(l);if(y!==void 0){this.logger.debug(`${z.constructor.name} cache hit for flag ${s}`),r.set(s,{flag:s,value:y,reason:"Retrieved from cache"}),u=!0;break}}u||i.push(s)}if(i.length===0)return this.logger.debug(`All ${o.length} flags found in cache`),o.map(s=>r.get(s));this.logger.debug(`Cache miss for ${i.length} flags: ${i.join(", ")}, calling API`);let g=(await this.features.checkFlags(t)).data.flags,p=[];for(let s of o){let l=g.find(u=>u.flag===s);if(l){let u=JSON.stringify({evalCtx:t,key:s});for(let z of this.flagCheckCacheProviders)this.logger.debug(`Caching value for flag ${u} in ${z.constructor.name}`),await z.set(u,l.value);p.push(l)}else{let u=r.get(s);if(u)p.push(u);else{this.logger.debug(`Flag ${s} not found in API response or cache, using default value`);let z={flag:s,value:this.getFlagDefault(s),reason:"Flag not found - using default value"};p.push(z)}}}return this.logger.debug(`Checked ${o.length} flags: used fresh API values for consistency (${i.length} were cache misses)`),p}catch(r){return this.logger.error(`Error checking flags ${o?o.join(", "):"all"}: ${r}`),o&&o.length>0?o.map(i=>({flag:i,value:this.getFlagDefault(i),reason:`Error occurred - using default value: ${r}`})):[]}}async close(){return this.eventBuffer.stop()}async identify(t){if(!this.offline)try{await this.enqueueEvent("identify",t)}catch(o){this.logger.error(`Error sending identify event: ${o}`)}}async track(t){if(!this.offline)try{await this.enqueueEvent("track",t)}catch(o){this.logger.error(`Error sending track event: ${o}`)}}setFlagDefault(t,o){this.flagDefaults[t]=o}setFlagDefaults(t){Object.assign(this.flagDefaults,t)}getFlagDefault(t){return this.flagDefaults[t]??!1}async enqueueEvent(t,o){try{this.eventBuffer.push({eventType:t,body:o,sentAt:new Date})}catch(r){this.logger.error(`Error enqueueing ${t} event: ${r}`)}}};var Do=H(require("crypto")),di="X-Schematic-Webhook-Signature",hi="X-Schematic-Webhook-Timestamp",Ee=class w extends Error{constructor(t){super(t),Object.setPrototypeOf(this,w.prototype),this.name="WebhookSignatureError"}static missingSignature(){return new w("Missing webhook signature header")}static missingTimestamp(){return new w("Missing webhook timestamp header")}static invalidSignature(){return new w("Invalid webhook signature")}};function Vo(w,t,o){let r=Buffer.isBuffer(w)?w:Buffer.from(w),i=Buffer.concat([r,Buffer.from(`+${t}`)]),m=Do.createHmac("sha256",o);return m.update(i),m.digest()}function Og(w,t,o){return Vo(w,t,o).toString("hex")}function gi(w,t,o,r){if(!t)throw Ee.missingSignature();if(!o)throw Ee.missingTimestamp();let i;try{i=Buffer.from(t,"hex")}catch(g){throw new Ee(`Invalid signature format: ${g?.message||"Unknown error"}`)}let m=Vo(w,o,r);if(i.length!==m.length||!Do.timingSafeEqual(i,m))throw Ee.invalidSignature()}function Bg(w,t,o,r={}){let i=w.headers,m=r.signatureHeader||di,g=r.timestampHeader||hi,p=vg(i,m),s=vg(i,g),l;if(o!==void 0)l=o;else if("rawBody"in w&&w.rawBody)l=w.rawBody;else throw new Ee("Request body is not available. Provide the body as a parameter or ensure req.rawBody exists.");gi(l,p,s,t)}function vg(w,t){let o=w[t]||w[t.toLowerCase()];return Array.isArray(o)?o[0]||"":o||""}0&&(module.exports={LocalCache,Schematic,SchematicClient,SchematicEnvironment,SchematicError,SchematicTimeoutError,WEBHOOK_SIGNATURE_HEADER,WEBHOOK_TIMESTAMP_HEADER,WebhookSignatureError,computeHexSignature,computeSignature,verifySignature,verifyWebhookSignature});
1
+ "use strict";var pd=Object.create;var no=Object.defineProperty;var md=Object.getOwnPropertyDescriptor;var ud=Object.getOwnPropertyNames;var dd=Object.getPrototypeOf,hd=Object.prototype.hasOwnProperty;var Mt=(w,t)=>()=>(w&&(t=w(w=0)),t);var dr=(w,t)=>{for(var o in t)no(w,o,{get:t[o],enumerable:!0})},ca=(w,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ud(t))!hd.call(w,i)&&i!==o&&no(w,i,{get:()=>t[i],enumerable:!(r=md(t,i))||r.enumerable});return w};var re=(w,t,o)=>(o=w!=null?pd(dd(w)):{},ca(t||!w||!w.__esModule?no(o,"default",{value:w,enumerable:!0}):o,w)),gd=w=>ca(no({},"__esModule",{value:!0}),w);var ka={};dr(ka,{Node18UniversalStreamWrapper:()=>Ft});var Ft,Va=Mt(()=>{"use strict";Ft=class w{constructor(t){this.readableStream=t,this.reader=this.readableStream.getReader(),this.events={data:[],end:[],error:[],readable:[],close:[],pause:[],resume:[]},this.paused=!1,this.resumeCallback=null,this.encoding=null}on(t,o){this.events[t]?.push(o)}off(t,o){this.events[t]=this.events[t]?.filter(r=>r!==o)}pipe(t){return this.on("data",async o=>{if(t instanceof w)t._write(o);else if(t instanceof WritableStream){let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}else t.write(o)}),this.on("end",async()=>{t instanceof w?t._end():t instanceof WritableStream?t.getWriter().close():t.end()}),this.on("error",async o=>{t instanceof w?t._error(o):t instanceof WritableStream?t.getWriter().abort(o):t.destroy(o)}),this._startReading(),t}pipeTo(t){return this.pipe(t)}unpipe(t){this.off("data",async o=>{if(t instanceof w)t._write(o);else if(t instanceof WritableStream){let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}else t.write(o)}),this.off("end",async()=>{t instanceof w?t._end():t instanceof WritableStream?t.getWriter().close():t.end()}),this.off("error",async o=>{t instanceof w?t._error(o):t instanceof WritableStream?t.getWriter().abort(o):t.destroy(o)})}destroy(t){this.reader.cancel(t).then(()=>{this._emit("close")}).catch(o=>{this._emit("error",o)})}pause(){this.paused=!0,this._emit("pause")}resume(){this.paused&&(this.paused=!1,this._emit("resume"),this.resumeCallback&&(this.resumeCallback(),this.resumeCallback=null))}get isPaused(){return this.paused}async read(){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(!t)return o}setEncoding(t){this.encoding=t}async text(){let t=[];for(;;){let{done:r,value:i}=await this.reader.read();if(r)break;i&&t.push(i)}return new TextDecoder(this.encoding||"utf-8").decode(await new Blob(t).arrayBuffer())}async json(){let t=await this.text();return JSON.parse(t)}_write(t){this._emit("data",t)}_end(){this._emit("end")}_error(t){this._emit("error",t)}_emit(t,o){if(this.events[t])for(let r of this.events[t]||[])r(o)}async _startReading(){try{for(this._emit("readable");;){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(t){this._emit("end"),this._emit("close");break}o&&this._emit("data",o)}}catch(t){this._emit("error",t)}}[Symbol.asyncIterator](){return{next:async()=>{this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();return t?{done:!0,value:void 0}:{done:!1,value:o}},[Symbol.asyncIterator](){return this}}}}});var Ba={};dr(Ba,{UndiciStreamWrapper:()=>It});var It,Da=Mt(()=>{"use strict";It=class w{constructor(t){this.readableStream=t,this.reader=this.readableStream.getReader(),this.events={data:[],end:[],error:[],readable:[],close:[],pause:[],resume:[]},this.paused=!1,this.resumeCallback=null,this.encoding=null}on(t,o){this.events[t]?.push(o)}off(t,o){this.events[t]=this.events[t]?.filter(r=>r!==o)}pipe(t){return this.on("data",o=>{if(t instanceof w)t._write(o);else{let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}}),this.on("end",()=>{t instanceof w?t._end():t.getWriter().close()}),this.on("error",o=>{t instanceof w?t._error(o):t.getWriter().abort(o)}),this._startReading(),t}pipeTo(t){return this.pipe(t)}unpipe(t){this.off("data",o=>{if(t instanceof w)t._write(o);else{let r=t.getWriter();r.write(o).then(()=>r.releaseLock())}}),this.off("end",()=>{t instanceof w?t._end():t.getWriter().close()}),this.off("error",o=>{t instanceof w?t._error(o):t.getWriter().abort(o)})}destroy(t){this.reader.cancel(t).then(()=>{this._emit("close")}).catch(o=>{this._emit("error",o)})}pause(){this.paused=!0,this._emit("pause")}resume(){this.paused&&(this.paused=!1,this._emit("resume"),this.resumeCallback&&(this.resumeCallback(),this.resumeCallback=null))}get isPaused(){return this.paused}async read(){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(!t)return o}setEncoding(t){this.encoding=t}async text(){let t=[];for(;;){let{done:r,value:i}=await this.reader.read();if(r)break;i&&t.push(i)}return new TextDecoder(this.encoding||"utf-8").decode(await new Blob(t).arrayBuffer())}async json(){let t=await this.text();return JSON.parse(t)}_write(t){this._emit("data",t)}_end(){this._emit("end")}_error(t){this._emit("error",t)}_emit(t,o){if(this.events[t])for(let r of this.events[t]||[])r(o)}async _startReading(){try{for(this._emit("readable");;){this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();if(t){this._emit("end"),this._emit("close");break}o&&this._emit("data",o)}}catch(t){this._emit("error",t)}}[Symbol.asyncIterator](){return{next:async()=>{this.paused&&await new Promise(r=>{this.resumeCallback=r});let{done:t,value:o}=await this.reader.read();return t?{done:!0,value:void 0}:{done:!1,value:o}},[Symbol.asyncIterator](){return this}}}}});var Ma={};dr(Ma,{NodePre18StreamWrapper:()=>Kt});var Kt,Aa=Mt(()=>{"use strict";Kt=class{constructor(t){this.readableStream=t}on(t,o){this.readableStream.on(t,o)}off(t,o){this.readableStream.off(t,o)}pipe(t){return this.readableStream.pipe(t),t}pipeTo(t){return this.pipe(t)}unpipe(t){t?this.readableStream.unpipe(t):this.readableStream.unpipe()}destroy(t){this.readableStream.destroy(t)}pause(){this.readableStream.pause()}resume(){this.readableStream.resume()}get isPaused(){return this.readableStream.isPaused()}async read(){return new Promise((t,o)=>{let r=this.readableStream.read();r?t(r):(this.readableStream.once("readable",()=>{let i=this.readableStream.read();t(i)}),this.readableStream.once("error",o))})}setEncoding(t){this.readableStream.setEncoding(t),this.encoding=t}async text(){let t=[],o=new TextEncoder;this.readableStream.setEncoding(this.encoding||"utf-8");for await(let i of this.readableStream)t.push(o.encode(i));return new TextDecoder(this.encoding||"utf-8").decode(Buffer.concat(t))}async json(){let t=await this.text();return JSON.parse(t)}[Symbol.asyncIterator](){let o=this.readableStream[Symbol.asyncIterator]();return{async next(){let{value:r,done:i}=await o.next();return{value:r,done:i}},[Symbol.asyncIterator](){return this}}}}});var mg={};dr(mg,{LocalCache:()=>_r,Schematic:()=>se,SchematicClient:()=>Vt,SchematicEnvironment:()=>f,SchematicError:()=>c,SchematicTimeoutError:()=>b,WEBHOOK_SIGNATURE_HEADER:()=>aa,WEBHOOK_TIMESTAMP_HEADER:()=>sa,WebhookSignatureError:()=>Ne,computeHexSignature:()=>cd,computeSignature:()=>Dt,verifySignature:()=>na,verifyWebhookSignature:()=>ld});module.exports=gd(mg);var se={};dr(se,{ApiKeyScope:()=>wd,BadRequestError:()=>P,BillingCreditBundleStatus:()=>yd,BillingCreditBurnStrategy:()=>zd,BillingCreditExpiryType:()=>bd,BillingCreditExpiryUnit:()=>Rd,BillingCreditGrantReason:()=>fd,BillingCreditGrantZeroedOutReason:()=>_d,BillingCreditRolloverPolicy:()=>Sd,BillingPlanCreditGrantResetCadence:()=>xd,BillingPlanCreditGrantResetStart:()=>Ed,BillingPlanCreditGrantResetType:()=>Ud,BillingPriceScheme:()=>Pd,BillingPriceUsageType:()=>Cd,BillingProductPriceInterval:()=>Td,BillingSubscriptionTrialEndSetting:()=>vd,BillingTiersMode:()=>Od,ChargeType:()=>jd,CompanyPlanInvalidReason:()=>kd,ComponentEntityType:()=>Vd,ComponentState:()=>Bd,ConditionConditionType:()=>Dd,ConditionMetricPeriod:()=>Md,ConditionMetricPeriodMonthReset:()=>Ad,ConditionOperator:()=>Fd,CreateCompanyOverrideRequestBodyMetricPeriod:()=>ha,CreateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>ga,CreateEntitlementReqCommonMetricPeriod:()=>Id,CreateEntitlementReqCommonMetricPeriodMonthReset:()=>Kd,CreateOrUpdateConditionRequestBodyConditionType:()=>qd,CreateOrUpdateConditionRequestBodyMetricPeriod:()=>Ld,CreateOrUpdateConditionRequestBodyMetricPeriodMonthReset:()=>Gd,CreateOrUpdateConditionRequestBodyOperator:()=>Nd,CreateOrUpdateRuleRequestBodyRuleType:()=>Xd,CreatePlanEntitlementRequestBodyMetricPeriod:()=>za,CreatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>ba,CreditGrantSortOrder:()=>Hd,CreditLedgerPeriod:()=>Wd,DataExportStatus:()=>Jd,EntitlementPriceBehavior:()=>$d,EntitlementType:()=>Zd,EntitlementValueType:()=>Yd,EntityType:()=>Qd,EnvironmentType:()=>eh,EventStatus:()=>rh,EventType:()=>oh,FeatureLifecyclePhase:()=>th,FeatureType:()=>ih,ForbiddenError:()=>x,InternalServerError:()=>U,NotFoundError:()=>E,PlanChangeAction:()=>ah,PlanChangeActorType:()=>sh,PlanChangeBasePlanAction:()=>nh,PlanChangeSubscriptionAction:()=>ch,PlanControlledByType:()=>lh,PlanType:()=>ph,ProrationBehavior:()=>mh,RuleRuleType:()=>uh,RulesEngineSchemaVersion:()=>dh,RulesengineCheckFlagResultFeatureUsagePeriod:()=>hh,RulesengineCheckFlagResultRuleType:()=>gh,RulesengineCompanyMetricMonthReset:()=>wh,RulesengineCompanyMetricPeriod:()=>yh,RulesengineConditionConditionType:()=>zh,RulesengineConditionMetricPeriod:()=>bh,RulesengineConditionMetricPeriodMonthReset:()=>Rh,RulesengineConditionOperator:()=>fh,RulesengineEntityType:()=>_h,RulesengineRuleRuleType:()=>Sh,RulesengineTraitDefinitionComparableType:()=>xh,SortDirection:()=>Eh,SubscriptionStatus:()=>Uh,SubscriptionType:()=>Ph,TraitDefinitionComparableType:()=>Ch,TraitType:()=>Th,UnauthorizedError:()=>S,UpdateCompanyOverrideRequestBodyMetricPeriod:()=>wa,UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>ya,UpdateEntitlementReqCommonMetricPeriod:()=>vh,UpdateEntitlementReqCommonMetricPeriodMonthReset:()=>Oh,UpdatePlanEntitlementRequestBodyMetricPeriod:()=>Ra,UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>fa,WebhookEventStatus:()=>jh,WebhookRequestType:()=>kh,WebhookStatus:()=>Vh,accesstokens:()=>Ta,accounts:()=>la,billing:()=>pa,checkout:()=>ua,companies:()=>da,components:()=>Sa,credits:()=>ma,crm:()=>xa,dataexports:()=>Ea,entitlements:()=>At,events:()=>Ua,features:()=>Pa,plangroups:()=>Ca,plans:()=>_a,webhooks:()=>va});var la={};var pa={};var ma={};var ua={};var da={};var At={};dr(At,{CreateCompanyOverrideRequestBodyMetricPeriod:()=>ha,CreateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>ga,CreatePlanEntitlementRequestBodyMetricPeriod:()=>za,CreatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>ba,UpdateCompanyOverrideRequestBodyMetricPeriod:()=>wa,UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset:()=>ya,UpdatePlanEntitlementRequestBodyMetricPeriod:()=>Ra,UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset:()=>fa});var ha={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var ga={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var wa={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var ya={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var za={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var ba={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Ra={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var fa={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var _a={};var Sa={};var xa={};var Ea={};var Ua={};var Pa={};var Ca={};var Ta={};var va={};var wd={Admin:"admin",Capture:"capture",Read:"read",Write:"write"};var yd={Active:"active",Inactive:"inactive"};var zd={ExpirationPriority:"expiration_priority",FirstInFirstOut:"first_in_first_out",LastInFirstOut:"last_in_first_out",PlanFirstThenCreditBundlesFirstInFirstOut:"plan_first_then_credit_bundles_first_in_first_out"};var bd={Duration:"duration",EndOfBillingPeriod:"end_of_billing_period",EndOfNextBillingPeriod:"end_of_next_billing_period",EndOfTrial:"end_of_trial",NoExpiry:"no_expiry"};var Rd={BillingPeriods:"billing_periods",Days:"days"};var fd={BillingCreditAutoTopup:"billing_credit_auto_topup",Free:"free",Plan:"plan",Purchased:"purchased"};var _d={Expired:"expired",Manual:"manual",PlanChange:"plan_change",PlanPeriodReset:"plan_period_reset"};var Sd={Expire:"expire",None:"none",Rollover:"rollover"};var xd={Daily:"daily",Monthly:"monthly",Weekly:"weekly",Yearly:"yearly"};var Ed={BillingPeriod:"billing_period",FirstOfMonth:"first_of_month"};var Ud={NoReset:"no_reset",PlanPeriod:"plan_period"};var Pd={PerUnit:"per_unit",Tiered:"tiered"};var Cd={Licensed:"licensed",Metered:"metered"};var Td={Day:"day",Month:"month",OneTime:"one-time",Year:"year"};var vd={Cancel:"cancel",Subscribe:"subscribe"};var Od={Graduated:"graduated",Volume:"volume"};var jd={Free:"free",OneTime:"one_time",Recurring:"recurring"};var kd={DowngradeNotPermitted:"downgrade_not_permitted",FeatureUsageExceeded:"feature_usage_exceeded"};var Vd={Billing:"billing",Entitlement:"entitlement"};var Bd={Draft:"draft",Live:"live"};var Dd={BasePlan:"base_plan",BillingProduct:"billing_product",Company:"company",Credit:"credit",CrmProduct:"crm_product",Metric:"metric",Plan:"plan",Trait:"trait",User:"user"};var Md={AllTime:"all_time",CurrentDay:"current_day",CurrentMonth:"current_month",CurrentWeek:"current_week"};var Ad={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Fd={Eq:"eq",Ne:"ne",Gt:"gt",Lt:"lt",Gte:"gte",Lte:"lte",IsEmpty:"is_empty",NotEmpty:"not_empty"};var Id={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Kd={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var qd={Company:"company",Metric:"metric",Trait:"trait",User:"user",Plan:"plan",BillingProduct:"billing_product",CrmProduct:"crm_product",BasePlan:"base_plan"};var Ld={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Gd={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var Nd={Eq:"eq",Ne:"ne",Gt:"gt",Gte:"gte",Lt:"lt",Lte:"lte",IsEmpty:"is_empty",NotEmpty:"not_empty"};var Xd={GlobalOverride:"global_override",CompanyOverride:"company_override",PlanEntitlement:"plan_entitlement",Standard:"standard",Default:"default"};var Hd={CreatedAt:"created_at",ExpiresAt:"expires_at",Quantity:"quantity",QuantityRemaining:"quantity_remaining"};var Wd={Daily:"daily",Monthly:"monthly",Raw:"raw",Weekly:"weekly"};var Jd={Failure:"failure",Pending:"pending",Success:"success"};var $d={CreditBurndown:"credit_burndown",Overage:"overage",PayAsYouGo:"pay_as_you_go",PayInAdvance:"pay_in_advance",Tier:"tier"};var Zd={CompanyOverride:"company_override",PlanEntitlement:"plan_entitlement",Unknown:"unknown"};var Yd={Boolean:"boolean",Credit:"credit",Numeric:"numeric",Trait:"trait",Unknown:"unknown",Unlimited:"unlimited"};var Qd={Company:"company",User:"user"};var eh={Development:"development",Production:"production",Staging:"staging"};var rh={Enriched:"enriched",Failed:"failed",Pending:"pending",Processed:"processed",Unknown:"unknown"};var oh={FlagCheck:"flag_check",Identify:"identify",Track:"track"};var th={AddOn:"add_on",Alpha:"alpha",Beta:"beta",Deprecated:"deprecated",Ga:"ga",Inactive:"inactive",InPlan:"in_plan",InternalTesting:"internal_testing",Legacy:"legacy"};var ih={Boolean:"boolean",Event:"event",Trait:"trait"};var ah={Checkout:"checkout",CompanyUpsert:"company_upsert",FallbackPlan:"fallback_plan",ManagePlan:"manage_plan",Migration:"migration",PlanBillingProductChanged:"plan_billing_product_changed",PlanDeleted:"plan_deleted",PlanTraitChange:"plan_trait_change",Quickstart:"quickstart",SubscriptionChange:"subscription_change"};var sh={ApiKey:"api_key",AppUser:"app_user",System:"system",TemporaryAccessToken:"temporary_access_token"};var nh={Fallback:"fallback",Initial:"initial",Trait:"trait",TrialExpiry:"trial_expiry"};var ch={Downgrade:"downgrade",Invalid:"invalid",Subscribe:"subscribe",Unsubscribe:"unsubscribe",Upgrade:"upgrade",UpgradeTrial:"upgrade_trial"};var lh={Schematic:"schematic",Stripe:"stripe"};var ph={Plan:"plan",AddOn:"add_on"};var mh={CreateProrations:"create_prorations",InvoiceImmediately:"invoice_immediately"};var uh={Default:"default",GlobalOverride:"global_override",CompanyOverride:"company_override",CompanyOverrideUsageExceeded:"company_override_usage_exceeded",PlanEntitlement:"plan_entitlement",PlanEntitlementUsageExceeded:"plan_entitlement_usage_exceeded",Standard:"standard"};var dh={FiveHundredFortyNineE6Fea:"549e6fea",PlaceholderForFernCompatibility:"placeholder-for-fern-compatibility"};var hh={AllTime:"all_time",CurrentDay:"current_day",CurrentMonth:"current_month",CurrentWeek:"current_week"};var gh={Default:"default",GlobalOverride:"global_override",CompanyOverride:"company_override",CompanyOverrideUsageExceeded:"company_override_usage_exceeded",PlanEntitlement:"plan_entitlement",PlanEntitlementUsageExceeded:"plan_entitlement_usage_exceeded",Standard:"standard"};var wh={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var yh={AllTime:"all_time",CurrentDay:"current_day",CurrentMonth:"current_month",CurrentWeek:"current_week"};var zh={BasePlan:"base_plan",BillingProduct:"billing_product",Company:"company",Credit:"credit",CrmProduct:"crm_product",Metric:"metric",Plan:"plan",Trait:"trait",User:"user"};var bh={AllTime:"all_time",CurrentDay:"current_day",CurrentMonth:"current_month",CurrentWeek:"current_week"};var Rh={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var fh={Eq:"eq",Ne:"ne",Gt:"gt",Lt:"lt",Gte:"gte",Lte:"lte",IsEmpty:"is_empty",NotEmpty:"not_empty"};var _h={Company:"company",User:"user"};var Sh={Default:"default",GlobalOverride:"global_override",CompanyOverride:"company_override",CompanyOverrideUsageExceeded:"company_override_usage_exceeded",PlanEntitlement:"plan_entitlement",PlanEntitlementUsageExceeded:"plan_entitlement_usage_exceeded",Standard:"standard"};var xh={Bool:"bool",Date:"date",Int:"int",String:"string"};var Eh={Asc:"asc",Desc:"desc"};var Uh={Active:"active",Canceled:"canceled",Expired:"expired",Incomplete:"incomplete",IncompleteExpired:"incomplete_expired",PastDue:"past_due",Paused:"paused",Trialing:"trialing",Unpaid:"unpaid"};var Ph={Free:"free",OneTime:"one_time",Paid:"paid",Trial:"trial"};var Ch={Bool:"bool",Date:"date",Int:"int",String:"string"};var Th={Boolean:"boolean",Currency:"currency",Date:"date",Number:"number",String:"string",Url:"url"};var vh={AllTime:"all_time",CurrentMonth:"current_month",CurrentWeek:"current_week",CurrentDay:"current_day"};var Oh={FirstOfMonth:"first_of_month",BillingCycle:"billing_cycle"};var jh={Failure:"failure",Pending:"pending",Success:"success"};var kh={SubscriptionTrialEnded:"subscription.trial.ended",CompanyCreated:"company.created",CompanyDeleted:"company.deleted",CompanyOverrideCreated:"company.override.created",CompanyOverrideDeleted:"company.override.deleted",CompanyOverrideExpired:"company.override.expired",CompanyOverrideUpdated:"company.override.updated",CompanyPlanChanged:"company.plan_changed",CompanyUpdated:"company.updated",CreditLimitReached:"credit.limit.reached",CreditLimitWarning:"credit.limit.warning",EntitlementLimitReached:"entitlement.limit.reached",EntitlementLimitWarning:"entitlement.limit.warning",EntitlementSoftLimitReached:"entitlement.soft_limit.reached",EntitlementSoftLimitWarning:"entitlement.soft_limit.warning",EntitlementTierLimitReached:"entitlement.tier_limit.reached",EntitlementTierLimitWarning:"entitlement.tier_limit.warning",FeatureCreated:"feature.created",FeatureDeleted:"feature.deleted",FeatureUpdated:"feature.updated",FlagCreated:"flag.created",FlagDeleted:"flag.deleted",FlagRulesUpdated:"flag_rules.updated",FlagUpdated:"flag.updated",PlanCreated:"plan.created",PlanDeleted:"plan.deleted",PlanEntitlementCreated:"plan.entitlement.created",PlanEntitlementDeleted:"plan.entitlement.deleted",PlanEntitlementUpdated:"plan.entitlement.updated",PlanUpdated:"plan.updated",RuleDeleted:"rule.deleted",TestSend:"test.send",UserCreated:"user.created",UserDeleted:"user.deleted",UserUpdated:"user.updated"};var Vh={Active:"active",Inactive:"inactive"};var be=(w,t,o)=>JSON.stringify(w,t,o);var c=class w extends Error{constructor({message:t,statusCode:o,body:r,rawResponse:i}){super(Bh({message:t,statusCode:o,body:r})),Object.setPrototypeOf(this,w.prototype),this.statusCode=o,this.body=r,this.rawResponse=i}};function Bh({message:w,statusCode:t,body:o}){let r=[];return w!=null&&r.push(w),t!=null&&r.push(`Status code: ${t.toString()}`),o!=null&&r.push(`Body: ${be(o,void 0,2)}`),r.join(`
2
+ `)}var b=class w extends Error{constructor(t){super(t),Object.setPrototypeOf(this,w.prototype)}};var P=class w extends c{constructor(t,o){super({message:"BadRequestError",statusCode:400,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var S=class w extends c{constructor(t,o){super({message:"UnauthorizedError",statusCode:401,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var x=class w extends c{constructor(t,o){super({message:"ForbiddenError",statusCode:403,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var E=class w extends c{constructor(t,o){super({message:"NotFoundError",statusCode:404,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var U=class w extends c{constructor(t,o){super({message:"InternalServerError",statusCode:500,body:t,rawResponse:o}),Object.setPrototypeOf(this,w.prototype)}};var Qr=require("timers"),_r=class{constructor({maxItems:t=1e3,ttl:o=5e3}={}){this.accessCounter=0;this.cache=new Map,this.maxItems=t,this.defaultTTL=o}async get(t){let o=this.cache.get(t);if(o){if(o.expiration<=Date.now()){this.evictItem(t,o);return}return this.accessCounter++,o.accessCounter=this.accessCounter,this.cache.set(t,o),o.value}}async set(t,o,r){if(this.maxItems===0)return;let i=r??this.defaultTTL,m=this.cache.get(t);m&&this.evictItem(t,m),this.evictExpiredItems(),this.evictLRUItems(),this.accessCounter++;let g={value:o,accessCounter:this.accessCounter,expiration:Date.now()+i,timeoutId:(0,Qr.setTimeout)(()=>this.evictItem(t,g),i)};this.cache.set(t,g)}resetCache(){this.cache.forEach(t=>{t.timeoutId&&(0,Qr.clearTimeout)(t.timeoutId)}),this.cache.clear(),this.accessCounter=0}evictItem(t,o){o.timeoutId&&(0,Qr.clearTimeout)(o.timeoutId),this.cache.delete(t)}evictExpiredItems(){this.cache.forEach((t,o)=>{t.expiration<=Date.now()&&this.evictItem(o,t)})}evictLRUItems(){for(;this.cache.size>=this.maxItems;){let t,o=Number.MAX_SAFE_INTEGER;this.cache.forEach((r,i)=>{r.accessCounter<o&&(t=i,o=r.accessCounter)}),t&&this.evictItem(t,this.cache.get(t))}}};var f={Default:"https://api.schematichq.com"};var hr;typeof globalThis.Headers<"u"?hr=globalThis.Headers:hr=class Oa{constructor(t){if(this.headers=new Map,t)if(t instanceof Oa)t.forEach((o,r)=>this.append(r,o));else if(Array.isArray(t))for(let[o,r]of t)if(typeof o=="string"&&typeof r=="string")this.append(o,r);else throw new TypeError("Each header entry must be a [string, string] tuple");else for(let[o,r]of Object.entries(t))if(typeof r=="string")this.append(o,r);else throw new TypeError("Header values must be strings")}append(t,o){let r=t.toLowerCase(),i=this.headers.get(r)||[];this.headers.set(r,[...i,o])}delete(t){let o=t.toLowerCase();this.headers.delete(o)}get(t){let o=t.toLowerCase(),r=this.headers.get(o);return r?r.join(", "):null}has(t){let o=t.toLowerCase();return this.headers.has(o)}set(t,o){let r=t.toLowerCase();this.headers.set(r,[o])}forEach(t,o){let r=o?t.bind(o):t;this.headers.forEach((i,m)=>r(i.join(", "),m,this))}getSetCookie(){return this.headers.get("set-cookie")||[]}*entries(){for(let[t,o]of this.headers.entries())yield[t,o.join(", ")]}*keys(){yield*this.headers.keys()}*values(){for(let t of this.headers.values())yield t.join(", ")}[Symbol.iterator](){return this.entries()}};var gr={headers:new hr,redirected:!1,status:499,statusText:"Client Closed Request",type:"error",url:""},wr={headers:new hr,redirected:!1,status:0,statusText:"Unknown Error",type:"error",url:""};function Sr(w){return{headers:w.headers,redirected:w.redirected,status:w.status,statusText:w.statusText,type:w.type,url:w.url}}var ja=re(require("qs"));function co(w,t){return Object.keys(t??{}).length>0?`${w}?${ja.default.stringify(t,{arrayFormat:"repeat"})}`:w}var h=Dh();function Dh(){return typeof window<"u"&&typeof window.document<"u"?{type:"browser",version:window.navigator.userAgent}:typeof globalThis<"u"&&globalThis?.navigator?.userAgent==="Cloudflare-Workers"?{type:"workerd"}:typeof EdgeRuntime=="string"?{type:"edge-runtime"}:typeof self=="object"&&typeof self?.importScripts=="function"&&(self.constructor?.name==="DedicatedWorkerGlobalScope"||self.constructor?.name==="ServiceWorkerGlobalScope"||self.constructor?.name==="SharedWorkerGlobalScope")?{type:"web-worker"}:typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u"?{type:"deno",version:Deno.version.deno}:typeof Bun<"u"&&typeof Bun.version<"u"?{type:"bun",version:Bun.version}:typeof process<"u"&&"version"in process&&!!process.version&&"versions"in process&&!!process.versions?.node?{type:"node",version:process.versions.node,parsedVersion:Number(process.versions.node.split(".")[0])}:typeof navigator<"u"&&navigator?.product==="ReactNative"?{type:"react-native"}:{type:"unknown"}}async function lo(){return h.type==="node"&&h.parsedVersion!=null&&h.parsedVersion>=18?fetch:h.type==="node"?(await import("node-fetch")).default:typeof fetch=="function"?fetch:(await import("node-fetch")).default}async function po({body:w,type:t}){return t.includes("json")?be(w):w}async function Fa(w){return h.type==="node"&&h.parsedVersion!=null&&h.parsedVersion>=18?new(await Promise.resolve().then(()=>(Va(),ka))).Node18UniversalStreamWrapper(w):h.type!=="node"&&typeof fetch=="function"?new(await Promise.resolve().then(()=>(Da(),Ba))).UndiciStreamWrapper(w):new(await Promise.resolve().then(()=>(Aa(),Ma))).NodePre18StreamWrapper(w)}async function mo(w,t){if(w.body!=null&&t==="blob")return await w.blob();if(w.body!=null&&t==="arrayBuffer")return await w.arrayBuffer();if(w.body!=null&&t==="sse")return w.body;if(w.body!=null&&t==="streaming")return Fa(w.body);if(w.body!=null&&t==="text")return await w.text();{let o=await w.text();if(o.length>0)try{return JSON.parse(o)}catch{return{ok:!1,error:{reason:"non-json",statusCode:w.status,rawBody:o}}}else return}}var Mh="timeout";function Ia(w){let t=new AbortController,o=setTimeout(()=>t.abort(Mh),w);return{signal:t.signal,abortId:o}}function Ka(...w){let t=w.length===1&&Array.isArray(w[0])?w[0]:w,o=new AbortController;for(let r of t){if(r.aborted){o.abort(r?.reason);break}r.addEventListener("abort",()=>o.abort(r?.reason),{signal:o.signal})}return o.signal}var uo=async(w,t,o,r,i,m,g,l,s)=>{let p=[],u;if(m!=null){let{signal:C,abortId:O}=Ia(m);u=O,p.push(C)}g!=null&&p.push(g);let y=Ka(p),z=await w(t,{method:o,headers:r,body:i,signal:y,credentials:l?"include":void 0,duplex:s});return u!=null&&clearTimeout(u),z};function Ah(w){let t=1+(Math.random()*2-1)*.2;return w*t}async function ho(w,t=2){let o=await w();for(let r=0;r<t&&([408,429].includes(o.status)||o.status>=500);++r){let i=Math.min(1e3*Math.pow(2,r),6e4),m=Ah(i);await new Promise(g=>setTimeout(g,m)),o=await w()}return o}async function Fh(w){let t={};if(w.body!==void 0&&w.contentType!=null&&(t["Content-Type"]=w.contentType),w.headers!=null)for(let[m,g]of Object.entries(w.headers))g!=null&&(t[m]=g);let o=co(w.url,w.queryParameters),r=await po({body:w.body,type:w.requestType==="json"?"json":"other"}),i=await lo();try{let m=await ho(async()=>uo(i,o,w.method,t,r,w.timeoutMs,w.abortSignal,w.withCredentials,w.duplex),w.maxRetries),g=await mo(m,w.responseType);return m.status>=200&&m.status<400?{ok:!0,body:g,headers:m.headers,rawResponse:Sr(m)}:{ok:!1,error:{reason:"status-code",statusCode:m.status,body:g},rawResponse:Sr(m)}}catch(m){return w.abortSignal!=null&&w.abortSignal.aborted?{ok:!1,error:{reason:"unknown",errorMessage:"The user aborted a request"},rawResponse:gr}:m instanceof Error&&m.name==="AbortError"?{ok:!1,error:{reason:"timeout"},rawResponse:gr}:m instanceof Error?{ok:!1,error:{reason:"unknown",errorMessage:m.message},rawResponse:wr}:{ok:!1,error:{reason:"unknown",errorMessage:be(m)},rawResponse:wr}}}var _=Fh;var d={get:async w=>typeof w=="function"?w():w};var R=class w extends Promise{constructor(t){super(o=>{o(void 0)}),this.innerPromise=t}static fromFunction(t,...o){return new w(t(...o))}static interceptFunction(t){return(...o)=>w.fromPromise(t(...o))}static fromPromise(t){return new w(t)}static fromExecutor(t){let o=new Promise(t);return new w(o)}static fromResult(t){let o=Promise.resolve(t);return new w(o)}unwrap(){return this.unwrappedPromise||(this.unwrappedPromise=this.innerPromise.then(({data:t})=>t)),this.unwrappedPromise}then(t,o){return this.unwrap().then(t,o)}catch(t){return this.unwrap().catch(t)}finally(t){return this.unwrap().finally(t)}async withRawResponse(){return await this.innerPromise}};var e={};dr(e,{JsonError:()=>xr,ParseError:()=>Er,any:()=>os,bigint:()=>La,boolean:()=>ts,booleanLiteral:()=>rs,date:()=>Ga,discriminant:()=>us,enum_:()=>wo,getObjectLikeUtils:()=>ve,getObjectUtils:()=>yr,getSchemaUtils:()=>I,isProperty:()=>$e,lazy:()=>Na,lazyObject:()=>Ya,list:()=>zo,number:()=>is,object:()=>yo,objectWithoutOptionalProperties:()=>Za,optional:()=>qt,property:()=>Ha,record:()=>cs,set:()=>ls,string:()=>as,stringLiteral:()=>es,transform:()=>Lt,undiscriminatedUnion:()=>ms,union:()=>hs,unknown:()=>ss,withParsedProperties:()=>Nt});var D={BIGINT:"bigint",DATE:"date",ENUM:"enum",LIST:"list",STRING_LITERAL:"stringLiteral",BOOLEAN_LITERAL:"booleanLiteral",OBJECT:"object",ANY:"any",BOOLEAN:"boolean",NUMBER:"number",STRING:"string",UNKNOWN:"unknown",RECORD:"record",SET:"set",UNION:"union",UNDISCRIMINATED_UNION:"undiscriminatedUnion",NULLABLE:"nullable",OPTIONAL:"optional",OPTIONAL_NULLABLE:"optionalNullable"};function F(w,t){return`Expected ${t}. Received ${Ih(w)}.`}function Ih(w){if(Array.isArray(w))return"list";if(w===null)return"null";if(w instanceof BigInt)return"BigInt";switch(typeof w){case"string":return`"${w}"`;case"bigint":case"number":case"boolean":case"undefined":return`${w}`}return typeof w}function ne(w){return{...w,json:qa(w.json),parse:qa(w.parse)}}function qa(w){return(t,o)=>{let r=w(t,o),{skipValidation:i=!1}=o??{};return!r.ok&&i?(console.warn(["Failed to validate.",...r.errors.map(m=>" - "+(m.path.length>0?`${m.path.join(".")}: ${m.message}`:m.message))].join(`
3
+ `)),{ok:!0,value:t}):r}}function go(w){return w.path.length===0?w.message:`${w.path.join(" -> ")}: ${w.message}`}var xr=class w extends Error{constructor(o){super(o.map(go).join("; "));this.errors=o;Object.setPrototypeOf(this,w.prototype)}};var Er=class w extends Error{constructor(o){super(o.map(go).join("; "));this.errors=o;Object.setPrototypeOf(this,w.prototype)}};function I(w){return{nullable:()=>Kh(w),optional:()=>qt(w),optionalNullable:()=>qh(w),transform:t=>Lt(w,t),parseOrThrow:(t,o)=>{let r=w.parse(t,o);if(r.ok)return r.value;throw new Er(r.errors)},jsonOrThrow:(t,o)=>{let r=w.json(t,o);if(r.ok)return r.value;throw new xr(r.errors)}}}function Kh(w){let t={parse:(o,r)=>o==null?{ok:!0,value:null}:w.parse(o,r),json:(o,r)=>o==null?{ok:!0,value:null}:w.json(o,r),getType:()=>D.NULLABLE};return{...t,...I(t)}}function qt(w){let t={parse:(o,r)=>o==null?{ok:!0,value:void 0}:w.parse(o,r),json:(o,r)=>r?.omitUndefined&&o===void 0?{ok:!0,value:void 0}:o==null?{ok:!0,value:null}:w.json(o,r),getType:()=>D.OPTIONAL};return{...t,...I(t)}}function qh(w){let t={parse:(o,r)=>o===void 0?{ok:!0,value:void 0}:o===null?{ok:!0,value:null}:w.parse(o,r),json:(o,r)=>o===void 0?{ok:!0,value:void 0}:o===null?{ok:!0,value:null}:w.json(o,r),getType:()=>D.OPTIONAL_NULLABLE};return{...t,...I(t)}}function Lt(w,t){let o={parse:(r,i)=>{let m=w.parse(r,i);return m.ok?{ok:!0,value:t.transform(m.value)}:m},json:(r,i)=>{let m=t.untransform(r);return w.json(m,i)},getType:()=>w.getType()};return{...o,...I(o)}}function La(){let w={parse:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t=="bigint"?{ok:!0,value:t}:typeof t=="number"?{ok:!0,value:BigInt(t)}:{ok:!1,errors:[{path:o,message:F(t,"bigint | number")}]},json:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t!="bigint"?{ok:!1,errors:[{path:o,message:F(t,"bigint")}]}:{ok:!0,value:t},getType:()=>D.BIGINT};return{...ne(w),...I(w)}}var Lh=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;function Ga(){let w={parse:(t,{breadcrumbsPrefix:o=[]}={})=>typeof t!="string"?{ok:!1,errors:[{path:o,message:F(t,"string")}]}:Lh.test(t)?{ok:!0,value:new Date(t)}:{ok:!1,errors:[{path:o,message:F(t,"ISO 8601 date string")}]},json:(t,{breadcrumbsPrefix:o=[]}={})=>t instanceof Date?{ok:!0,value:t.toISOString()}:{ok:!1,errors:[{path:o,message:F(t,"Date object")}]},getType:()=>D.DATE};return{...ne(w),...I(w)}}function de(w,t){return()=>{let o={parse:t,json:t,getType:()=>w};return{...ne(o),...I(o)}}}function wo(w){let t=new Set(w);return de(D.ENUM,(r,{allowUnrecognizedEnumValues:i,breadcrumbsPrefix:m=[]}={})=>typeof r!="string"?{ok:!1,errors:[{path:m,message:F(r,"string")}]}:!t.has(r)&&!i?{ok:!1,errors:[{path:m,message:F(r,"enum")}]}:{ok:!0,value:r})()}function Na(w){let t=Gt(w);return{...t,...I(t)}}function Gt(w){return{parse:(t,o)=>Ur(w).parse(t,o),json:(t,o)=>Ur(w).json(t,o),getType:()=>Ur(w).getType()}}function Ur(w){let t=w;return t.__zurg_memoized==null&&(t.__zurg_memoized=w()),t.__zurg_memoized}function eo(w){return Object.entries(w)}function ro(w,t){let o=new Set(t);return Object.entries(w).reduce((r,[i,m])=>(o.has(i)&&(r[i]=m),r),{})}function Je(w){if(typeof w!="object"||w===null)return!1;if(Object.getPrototypeOf(w)===null)return!0;let t=w;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(w)===t}function oo(w){return Object.keys(w)}function Xa(w,t){let o=[],r=[];for(let i of w)t(i)?o.push(i):r.push(i);return[o,r]}function ve(w){return{withParsedProperties:t=>Nt(w,t)}}function Nt(w,t){let o={parse:(r,i)=>{let m=w.parse(r,i);if(!m.ok)return m;let g=Object.entries(t).reduce((l,[s,p])=>({...l,[s]:typeof p=="function"?p(m.value):p}),{});return{ok:!0,value:{...m.value,...g}}},json:(r,i)=>{if(!Je(r))return{ok:!1,errors:[{path:i?.breadcrumbsPrefix??[],message:F(r,"object")}]};let m=new Set(Object.keys(t)),g=ro(r,Object.keys(r).filter(l=>!m.has(l)));return w.json(g,i)},getType:()=>w.getType()};return{...o,...I(o),...ve(o)}}function Ha(w,t){return{rawKey:w,valueSchema:t,isProperty:!0}}function $e(w){return w.isProperty}function yo(w){let t={_getRawProperties:()=>Object.entries(w).map(([o,r])=>$e(r)?r.rawKey:o),_getParsedProperties:()=>oo(w),parse:(o,r)=>{let i={},m=[];for(let[g,l]of eo(w)){let s=$e(l)?l.rawKey:g,p=$e(l)?l.valueSchema:l,u={rawKey:s,parsedKey:g,valueSchema:p};i[s]=u,$a(p)&&m.push(s)}return Wa({value:o,requiredKeys:m,getProperty:g=>{let l=i[g];if(l!=null)return{transformedKey:l.parsedKey,transform:s=>l.valueSchema.parse(s,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],g]})}},unrecognizedObjectKeys:r?.unrecognizedObjectKeys,skipValidation:r?.skipValidation,breadcrumbsPrefix:r?.breadcrumbsPrefix,omitUndefined:r?.omitUndefined})},json:(o,r)=>{let i=[];for(let[m,g]of eo(w)){let l=$e(g)?g.valueSchema:g;$a(l)&&i.push(m)}return Wa({value:o,requiredKeys:i,getProperty:m=>{let g=w[m];if(g!=null)return $e(g)?{transformedKey:g.rawKey,transform:l=>g.valueSchema.json(l,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],m]})}:{transformedKey:m,transform:l=>g.json(l,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],m]})}},unrecognizedObjectKeys:r?.unrecognizedObjectKeys,skipValidation:r?.skipValidation,breadcrumbsPrefix:r?.breadcrumbsPrefix,omitUndefined:r?.omitUndefined})},getType:()=>D.OBJECT};return{...ne(t),...I(t),...ve(t),...yr(t)}}function Wa({value:w,requiredKeys:t,getProperty:o,unrecognizedObjectKeys:r="fail",skipValidation:i=!1,breadcrumbsPrefix:m=[]}){if(!Je(w))return{ok:!1,errors:[{path:m,message:F(w,"object")}]};let g=new Set(t),l=[],s={};for(let[p,u]of Object.entries(w)){let y=o(p);if(y!=null){g.delete(p);let z=y.transform(u);z.ok?s[y.transformedKey]=z.value:(s[p]=u,l.push(...z.errors))}else switch(r){case"fail":l.push({path:[...m,p],message:`Unexpected key "${p}"`});break;case"strip":break;case"passthrough":s[p]=u;break}}return l.push(...t.filter(p=>g.has(p)).map(p=>({path:m,message:`Missing required key "${p}"`}))),l.length===0||i?{ok:!0,value:s}:{ok:!1,errors:l}}function yr(w){return{extend:t=>{let o={_getParsedProperties:()=>[...w._getParsedProperties(),...t._getParsedProperties()],_getRawProperties:()=>[...w._getRawProperties(),...t._getRawProperties()],parse:(r,i)=>Ja({extensionKeys:t._getRawProperties(),value:r,transformBase:m=>w.parse(m,i),transformExtension:m=>t.parse(m,i)}),json:(r,i)=>Ja({extensionKeys:t._getParsedProperties(),value:r,transformBase:m=>w.json(m,i),transformExtension:m=>t.json(m,i)}),getType:()=>D.OBJECT};return{...o,...I(o),...ve(o),...yr(o)}},passthrough:()=>{let t={_getParsedProperties:()=>w._getParsedProperties(),_getRawProperties:()=>w._getRawProperties(),parse:(o,r)=>{let i=w.parse(o,{...r,unrecognizedObjectKeys:"passthrough"});return i.ok?{ok:!0,value:{...o,...i.value}}:i},json:(o,r)=>{let i=w.json(o,{...r,unrecognizedObjectKeys:"passthrough"});return i.ok?{ok:!0,value:{...o,...i.value}}:i},getType:()=>D.OBJECT};return{...t,...I(t),...ve(t),...yr(t)}}}}function Ja({extensionKeys:w,value:t,transformBase:o,transformExtension:r}){let i=new Set(w),[m,g]=Xa(oo(t),p=>i.has(p)),l=o(ro(t,g)),s=r(ro(t,m));return l.ok&&s.ok?{ok:!0,value:{...l.value,...s.value}}:{ok:!1,errors:[...l.ok?[]:l.errors,...s.ok?[]:s.errors]}}function $a(w){return!Gh(w)}function Gh(w){switch(w.getType()){case D.ANY:case D.UNKNOWN:case D.OPTIONAL:case D.OPTIONAL_NULLABLE:return!0;default:return!1}}function Za(w){return yo(w)}function Ya(w){let t={...Gt(w),_getRawProperties:()=>Ur(w)._getRawProperties(),_getParsedProperties:()=>Ur(w)._getParsedProperties()};return{...t,...I(t),...ve(t),...yr(t)}}function zo(w){let t={parse:(o,r)=>Qa(o,(i,m)=>w.parse(i,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],`[${m}]`]})),json:(o,r)=>Qa(o,(i,m)=>w.json(i,{...r,breadcrumbsPrefix:[...r?.breadcrumbsPrefix??[],`[${m}]`]})),getType:()=>D.LIST};return{...ne(t),...I(t)}}function Qa(w,t){return Array.isArray(w)?w.map((r,i)=>t(r,i)).reduce((r,i)=>{if(r.ok&&i.ok)return{ok:!0,value:[...r.value,i.value]};let m=[];return r.ok||m.push(...r.errors),i.ok||m.push(...i.errors),{ok:!1,errors:m}},{ok:!0,value:[]}):{ok:!1,errors:[{message:F(w,"list"),path:[]}]}}function es(w){return de(D.STRING_LITERAL,(o,{breadcrumbsPrefix:r=[]}={})=>o===w?{ok:!0,value:w}:{ok:!1,errors:[{path:r,message:F(o,`"${w}"`)}]})()}function rs(w){return de(D.BOOLEAN_LITERAL,(o,{breadcrumbsPrefix:r=[]}={})=>o===w?{ok:!0,value:w}:{ok:!1,errors:[{path:r,message:F(o,`${w.toString()}`)}]})()}var os=de(D.ANY,w=>({ok:!0,value:w}));var ts=de(D.BOOLEAN,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="boolean"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:F(w,"boolean")}]});var is=de(D.NUMBER,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="number"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:F(w,"number")}]});var as=de(D.STRING,(w,{breadcrumbsPrefix:t=[]}={})=>typeof w=="string"?{ok:!0,value:w}:{ok:!1,errors:[{path:t,message:F(w,"string")}]});var ss=de(D.UNKNOWN,w=>({ok:!0,value:w}));function cs(w,t){let o={parse:(r,i)=>ns({value:r,isKeyNumeric:w.getType()===D.NUMBER,transformKey:m=>w.parse(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${m} (key)`]}),transformValue:(m,g)=>t.parse(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${g}`]}),breadcrumbsPrefix:i?.breadcrumbsPrefix}),json:(r,i)=>ns({value:r,isKeyNumeric:w.getType()===D.NUMBER,transformKey:m=>w.json(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${m} (key)`]}),transformValue:(m,g)=>t.json(m,{...i,breadcrumbsPrefix:[...i?.breadcrumbsPrefix??[],`${g}`]}),breadcrumbsPrefix:i?.breadcrumbsPrefix}),getType:()=>D.RECORD};return{...ne(o),...I(o)}}function ns({value:w,isKeyNumeric:t,transformKey:o,transformValue:r,breadcrumbsPrefix:i=[]}){return Je(w)?eo(w).reduce((m,[g,l])=>{if(l===void 0)return m;let s=m,p=g;if(t){let C=g.length>0?Number(g):NaN;isNaN(C)||(p=C)}let u=o(p),y=r(l,p);if(s.ok&&u.ok&&y.ok)return{ok:!0,value:{...s.value,[u.value]:y.value}};let z=[];return s.ok||z.push(...s.errors),u.ok||z.push(...u.errors),y.ok||z.push(...y.errors),{ok:!1,errors:z}},{ok:!0,value:{}}):{ok:!1,errors:[{path:i,message:F(w,"object")}]}}function ls(w){let t=zo(w),o={parse:(r,i)=>{let m=t.parse(r,i);return m.ok?{ok:!0,value:new Set(m.value)}:m},json:(r,i)=>r instanceof Set?t.json([...r],i):{ok:!1,errors:[{path:i?.breadcrumbsPrefix??[],message:F(r,"Set")}]},getType:()=>D.SET};return{...ne(o),...I(o)}}function ms(w){let t={parse:(o,r)=>ps((i,m)=>i.parse(o,m),w,r),json:(o,r)=>ps((i,m)=>i.json(o,m),w,r),getType:()=>D.UNDISCRIMINATED_UNION};return{...ne(t),...I(t)}}function ps(w,t,o){let r=[];for(let[i,m]of t.entries()){let g=w(m,{...o,skipValidation:!1});if(g.ok)return g;for(let l of g.errors)r.push({path:l.path,message:`[Variant ${i}] ${l.message}`})}return{ok:!1,errors:r}}function us(w,t){return{parsedDiscriminant:w,rawDiscriminant:t}}function hs(w,t){let o=typeof w=="string"?w:w.rawDiscriminant,r=typeof w=="string"?w:w.parsedDiscriminant,i=wo(oo(t)),m={parse:(g,l)=>ds({value:g,discriminant:o,transformedDiscriminant:r,transformDiscriminantValue:s=>i.parse(s,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],o]}),getAdditionalPropertiesSchema:s=>t[s],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(s,p)=>p.parse(s,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),json:(g,l)=>ds({value:g,discriminant:r,transformedDiscriminant:o,transformDiscriminantValue:s=>i.json(s,{allowUnrecognizedEnumValues:l?.allowUnrecognizedUnionMembers,breadcrumbsPrefix:[...l?.breadcrumbsPrefix??[],r]}),getAdditionalPropertiesSchema:s=>t[s],allowUnrecognizedUnionMembers:l?.allowUnrecognizedUnionMembers,transformAdditionalProperties:(s,p)=>p.json(s,l),breadcrumbsPrefix:l?.breadcrumbsPrefix}),getType:()=>D.UNION};return{...ne(m),...I(m),...ve(m)}}function ds({value:w,discriminant:t,transformedDiscriminant:o,transformDiscriminantValue:r,getAdditionalPropertiesSchema:i,allowUnrecognizedUnionMembers:m=!1,transformAdditionalProperties:g,breadcrumbsPrefix:l=[]}){if(!Je(w))return{ok:!1,errors:[{path:l,message:F(w,"object")}]};let{[t]:s,...p}=w;if(s==null)return{ok:!1,errors:[{path:l,message:`Missing discriminant ("${t}")`}]};let u=r(s);if(!u.ok)return{ok:!1,errors:u.errors};let y=i(u.value);if(y==null)return m?{ok:!0,value:{[o]:u.value,...p}}:{ok:!1,errors:[{path:[...l,t],message:"Unexpected discriminant value"}]};let z=g(p,y);return z.ok?{ok:!0,value:{[o]:s,...z.value}}:z}var ia=re(require("url-join"));var he=re(require("url-join"));var gs=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),requireEnvironment:e.property("require_environment",e.boolean().optional())});var bo=e.enum_(["admin","capture","read","write"]);var _e=e.object({createdAt:e.property("created_at",e.date()),description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),lastUsedAt:e.property("last_used_at",e.date().optional()),name:e.string(),scopes:e.list(bo),updatedAt:e.property("updated_at",e.date())});var ws=e.object({data:e.list(_e),params:gs});var ys=e.object({createdAt:e.property("created_at",e.date()),description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),lastUsedAt:e.property("last_used_at",e.date().optional()),name:e.string(),scopes:e.list(bo),secret:e.string(),updatedAt:e.property("updated_at",e.date())});var zs=e.object({data:ys,params:e.record(e.string(),e.unknown())});var bs=e.object({data:_e,params:e.record(e.string(),e.unknown())});var Rs=e.object({data:_e,params:e.record(e.string(),e.unknown())});var A=e.object({deleted:e.boolean().optional()});var fs=e.object({data:A,params:e.record(e.string(),e.unknown())});var _s=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),requireEnvironment:e.property("require_environment",e.boolean().optional())});var V=e.object({count:e.number().optional()});var Ss=e.object({data:V,params:_s});var xs=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),requestType:e.property("request_type",e.string().optional())});var Ro=e.object({apiKeyId:e.property("api_key_id",e.string()),endedAt:e.property("ended_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),method:e.string(),reqBody:e.property("req_body",e.string().optional()),requestType:e.property("request_type",e.string().optional()),resourceId:e.property("resource_id",e.number().optional()),resourceIdString:e.property("resource_id_string",e.string().optional()),resourceName:e.property("resource_name",e.string().optional()),resourceType:e.property("resource_type",e.string().optional()),respCode:e.property("resp_code",e.number().optional()),secondaryResource:e.property("secondary_resource",e.string().optional()),startedAt:e.property("started_at",e.date()),url:e.string(),userName:e.property("user_name",e.string().optional())});var Es=e.object({data:e.list(Ro),params:xs});var Us=e.object({apiKey:e.property("api_key",_e.optional()),apiKeyId:e.property("api_key_id",e.string()),endedAt:e.property("ended_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),id:e.string(),method:e.string(),reqBody:e.property("req_body",e.string().optional()),requestType:e.property("request_type",e.string().optional()),resourceId:e.property("resource_id",e.number().optional()),resourceIdString:e.property("resource_id_string",e.string().optional()),resourceName:e.property("resource_name",e.string().optional()),resourceType:e.property("resource_type",e.string().optional()),respBody:e.property("resp_body",e.string().optional()),respCode:e.property("resp_code",e.number().optional()),secondaryResource:e.property("secondary_resource",e.string().optional()),startedAt:e.property("started_at",e.date()),url:e.string(),userAgent:e.property("user_agent",e.string().optional()),userId:e.property("user_id",e.string().optional()),userName:e.property("user_name",e.string().optional())});var Ps=e.object({data:Us,params:e.record(e.string(),e.unknown())});var Cs=e.object({environmentId:e.property("environment_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),requestType:e.property("request_type",e.string().optional())});var Ts=e.object({data:V,params:Cs});var vs=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var Ze=e.enum_(["development","production","staging"]);var Pr=e.object({createdAt:e.property("created_at",e.date()),environmentType:e.property("environment_type",Ze),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Os=e.object({data:e.list(Pr),params:vs});var js=e.object({apiKeys:e.property("api_keys",e.list(_e)),createdAt:e.property("created_at",e.date()),environmentType:e.property("environment_type",Ze),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var ks=e.object({data:js,params:e.record(e.string(),e.unknown())});var Vs=e.object({data:Pr,params:e.record(e.string(),e.unknown())});var Bs=e.object({data:Pr,params:e.record(e.string(),e.unknown())});var Ds=e.object({data:A,params:e.record(e.string(),e.unknown())});var Ms=e.object({ok:e.boolean()});var As=e.object({data:Ms,params:e.record(e.string(),e.unknown())});var Xt=e.object({description:e.string().optional(),environmentId:e.property("environment_id",e.string().optional()),name:e.string()});var Ht=e.object({description:e.string().optional(),name:e.string().optional()});var Wt=e.object({environmentType:e.property("environment_type",Ze),name:e.string()});var Jt=e.object({environmentType:e.property("environment_type",Ze.optional()),name:e.string().optional()});var Fs=e.object({isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var fo=e.object({accountId:e.property("account_id",e.string()),amountOff:e.property("amount_off",e.number().optional()),currency:e.string().optional(),duration:e.string().optional(),durationInMonths:e.property("duration_in_months",e.number().optional()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),isActive:e.property("is_active",e.boolean()),maxRedemptions:e.property("max_redemptions",e.number().optional()),metadata:e.record(e.string(),e.unknown()),name:e.string(),percentOff:e.property("percent_off",e.number().optional()),timesRedeemed:e.property("times_redeemed",e.number()),validFrom:e.property("valid_from",e.date().optional()),validUntil:e.property("valid_until",e.date().optional())});var Is=e.object({data:e.list(fo),params:Fs});var Ks=e.object({data:fo,params:e.record(e.string(),e.unknown())});var qs=e.object({companyId:e.property("company_id",e.string().optional()),deletedAt:e.property("deleted_at",e.date().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),id:e.string(),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Ls=e.object({data:qs,params:e.record(e.string(),e.unknown())});var Gs=e.object({companyIds:e.property("company_ids",e.list(e.string()).optional()),failedToImport:e.property("failed_to_import",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),q:e.string().optional()});var Ns=e.object({currency:e.string(),expiredAt:e.property("expired_at",e.date().optional()),interval:e.string(),meteredUsage:e.property("metered_usage",e.boolean()),perUnitPrice:e.property("per_unit_price",e.number()),totalPrice:e.property("total_price",e.number())});var Xs=e.object({companyId:e.property("company_id",e.string().optional()),deletedAt:e.property("deleted_at",e.date().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),id:e.string(),name:e.string(),subscriptions:e.list(Ns),updatedAt:e.property("updated_at",e.date())});var Hs=e.object({data:e.list(Xs),params:Gs});var Ws=e.object({companyIds:e.property("company_ids",e.list(e.string()).optional()),failedToImport:e.property("failed_to_import",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),q:e.string().optional()});var Js=e.object({data:V,params:Ws});var $s=e.object({companyId:e.property("company_id",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),subscriptionExternalId:e.property("subscription_external_id",e.string().optional())});var Re=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string().optional()),id:e.string(),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),updatedAt:e.property("updated_at",e.date()),url:e.string().optional()});var Zs=e.object({data:e.list(Re),params:$s});var Ys=e.object({data:Re,params:e.record(e.string(),e.unknown())});var Qs=e.object({displayName:e.property("display_name",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var _o=e.object({dispalyName:e.property("dispaly_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string()),externalPriceId:e.property("external_price_id",e.string()),id:e.string()});var en=e.object({data:e.list(_o),params:Qs});var rn=e.object({data:_o,params:e.record(e.string(),e.unknown())});var on=e.object({companyId:e.property("company_id",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var ye=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),customerExternalId:e.property("customer_external_id",e.string()),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),paymentMethodType:e.property("payment_method_type",e.string()),updatedAt:e.property("updated_at",e.date())});var tn=e.object({data:e.list(ye),params:on});var an=e.object({data:ye,params:e.record(e.string(),e.unknown())});var te=e.enum_(["graduated","volume"]);var W=e.enum_(["licensed","metered"]);var sn=e.object({forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),ids:e.list(e.string()).optional(),interval:e.string().optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),offset:e.number().optional(),price:e.number().optional(),productId:e.property("product_id",e.string().optional()),productIds:e.property("product_ids",e.list(e.string()).optional()),q:e.string().optional(),tiersMode:e.property("tiers_mode",te.optional()),usageType:e.property("usage_type",W.optional()),withMeter:e.property("with_meter",e.boolean().optional())});var ke=e.enum_(["per_unit","tiered"]);var Cr=e.enum_(["day","month","one-time","year"]);var So=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),upTo:e.property("up_to",e.number().optional())});var J=e.object({billingScheme:e.property("billing_scheme",ke),createdAt:e.property("created_at",e.date()),currency:e.string(),id:e.string(),interval:Cr,isActive:e.property("is_active",e.boolean()),meterEventName:e.property("meter_event_name",e.string().optional()),meterEventPayloadKey:e.property("meter_event_payload_key",e.string().optional()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceId:e.property("price_id",e.string()),priceTier:e.property("price_tier",e.list(So)),productExternalId:e.property("product_external_id",e.string()),productId:e.property("product_id",e.string()),productName:e.property("product_name",e.string()),tiersMode:e.property("tiers_mode",te.optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",W)});var nn=e.object({data:e.list(J),params:sn});var $=e.object({currency:e.string(),externalPriceId:e.property("external_price_id",e.string()),id:e.string(),interval:Cr,price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),scheme:ke});var cn=e.object({data:$,params:e.record(e.string(),e.unknown())});var ln=e.object({data:A,params:e.record(e.string(),e.unknown())});var pn=e.object({forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),ids:e.list(e.string()).optional(),interval:e.string().optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),offset:e.number().optional(),price:e.number().optional(),productId:e.property("product_id",e.string().optional()),productIds:e.property("product_ids",e.list(e.string()).optional()),q:e.string().optional(),tiersMode:e.property("tiers_mode",te.optional()),usageType:e.property("usage_type",W.optional()),withMeter:e.property("with_meter",e.boolean().optional())});var mn=e.object({data:e.list(J),params:pn});var un=e.object({data:A,params:e.record(e.string(),e.unknown())});var Tr=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string().optional(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),name:e.string(),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),productId:e.property("product_id",e.string()),quantity:e.number(),updatedAt:e.property("updated_at",e.date())});var dn=e.object({data:Tr,params:e.record(e.string(),e.unknown())});var hn=e.object({ids:e.list(e.string()).optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),priceUsageType:e.property("price_usage_type",W.optional()),q:e.string().optional(),withOneTimeCharges:e.property("with_one_time_charges",e.boolean().optional()),withPricesOnly:e.property("with_prices_only",e.boolean().optional()),withZeroPrice:e.property("with_zero_price",e.boolean().optional()),withoutLinkedToPlan:e.property("without_linked_to_plan",e.boolean().optional())});var Ye=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string().optional(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),name:e.string(),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),prices:e.list($),productId:e.property("product_id",e.string()),quantity:e.number(),subscriptionCount:e.property("subscription_count",e.number()),updatedAt:e.property("updated_at",e.date())});var gn=e.object({data:e.list(Ye),params:hn});var wn=e.object({ids:e.list(e.string()).optional(),isActive:e.property("is_active",e.boolean().optional()),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional(),priceUsageType:e.property("price_usage_type",W.optional()),q:e.string().optional(),withOneTimeCharges:e.property("with_one_time_charges",e.boolean().optional()),withPricesOnly:e.property("with_prices_only",e.boolean().optional()),withZeroPrice:e.property("with_zero_price",e.boolean().optional()),withoutLinkedToPlan:e.property("without_linked_to_plan",e.boolean().optional())});var yn=e.object({data:V,params:wn});var Qe=e.enum_(["cancel","subscribe"]);var zn=e.object({applicationId:e.property("application_id",e.string().optional()),cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",Qe.optional())});var bn=e.object({data:zn,params:e.record(e.string(),e.unknown())});var $t=e.object({amountOff:e.property("amount_off",e.number()),currency:e.string().optional(),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number()),externalId:e.property("external_id",e.string()),maxRedemptions:e.property("max_redemptions",e.number()),name:e.string(),percentOff:e.property("percent_off",e.number()),timesRedeemed:e.property("times_redeemed",e.number())});var Zt=e.object({companyId:e.property("company_id",e.string().optional()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),email:e.string(),externalId:e.property("external_id",e.string()),failedToImport:e.property("failed_to_import",e.boolean()),meta:e.record(e.string(),e.string()),name:e.string()});var Yt=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),externalId:e.property("external_id",e.string().optional()),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),url:e.string().optional()});var Qt=e.object({displayName:e.property("display_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string()),externalId:e.property("external_id",e.string())});var ei=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string()),externalId:e.property("external_id",e.string()),paymentMethodType:e.property("payment_method_type",e.string())});var Rn=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitDecimal:e.property("per_unit_decimal",e.string().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),priceExternalId:e.property("price_external_id",e.string()),upTo:e.property("up_to",e.number().optional())});var ri=e.object({billingScheme:e.property("billing_scheme",ke),currency:e.string(),externalAccountId:e.property("external_account_id",e.string()),interval:e.string(),isActive:e.property("is_active",e.boolean()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number().optional()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceTiers:e.property("price_tiers",e.list(Rn)),productExternalId:e.property("product_external_id",e.string()),tiersMode:e.property("tiers_mode",te.optional()),usageType:e.property("usage_type",W)});var oi=e.object({externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean().optional()),name:e.string(),price:e.number()});var fn=e.object({couponExternalId:e.property("coupon_external_id",e.string()),customerFacingCode:e.property("customer_facing_code",e.string().optional()),endedAt:e.property("ended_at",e.date().optional()),externalId:e.property("external_id",e.string()),isActive:e.property("is_active",e.boolean()),promoCodeExternalId:e.property("promo_code_external_id",e.string().optional()),startedAt:e.property("started_at",e.date())});var _n=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),currency:e.string(),interval:e.string(),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number().optional()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),quantity:e.number(),subscriptionItemExternalId:e.property("subscription_item_external_id",e.string().optional()),usageType:e.property("usage_type",W)});var ti=e.object({applicationId:e.property("application_id",e.string().optional()),cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodExternalId:e.property("default_payment_method_external_id",e.string().optional()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),discounts:e.list(fn),expiredAt:e.property("expired_at",e.date()),interval:e.string().optional(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number().optional()),periodStart:e.property("period_start",e.number().optional()),productExternalIds:e.property("product_external_ids",e.list(_n)),status:e.string().optional(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",Qe.optional())});var Sn=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var vr=e.enum_(["expiration_priority","first_in_first_out","last_in_first_out","plan_first_then_credit_bundles_first_in_first_out"]);var K=e.enum_(["billing_periods","days"]);var Or=e.enum_(["expire","none","rollover"]);var Ve=e.object({burnStrategy:e.property("burn_strategy",vr),createdAt:e.property("created_at",e.date()),defaultExpiryUnit:e.property("default_expiry_unit",K),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",Or),description:e.string(),icon:e.string().optional(),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:$.optional(),product:Tr.optional(),singularName:e.property("singular_name",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var xn=e.object({data:e.list(Ve),params:Sn});var En=e.object({data:Ve,params:e.record(e.string(),e.unknown())});var Un=e.object({data:Ve,params:e.record(e.string(),e.unknown())});var Pn=e.object({data:Ve,params:e.record(e.string(),e.unknown())});var Cn=e.object({data:A,params:e.record(e.string(),e.unknown())});var fe=e.stringLiteral("fixed");var ge=e.enum_(["active","inactive"]);var Tn=e.object({bundleType:e.property("bundle_type",fe.optional()),creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),status:ge.optional()});var N=e.enum_(["duration","end_of_billing_period","end_of_next_billing_period","end_of_trial","no_expiry"]);var Se=e.object({billingInvoiceId:e.property("billing_invoice_id",e.string().optional()),bundleType:e.property("bundle_type",fe),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string().optional()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",N),expiryUnit:e.property("expiry_unit",K),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),hasGrants:e.property("has_grants",e.boolean()),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:$.optional(),quantity:e.number().optional(),singularName:e.property("singular_name",e.string().optional()),status:ge,unitPrice:e.property("unit_price",$.optional()),updatedAt:e.property("updated_at",e.date())});var vn=e.object({data:e.list(Se),params:Tn});var On=e.object({data:Se,params:e.record(e.string(),e.unknown())});var jn=e.object({data:Se,params:e.record(e.string(),e.unknown())});var kn=e.object({data:Se,params:e.record(e.string(),e.unknown())});var Vn=e.object({data:A,params:e.record(e.string(),e.unknown())});var Bn=e.object({bundleType:e.property("bundle_type",fe.optional()),creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),status:ge.optional()});var Dn=e.object({data:V,params:Bn});var Mn=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var An=e.object({data:V,params:Mn});var xe=e.enum_(["billing_credit_auto_topup","free","plan","purchased"]);var jr=e.enum_(["expired","manual","plan_change","plan_period_reset"]);var er=e.object({companyId:e.property("company_id",e.string()),companyName:e.property("company_name",e.string()),createdAt:e.property("created_at",e.date()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiresAt:e.property("expires_at",e.date().optional()),grantReason:e.property("grant_reason",xe),id:e.string(),planId:e.property("plan_id",e.string().optional()),planName:e.property("plan_name",e.string().optional()),price:$.optional(),quantity:e.number(),quantityRemaining:e.property("quantity_remaining",e.number()),quantityUsed:e.property("quantity_used",e.number()),sourceLabel:e.property("source_label",e.string()),updatedAt:e.property("updated_at",e.date()),validFrom:e.property("valid_from",e.date().optional()),zeroedOutDate:e.property("zeroed_out_date",e.date().optional()),zeroedOutReason:e.property("zeroed_out_reason",jr.optional())});var Fn=e.object({data:er,params:e.record(e.string(),e.unknown())});var In=e.object({data:er,params:e.record(e.string(),e.unknown())});var Oe=e.enum_(["asc","desc"]);var xo=e.enum_(["created_at","expires_at","quantity","quantity_remaining"]);var Kn=e.object({companyId:e.property("company_id",e.string().optional()),dir:Oe.optional(),limit:e.number().optional(),offset:e.number().optional(),order:xo.optional()});var qn=e.object({data:e.list(er),params:Kn});var Ln=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var Gn=e.object({data:V,params:Ln});var Nn=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional()});var Xn=e.object({data:e.list(er),params:Nn});var zr=e.enum_(["daily","monthly","raw","weekly"]);var Hn=e.object({billingCreditId:e.property("billing_credit_id",e.string().optional()),companyId:e.property("company_id",e.string().optional()),endTime:e.property("end_time",e.string().optional()),featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),period:zr.optional(),startTime:e.property("start_time",e.string().optional())});var Wn=e.object({id:e.string(),logoUrl:e.property("logo_url",e.string().optional()),name:e.string()});var Jn=e.object({description:e.string().optional(),icon:e.string().optional(),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var $n=e.object({description:e.string().optional(),icon:e.string().optional(),id:e.string(),name:e.string()});var Zn=e.object({billingCreditAutoTopupGrantCount:e.property("billing_credit_auto_topup_grant_count",e.number()),billingCreditId:e.property("billing_credit_id",e.string()),company:Wn.optional(),companyId:e.property("company_id",e.string()),credit:Jn.optional(),expiredGrantCount:e.property("expired_grant_count",e.number()),feature:$n.optional(),featureId:e.property("feature_id",e.string().optional()),firstTransactionAt:e.property("first_transaction_at",e.date()),freeGrantCount:e.property("free_grant_count",e.number()),grantCount:e.property("grant_count",e.number()),lastTransactionAt:e.property("last_transaction_at",e.date()),manuallyZeroedCount:e.property("manually_zeroed_count",e.number()),netChange:e.property("net_change",e.number()),planGrantCount:e.property("plan_grant_count",e.number()),purchasedGrantCount:e.property("purchased_grant_count",e.number()),timeBucket:e.property("time_bucket",e.date()),totalConsumed:e.property("total_consumed",e.number()),totalGranted:e.property("total_granted",e.number()),transactionCount:e.property("transaction_count",e.number()),usageCount:e.property("usage_count",e.number()),zeroedOutCount:e.property("zeroed_out_count",e.number())});var Yn=e.object({data:e.list(Zn),params:Hn});var Qn=e.object({billingCreditId:e.property("billing_credit_id",e.string().optional()),companyId:e.property("company_id",e.string().optional()),endTime:e.property("end_time",e.string().optional()),featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),period:zr.optional(),startTime:e.property("start_time",e.string().optional())});var ec=e.object({data:V,params:Qn});var rc=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional())});var Be=e.enum_(["daily","monthly","weekly","yearly"]);var Ee=e.enum_(["billing_period","first_of_month"]);var De=e.enum_(["no_reset","plan_period"]);var Me=e.object({autoTopupAmount:e.property("auto_topup_amount",e.number().optional()),autoTopupAmountType:e.property("auto_topup_amount_type",e.string().optional()),autoTopupEnabled:e.property("auto_topup_enabled",e.boolean()),autoTopupExpiryType:e.property("auto_topup_expiry_type",N.optional()),autoTopupExpiryUnit:e.property("auto_topup_expiry_unit",K.optional()),autoTopupExpiryUnitCount:e.property("auto_topup_expiry_unit_count",e.number().optional()),autoTopupThresholdPercent:e.property("auto_topup_threshold_percent",e.number().optional()),createdAt:e.property("created_at",e.date()),creditAmount:e.property("credit_amount",e.number()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),creditPluralName:e.property("credit_plural_name",e.string().optional()),creditSingularName:e.property("credit_singular_name",e.string().optional()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),id:e.string(),planId:e.property("plan_id",e.string()),planName:e.property("plan_name",e.string()),resetCadence:e.property("reset_cadence",Be),resetStart:e.property("reset_start",Ee),resetType:e.property("reset_type",De.optional()),updatedAt:e.property("updated_at",e.date())});var oc=e.object({data:e.list(Me),params:rc});var tc=e.object({data:Me,params:e.record(e.string(),e.unknown())});var ic=e.object({data:Me,params:e.record(e.string(),e.unknown())});var ac=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional())});var sc=e.object({data:A,params:ac});var nc=e.object({creditId:e.property("credit_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional())});var cc=e.object({data:V,params:nc});var ii=e.object({burnStrategy:e.property("burn_strategy",vr.optional()),currency:e.string(),defaultExpiryUnit:e.property("default_expiry_unit",K.optional()),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",Or.optional()),description:e.string(),icon:e.string().optional(),name:e.string(),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var ai=e.object({burnStrategy:e.property("burn_strategy",vr.optional()),defaultExpiryUnit:e.property("default_expiry_unit",K.optional()),defaultExpiryUnitCount:e.property("default_expiry_unit_count",e.number().optional()),defaultRolloverPolicy:e.property("default_rollover_policy",Or.optional()),description:e.string(),icon:e.string().optional(),name:e.string(),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional())});var si=e.object({bundleName:e.property("bundle_name",e.string()),bundleType:e.property("bundle_type",fe.optional()),creditId:e.property("credit_id",e.string()),currency:e.string(),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),pricePerUnit:e.property("price_per_unit",e.number()),pricePerUnitDecimal:e.property("price_per_unit_decimal",e.string().optional()),quantity:e.number().optional(),status:ge.optional()});var ni=e.object({bundleName:e.property("bundle_name",e.string()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),pricePerUnit:e.property("price_per_unit",e.number()),pricePerUnitDecimal:e.property("price_per_unit_decimal",e.string().optional()),quantity:e.number().optional(),status:ge.optional()});var ci=e.object({reason:jr.optional()});var li=e.object({billingPeriodsCount:e.property("billing_periods_count",e.number().optional()),companyId:e.property("company_id",e.string()),creditId:e.property("credit_id",e.string()),expiresAt:e.property("expires_at",e.date().optional()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),quantity:e.number(),reason:xe,renewalEnabled:e.property("renewal_enabled",e.boolean().optional()),renewalPeriod:e.property("renewal_period",Ee.optional())});var Eo=e.stringLiteral("credit");var pi=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional()),autoTopupAmount:e.property("auto_topup_amount",e.number().optional()),autoTopupAmountType:e.property("auto_topup_amount_type",Eo.optional()),autoTopupEnabled:e.property("auto_topup_enabled",e.boolean().optional()),autoTopupExpiryType:e.property("auto_topup_expiry_type",N.optional()),autoTopupExpiryUnit:e.property("auto_topup_expiry_unit",K.optional()),autoTopupExpiryUnitCount:e.property("auto_topup_expiry_unit_count",e.number().optional()),autoTopupThresholdPercent:e.property("auto_topup_threshold_percent",e.number().optional()),creditAmount:e.property("credit_amount",e.number()),creditId:e.property("credit_id",e.string()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),planId:e.property("plan_id",e.string()),resetCadence:e.property("reset_cadence",Be),resetStart:e.property("reset_start",Ee),resetType:e.property("reset_type",De.optional())});var mi=e.object({applyToExisting:e.property("apply_to_existing",e.boolean().optional()),autoTopupAmount:e.property("auto_topup_amount",e.number().optional()),autoTopupAmountType:e.property("auto_topup_amount_type",Eo.optional()),autoTopupEnabled:e.property("auto_topup_enabled",e.boolean().optional()),autoTopupExpiryType:e.property("auto_topup_expiry_type",N.optional()),autoTopupExpiryUnit:e.property("auto_topup_expiry_unit",K.optional()),autoTopupExpiryUnitCount:e.property("auto_topup_expiry_unit_count",e.number().optional()),autoTopupThresholdPercent:e.property("auto_topup_threshold_percent",e.number().optional()),creditAmount:e.property("credit_amount",e.number().optional()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),resetCadence:e.property("reset_cadence",Be),resetStart:e.property("reset_start",Ee),resetType:e.property("reset_type",De.optional())});var lc=e.object({applicationId:e.property("application_id",e.string().optional()),cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),confirmPaymentIntentClientSecret:e.property("confirm_payment_intent_client_secret",e.string().optional()),confirmPaymentIntentId:e.property("confirm_payment_intent_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),metadata:e.record(e.string(),e.unknown()).optional(),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",Qe.optional())});var pc=e.object({data:lc,params:e.record(e.string(),e.unknown())});var Ae=e.enum_(["free","one_time","recurring"]);var rr=e.enum_(["schematic","stripe"]);var Uo=e.object({companyCount:e.property("company_count",e.number()),environmentId:e.property("environment_id",e.string()),eventCount:e.property("event_count",e.number()),eventSubtype:e.property("event_subtype",e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),userCount:e.property("user_count",e.number())});var ie=e.enum_(["boolean","event","trait"]);var or=e.enum_(["add_on","alpha","beta","deprecated","ga","inactive","in_plan","internal_testing","legacy"]);var kr=e.object({createdAt:e.property("created_at",e.date()),description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",ie),icon:e.string(),id:e.string(),lifecyclePhase:e.property("lifecycle_phase",or.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var tr=e.stringLiteral("boolean");var q=e.enum_(["company","user"]);var Y=e.enum_(["boolean","currency","date","number","string","url"]);var ae=e.object({createdAt:e.property("created_at",e.date()),displayName:e.property("display_name",e.string()),entityType:e.property("entity_type",q),hierarchy:e.list(e.string()),id:e.string(),traitType:e.property("trait_type",Y),updatedAt:e.property("updated_at",e.date())});var mc=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var Po=e.object({comparisonTrait:e.property("comparison_trait",ae.optional()),comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionGroupId:e.property("condition_group_id",e.string().optional()),conditionType:e.property("condition_type",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),metricValue:e.property("metric_value",e.number().optional()),operator:e.string(),resourceIds:e.property("resource_ids",e.list(e.string())),resources:e.list(mc),ruleId:e.property("rule_id",e.string()),trait:ae.optional(),traitEntityType:e.property("trait_entity_type",q.optional()),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var uc=e.object({conditions:e.list(Po),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),ruleId:e.property("rule_id",e.string()),updatedAt:e.property("updated_at",e.date())});var Co=e.object({conditionGroups:e.property("condition_groups",e.list(uc)),conditions:e.list(Po),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",e.string()),updatedAt:e.property("updated_at",e.date()),value:e.boolean()});var Fe=e.object({createdAt:e.property("created_at",e.date()),defaultValue:e.property("default_value",e.boolean()),description:e.string(),feature:kr.optional(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",tr),id:e.string(),key:e.string(),lastCheckedAt:e.property("last_checked_at",e.date().optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),rules:e.list(Co),updatedAt:e.property("updated_at",e.date())});var Vr=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var oe=e.object({createdAt:e.property("created_at",e.date()),description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),eventSummary:e.property("event_summary",Uo.optional()),featureType:e.property("feature_type",ie),flags:e.list(Fe),icon:e.string(),id:e.string(),lifecyclePhase:e.property("lifecycle_phase",or.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),plans:e.list(Vr),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),trait:ae.optional(),traitId:e.property("trait_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var pe=e.enum_(["plan","add_on"]);var ce=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Ye.optional()),chargeType:e.property("charge_type",Ae),companyCount:e.property("company_count",e.number()),controlledBy:e.property("controlled_by",rr),createdAt:e.property("created_at",e.date()),description:e.string(),features:e.list(oe),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(Me).optional()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",$.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",$.optional()),planType:e.property("plan_type",pe),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),yearlyPrice:e.property("yearly_price",$.optional())});var ze=e.enum_(["credit_burndown","overage","pay_as_you_go","pay_in_advance","tier"]);var H=e.enum_(["boolean","credit","numeric","trait","unknown","unlimited"]);var br=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),consumptionRate:e.property("consumption_rate",e.number().optional()),featureId:e.property("feature_id",e.string()),meteredPrice:e.property("metered_price",J.optional()),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",J.optional()),priceBehavior:e.property("price_behavior",ze.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueType:e.property("value_type",H),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",J.optional())});var To=e.object({billingCreditAutoTopupAmount:e.property("billing_credit_auto_topup_amount",e.number().optional()),billingCreditAutoTopupAmountType:e.property("billing_credit_auto_topup_amount_type",e.string().optional()),billingCreditAutoTopupEnabled:e.property("billing_credit_auto_topup_enabled",e.boolean()),billingCreditAutoTopupExpiryType:e.property("billing_credit_auto_topup_expiry_type",N.optional()),billingCreditAutoTopupExpiryUnit:e.property("billing_credit_auto_topup_expiry_unit",K.optional()),billingCreditAutoTopupExpiryUnitCount:e.property("billing_credit_auto_topup_expiry_unit_count",e.number().optional()),billingCreditAutoTopupThresholdPercent:e.property("billing_credit_auto_topup_threshold_percent",e.number().optional()),createdAt:e.property("created_at",e.date()),creditAmount:e.property("credit_amount",e.number()),creditDescription:e.property("credit_description",e.string()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),id:e.string(),planId:e.property("plan_id",e.string()),planName:e.property("plan_name",e.string()),pluralName:e.property("plural_name",e.string().optional()),resetCadence:e.property("reset_cadence",Be),resetStart:e.property("reset_start",Ee),resetType:e.property("reset_type",De),singularName:e.property("singular_name",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var Br=e.object({addedOn:e.property("added_on",e.date().optional()),billingProductExternalId:e.property("billing_product_external_id",e.string().optional()),billingProductId:e.property("billing_product_id",e.string().optional()),description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),includedCreditGrants:e.property("included_credit_grants",e.list(To)),name:e.string(),planPeriod:e.property("plan_period",e.string().optional()),planPrice:e.property("plan_price",e.number().optional())});var vo=e.object({amountOff:e.property("amount_off",e.number().optional()),couponId:e.property("coupon_id",e.string()),couponName:e.property("coupon_name",e.string()),currency:e.string().optional(),customerFacingCode:e.property("customer_facing_code",e.string().optional()),discountExternalId:e.property("discount_external_id",e.string()),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number().optional()),endedAt:e.property("ended_at",e.date().optional()),isActive:e.property("is_active",e.boolean()),percentOff:e.property("percent_off",e.number().optional()),promoCodeExternalId:e.property("promo_code_external_id",e.string().optional()),startedAt:e.property("started_at",e.date()),subscriptionExternalId:e.property("subscription_external_id",e.string())});var Oo=e.object({billingScheme:e.property("billing_scheme",ke),billingThreshold:e.property("billing_threshold",e.number().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),id:e.string(),interval:e.string(),meterId:e.property("meter_id",e.string().optional()),name:e.string(),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),priceId:e.property("price_id",e.string()),priceTier:e.property("price_tier",e.list(So)),quantity:e.number(),subscriptionId:e.property("subscription_id",e.string()),subscriptionItemExternalId:e.property("subscription_item_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",W)});var ir=e.object({applicationId:e.property("application_id",e.string().optional()),cancelAt:e.property("cancel_at",e.number().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),companyId:e.property("company_id",e.string().optional()),createdAt:e.property("created_at",e.date()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),defaultPaymentMethodId:e.property("default_payment_method_id",e.string().optional()),discounts:e.list(vo),expiredAt:e.property("expired_at",e.date().optional()),id:e.string(),interval:e.string(),latestInvoice:e.property("latest_invoice",Re.optional()),metadata:e.record(e.string(),e.unknown()).optional(),paymentMethod:e.property("payment_method",ye.optional()),periodEnd:e.property("period_end",e.number()),periodStart:e.property("period_start",e.number()),products:e.list(Oo),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.number().optional()),trialEndSetting:e.property("trial_end_setting",Qe.optional())});var Dr=e.object({createdAt:e.property("created_at",e.date()),definition:ae.optional(),definitionId:e.property("definition_id",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var jo=e.object({createdAt:e.property("created_at",e.date()),entityType:e.property("entity_type",q),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date())});var Mr=e.object({createdAt:e.property("created_at",e.date()),definition:jo.optional(),definitionId:e.property("definition_id",e.string()),entityId:e.property("entity_id",e.string()),entityType:e.property("entity_type",q),environmentId:e.property("environment_id",e.string()),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var ko=e.object({accountId:e.property("account_id",e.string()),capturedAtMax:e.property("captured_at_max",e.date()),capturedAtMin:e.property("captured_at_min",e.date()),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string()),monthReset:e.property("month_reset",e.string()),period:e.string(),validUntil:e.property("valid_until",e.date().optional()),value:e.number()});var Vo=e.object({description:e.string().optional(),id:e.string(),imageUrl:e.property("image_url",e.string().optional()),name:e.string()});var dc=e.enum_(["bool","date","int","string"]);var ui=e.object({comparableType:e.property("comparable_type",dc),entityType:e.property("entity_type",q),id:e.string()});var hc=e.enum_(["base_plan","billing_product","company","credit","crm_product","metric","plan","trait","user"]);var gc=e.enum_(["all_time","current_day","current_month","current_week"]);var wc=e.enum_(["first_of_month","billing_cycle"]);var yc=e.enum_(["eq","ne","gt","lt","gte","lte","is_empty","not_empty"]);var Bo=e.object({accountId:e.property("account_id",e.string()),comparisonTraitDefinition:e.property("comparison_trait_definition",ui.optional()),conditionType:e.property("condition_type",hc),consumptionRate:e.property("consumption_rate",e.number().optional()),creditId:e.property("credit_id",e.string().optional()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",gc.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",wc.optional()),metricValue:e.property("metric_value",e.number().optional()),operator:yc,resourceIds:e.property("resource_ids",e.list(e.string())),traitDefinition:e.property("trait_definition",ui.optional()),traitValue:e.property("trait_value",e.string())});var zc=e.object({conditions:e.list(Bo)});var bc=e.enum_(["default","global_override","company_override","company_override_usage_exceeded","plan_entitlement","plan_entitlement_usage_exceeded","standard"]);var Do=e.object({accountId:e.property("account_id",e.string()),conditionGroups:e.property("condition_groups",e.list(zc)),conditions:e.list(Bo),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",bc),value:e.boolean()});var L=e.object({addOns:e.property("add_ons",e.list(Br)),billingCreditBalances:e.property("billing_credit_balances",e.record(e.string(),e.number()).optional()),billingSubscription:e.property("billing_subscription",ir.optional()),billingSubscriptions:e.property("billing_subscriptions",e.list(ir)),createdAt:e.property("created_at",e.date()),defaultPaymentMethod:e.property("default_payment_method",ye.optional()),entityTraits:e.property("entity_traits",e.list(Dr)),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.list(Mr),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),metrics:e.list(ko),name:e.string(),paymentMethods:e.property("payment_methods",e.list(ye)),plan:Br.optional(),plans:e.list(Vo),rules:e.list(Do),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date()),userCount:e.property("user_count",e.number())});var Rc=e.object({createdAt:e.property("created_at",e.date()),externalUserId:e.property("external_user_id",e.string()),externalUserName:e.property("external_user_name",e.string()),id:e.string(),note:e.string(),updatedAt:e.property("updated_at",e.date())});var Ue=e.object({company:L.optional(),companyId:e.property("company_id",e.string()),consumptionRate:e.property("consumption_rate",e.number().optional()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expirationDate:e.property("expiration_date",e.date().optional()),feature:kr.optional(),featureId:e.property("feature_id",e.string()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),notes:e.list(Rc),ruleId:e.property("rule_id",e.string().optional()),ruleIdUsageExceeded:e.property("rule_id_usage_exceeded",e.string().optional()),updatedAt:e.property("updated_at",e.date()),valueBool:e.property("value_bool",e.boolean().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTrait:e.property("value_trait",ae.optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var ar=e.object({creditTypeIcon:e.property("credit_type_icon",e.string().optional()),expiresAt:e.property("expires_at",e.date().optional()),grantReason:e.property("grant_reason",xe),quantity:e.number()});var Ar=e.enum_(["company_override","plan_entitlement","unknown"]);var sr=e.object({audienceType:e.property("audience_type",e.string().optional()),createdAt:e.property("created_at",e.date()),description:e.string(),icon:e.string(),id:e.string(),name:e.string(),planType:e.property("plan_type",pe),updatedAt:e.property("updated_at",e.date())});var le=e.object({billingThreshold:e.property("billing_threshold",e.number().optional()),consumptionRate:e.property("consumption_rate",e.number().optional()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),feature:kr.optional(),featureId:e.property("feature_id",e.string()),id:e.string(),meteredMonthlyPrice:e.property("metered_monthly_price",J.optional()),meteredYearlyPrice:e.property("metered_yearly_price",J.optional()),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),plan:sr.optional(),planId:e.property("plan_id",e.string()),priceBehavior:e.property("price_behavior",ze.optional()),ruleId:e.property("rule_id",e.string()),ruleIdUsageExceeded:e.property("rule_id_usage_exceeded",e.string().optional()),softLimit:e.property("soft_limit",e.number().optional()),updatedAt:e.property("updated_at",e.date()),usageBasedProduct:e.property("usage_based_product",Tr.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCredit:e.property("value_credit",Ve.optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTrait:e.property("value_trait",ae.optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var nr=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",H),companyOverride:e.property("company_override",Ue.optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(ar).optional()),creditGrantReason:e.property("credit_grant_reason",xe.optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional()),effectiveLimit:e.property("effective_limit",e.number().optional()),effectivePrice:e.property("effective_price",e.number().optional()),entitlementExpirationDate:e.property("entitlement_expiration_date",e.date().optional()),entitlementId:e.property("entitlement_id",e.string()),entitlementSource:e.property("entitlement_source",e.string().optional()),entitlementType:e.property("entitlement_type",Ar),feature:oe.optional(),hasValidAllocation:e.property("has_valid_allocation",e.boolean().optional()),isUnlimited:e.property("is_unlimited",e.boolean().optional()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",J.optional()),overuse:e.number().optional(),percentUsed:e.property("percent_used",e.number().optional()),period:e.string().optional(),plan:sr.optional(),planEntitlement:e.property("plan_entitlement",le.optional()),priceBehavior:e.property("price_behavior",ze.optional()),softLimit:e.property("soft_limit",e.number().optional()),usage:e.number().optional(),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",J.optional())});var cr=e.object({features:e.list(nr)});var fc=e.object({bundle:Se.optional(),quantity:e.number(),total:e.number()});var lr=e.object({cancelAt:e.property("cancel_at",e.date().optional()),cancelAtPeriodEnd:e.property("cancel_at_period_end",e.boolean()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),discounts:e.list(vo),expiredAt:e.property("expired_at",e.date().optional()),interval:e.string(),latestInvoice:e.property("latest_invoice",Re.optional()),paymentMethod:e.property("payment_method",ye.optional()),products:e.list(Oo),status:e.string(),subscriptionExternalId:e.property("subscription_external_id",e.string()),totalPrice:e.property("total_price",e.number()),trialEnd:e.property("trial_end",e.date().optional())});var _c=e.object({activeAddOns:e.property("active_add_ons",e.list(ce)),activePlan:e.property("active_plan",ce.optional()),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(br)),availableCreditBundles:e.property("available_credit_bundles",e.list(Se)),company:L.optional(),featureUsage:e.property("feature_usage",cr.optional()),selectedCreditBundles:e.property("selected_credit_bundles",e.list(fc)),selectedPlan:e.property("selected_plan",ce.optional()),selectedUsageBasedEntitlements:e.property("selected_usage_based_entitlements",e.list(br)),subscription:lr.optional()});var Sc=e.object({data:_c,params:e.record(e.string(),e.unknown())});var xc=e.object({amount:e.number(),description:e.string(),priceId:e.property("price_id",e.string()),proration:e.boolean(),quantity:e.number()});var Ec=e.object({amountOff:e.property("amount_off",e.number()),dueNow:e.property("due_now",e.number()),newCharges:e.property("new_charges",e.number()),percentOff:e.property("percent_off",e.number()),periodStart:e.property("period_start",e.date()),promoCodeApplied:e.property("promo_code_applied",e.boolean()),proration:e.number(),taxAmount:e.property("tax_amount",e.number().optional()),taxDisplayName:e.property("tax_display_name",e.string().optional()),taxRequireBillingDetails:e.property("tax_require_billing_details",e.boolean()),totalPerBillingPeriod:e.property("total_per_billing_period",e.number()),trialEnd:e.property("trial_end",e.date().optional()),upcomingInvoiceLineItems:e.property("upcoming_invoice_line_items",e.list(xc))});var Mo=e.object({amountOff:e.property("amount_off",e.number()),dueNow:e.property("due_now",e.number()),finance:Ec.optional(),newCharges:e.property("new_charges",e.number()),paymentMethodRequired:e.property("payment_method_required",e.boolean()),percentOff:e.property("percent_off",e.number()),periodStart:e.property("period_start",e.date()),promoCodeApplied:e.property("promo_code_applied",e.boolean()),proration:e.number(),trialEnd:e.property("trial_end",e.date().optional()),usageViolations:e.property("usage_violations",e.list(nr))});var Uc=e.object({data:Mo,params:e.record(e.string(),e.unknown())});var Ao=e.object({company:L.optional(),success:e.boolean()});var Pc=e.object({data:Ao,params:e.record(e.string(),e.unknown())});var Cc=e.object({subscriptionChangePreview:e.property("subscription_change_preview",Mo.optional())});var Tc=e.object({data:Cc,params:e.record(e.string(),e.unknown())});var vc=e.object({data:Ao,params:e.record(e.string(),e.unknown())});var Oc=e.object({data:ir,params:e.record(e.string(),e.unknown())});var di=e.object({companyId:e.property("company_id",e.string()),selectedPlanId:e.property("selected_plan_id",e.string().optional())});var hi=e.object({cancelImmediately:e.property("cancel_immediately",e.boolean().optional()),companyId:e.property("company_id",e.string()),prorate:e.boolean().optional()});var gi=e.object({trialEnd:e.property("trial_end",e.date().optional())});var jc=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional(),withSubscription:e.property("with_subscription",e.boolean().optional()),withoutFeatureOverrideFor:e.property("without_feature_override_for",e.string().optional()),withoutPlan:e.property("without_plan",e.boolean().optional())});var kc=e.object({data:e.list(L),params:jc});var Vc=e.object({data:L,params:e.record(e.string(),e.unknown())});var Bc=e.object({data:L,params:e.record(e.string(),e.unknown())});var Dc=e.object({cancelSubscription:e.property("cancel_subscription",e.boolean().optional()),prorate:e.boolean().optional()});var Mc=e.object({data:A,params:Dc});var Ac=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional(),withSubscription:e.property("with_subscription",e.boolean().optional()),withoutFeatureOverrideFor:e.property("without_feature_override_for",e.string().optional()),withoutPlan:e.property("without_plan",e.boolean().optional())});var Fc=e.object({data:V,params:Ac});var Xe=e.enum_(["active","canceled","expired","incomplete","incomplete_expired","past_due","paused","trialing","unpaid"]);var He=e.enum_(["free","one_time","paid","trial"]);var Ic=e.object({creditTypeIds:e.property("credit_type_ids",e.list(e.string()).optional()),displayProperties:e.property("display_properties",e.list(e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),monetizedSubscriptions:e.property("monetized_subscriptions",e.boolean().optional()),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),sortOrderColumn:e.property("sort_order_column",e.string().optional()),sortOrderDirection:e.property("sort_order_direction",Oe.optional()),subscriptionStatuses:e.property("subscription_statuses",e.list(Xe).optional()),subscriptionTypes:e.property("subscription_types",e.list(He).optional()),withoutPlan:e.property("without_plan",e.boolean().optional()),withoutSubscription:e.property("without_subscription",e.boolean().optional())});var Kc=e.object({data:V,params:Ic});var qc=e.object({data:L,params:e.record(e.string(),e.unknown())});var Fr=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Lc=e.object({data:Fr,params:e.record(e.string(),e.unknown())});var Gc=e.object({creditTypeIds:e.property("credit_type_ids",e.list(e.string()).optional()),displayProperties:e.property("display_properties",e.list(e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),monetizedSubscriptions:e.property("monetized_subscriptions",e.boolean().optional()),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),sortOrderColumn:e.property("sort_order_column",e.string().optional()),sortOrderDirection:e.property("sort_order_direction",Oe.optional()),subscriptionStatuses:e.property("subscription_statuses",e.list(Xe).optional()),subscriptionTypes:e.property("subscription_types",e.list(He).optional()),withoutPlan:e.property("without_plan",e.boolean().optional()),withoutSubscription:e.property("without_subscription",e.boolean().optional())});var Nc=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(ar)),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditTypeName:e.property("credit_type_name",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional())});var Xc=e.object({creditTypeId:e.property("credit_type_id",e.string().optional()),creditUsage:e.property("credit_usage",Nc.optional()),entitlementSource:e.property("entitlement_source",e.string()),entitlementValueType:e.property("entitlement_value_type",e.string()),featureId:e.property("feature_id",e.string()),featureName:e.property("feature_name",e.string()),featureType:e.property("feature_type",ie),hardLimit:e.property("hard_limit",e.string()),hasAccess:e.property("has_access",e.boolean()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",J.optional()),priceBehavior:e.property("price_behavior",e.string().optional()),softLimit:e.property("soft_limit",e.string()),usage:e.string(),valueNumeric:e.property("value_numeric",e.number().optional()),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",J.optional())});var Hc=e.object({addOns:e.property("add_ons",e.list(Br)),billingCreditBalances:e.property("billing_credit_balances",e.record(e.string(),e.number()).optional()),billingSubscription:e.property("billing_subscription",ir.optional()),billingSubscriptions:e.property("billing_subscriptions",e.list(ir)),createdAt:e.property("created_at",e.date()),defaultPaymentMethod:e.property("default_payment_method",ye.optional()),entityTraits:e.property("entity_traits",e.list(Dr)),environmentId:e.property("environment_id",e.string()),featureUsage:e.property("feature_usage",e.list(Xc)),id:e.string(),keys:e.list(Mr),lastSeenAt:e.property("last_seen_at",e.date().optional()),logoUrl:e.property("logo_url",e.string().optional()),metrics:e.list(ko),name:e.string(),paymentMethods:e.property("payment_methods",e.list(ye)),plan:Br.optional(),plans:e.list(Vo),rules:e.list(Do),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date()),userCount:e.property("user_count",e.number())});var Wc=e.object({data:e.list(Hc),params:Gc});var Jc=e.object({keys:e.record(e.string(),e.string()).optional()});var $c=e.object({data:L,params:Jc});var Zc=e.object({companyId:e.property("company_id",e.string().optional()),dealStage:e.property("deal_stage",e.string().optional()),limit:e.number().optional(),offset:e.number().optional()});var wi=e.record(e.string(),e.unknown());var Yc=e.object({billingFrequency:e.property("billing_frequency",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),description:e.string(),discountPercentage:e.property("discount_percentage",wi.optional()),id:e.string(),name:e.string(),price:e.number(),quantity:e.number(),termMonth:e.property("term_month",e.number().optional()),totalDiscount:e.property("total_discount",wi.optional()),updatedAt:e.property("updated_at",e.date())});var Qc=e.object({dealArr:e.property("deal_arr",e.string()),dealExternalId:e.property("deal_external_id",e.string()),dealMrr:e.property("deal_mrr",e.string()),dealName:e.property("deal_name",e.string().optional()),lineItems:e.property("line_items",e.list(Yc))});var el=e.object({data:e.list(Qc),params:Zc});var rl=e.object({companyId:e.property("company_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),userId:e.property("user_id",e.string().optional())});var Ir=e.object({company:Fr.optional(),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),id:e.string(),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string())});var ol=e.object({data:e.list(Ir),params:rl});var tl=e.object({data:Ir,params:e.record(e.string(),e.unknown())});var il=e.object({data:A,params:e.record(e.string(),e.unknown())});var al=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional()});var sl=e.object({data:e.list(lr),params:al});var nl=e.object({data:L,params:e.record(e.string(),e.unknown())});var cl=e.object({entityType:e.property("entity_type",q.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var ll=e.object({data:e.list(jo),params:cl});var pl=e.object({entityType:e.property("entity_type",q.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var ml=e.object({data:V,params:pl});var ul=e.object({entityType:e.property("entity_type",q.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),traitType:e.property("trait_type",Y.optional()),traitTypes:e.property("trait_types",e.list(Y).optional())});var dl=e.object({data:e.list(ae),params:ul});var hl=e.object({data:ae,params:e.record(e.string(),e.unknown())});var gl=e.object({data:ae,params:e.record(e.string(),e.unknown())});var wl=e.object({data:ae,params:e.record(e.string(),e.unknown())});var yl=e.object({entityType:e.property("entity_type",q.optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),traitType:e.property("trait_type",Y.optional()),traitTypes:e.property("trait_types",e.list(Y).optional())});var zl=e.object({data:V,params:yl});var bl=e.object({definitionId:e.property("definition_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Rl=e.object({definitionId:e.property("definition_id",e.string()),value:e.string()});var fl=e.object({data:e.list(Rl),params:bl});var _l=e.object({action:e.string().optional(),basePlanAction:e.property("base_plan_action",e.string().optional()),companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),planIds:e.property("plan_ids",e.list(e.string()).optional())});var Sl=e.enum_(["checkout","company_upsert","fallback_plan","manage_plan","migration","plan_billing_product_changed","plan_deleted","plan_trait_change","quickstart","subscription_change"]);var xl=e.enum_(["api_key","app_user","system","temporary_access_token"]);var to=e.object({deleted:e.boolean(),description:e.string(),icon:e.string(),id:e.string(),name:e.string()});var El=e.enum_(["fallback","initial","trait","trial_expiry"]);var Ul=e.enum_(["downgrade","invalid","subscribe","unsubscribe","upgrade","upgrade_trial"]);var Pl=e.object({featureId:e.property("feature_id",e.string()),hierarchy:e.list(e.string()),reason:e.string(),traitId:e.property("trait_id",e.string()),traitName:e.property("trait_name",e.string()),traitType:e.property("trait_type",Y),value:e.string()});var Fo=e.object({action:Sl,actorType:e.property("actor_type",xl),addOnsAdded:e.property("add_ons_added",e.list(to)),addOnsRemoved:e.property("add_ons_removed",e.list(to)),apiKey:e.property("api_key",_e.optional()),apiKeyRequest:e.property("api_key_request",Ro.optional()),basePlan:e.property("base_plan",to.optional()),basePlanAction:e.property("base_plan_action",El.optional()),company:Fr.optional(),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),previousBasePlan:e.property("previous_base_plan",to.optional()),requestId:e.property("request_id",e.string().optional()),subscriptionChangeAction:e.property("subscription_change_action",Ul.optional()),traitsUpdated:e.property("traits_updated",e.list(Pl)),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string().optional()),userName:e.property("user_name",e.string().optional())});var Cl=e.object({data:e.list(Fo),params:_l});var Tl=e.object({data:Fo,params:e.record(e.string(),e.unknown())});var vl=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitIds:e.property("trait_ids",e.list(e.string()).optional())});var Ie=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),planId:e.property("plan_id",e.string()),planType:e.property("plan_type",e.string()),traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var Ol=e.object({data:e.list(Ie),params:vl});var jl=e.object({data:Ie,params:e.record(e.string(),e.unknown())});var kl=e.object({data:Ie,params:e.record(e.string(),e.unknown())});var Vl=e.object({data:Ie,params:e.record(e.string(),e.unknown())});var Bl=e.object({data:A,params:e.record(e.string(),e.unknown())});var Dl=e.object({data:e.list(Ie),params:e.record(e.string(),e.unknown())});var Ml=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),traitId:e.property("trait_id",e.string().optional()),traitIds:e.property("trait_ids",e.list(e.string()).optional())});var Al=e.object({data:V,params:Ml});var Pe=e.object({companyMemberships:e.property("company_memberships",e.list(Ir)),createdAt:e.property("created_at",e.date()),entityTraits:e.property("entity_traits",e.list(Dr)),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.list(Mr),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string(),traits:e.record(e.string(),e.unknown()).optional(),updatedAt:e.property("updated_at",e.date())});var Fl=e.object({data:Pe,params:e.record(e.string(),e.unknown())});var Il=e.object({companyId:e.property("company_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional()});var Kl=e.object({data:e.list(Pe),params:Il});var ql=e.object({data:Pe,params:e.record(e.string(),e.unknown())});var Ll=e.object({data:Pe,params:e.record(e.string(),e.unknown())});var Gl=e.object({data:A,params:e.record(e.string(),e.unknown())});var Nl=e.object({companyId:e.property("company_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),q:e.string().optional()});var Xl=e.object({data:V,params:Nl});var Hl=e.object({data:Pe,params:e.record(e.string(),e.unknown())});var Io=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),id:e.string(),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var Wl=e.object({data:Io,params:e.record(e.string(),e.unknown())});var Jl=e.object({keys:e.record(e.string(),e.string()).optional()});var $l=e.object({data:Pe,params:Jl});var yi=e.object({companyId:e.property("company_id",e.string()),userId:e.property("user_id",e.string())});var zi=e.object({displayName:e.property("display_name",e.string().optional()),entityType:e.property("entity_type",q),hierarchy:e.list(e.string()),traitType:e.property("trait_type",Y)});var bi=e.object({displayName:e.property("display_name",e.string().optional()),traitType:e.property("trait_type",Y)});var Ri=e.object({planId:e.property("plan_id",e.string()),traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string())});var fi=e.object({planId:e.property("plan_id",e.string()),traitValue:e.property("trait_value",e.string())});var Zl=e.object({traitId:e.property("trait_id",e.string()),traitValue:e.property("trait_value",e.string())});var _i=e.object({applyToExistingCompanies:e.property("apply_to_existing_companies",e.boolean()),planId:e.property("plan_id",e.string()),traits:e.list(Zl)});var Yl=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutExpired:e.property("without_expired",e.boolean().optional())});var Ql=e.object({data:e.list(Ue),params:Yl});var ep=e.enum_(["all_time","current_month","current_week","current_day"]);var rp=e.enum_(["first_of_month","billing_cycle"]);var op=e.object({data:Ue,params:e.record(e.string(),e.unknown())});var tp=e.object({data:Ue,params:e.record(e.string(),e.unknown())});var ip=e.enum_(["all_time","current_month","current_week","current_day"]);var ap=e.enum_(["first_of_month","billing_cycle"]);var sp=e.object({data:Ue,params:e.record(e.string(),e.unknown())});var np=e.object({data:A,params:e.record(e.string(),e.unknown())});var cp=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutExpired:e.property("without_expired",e.boolean().optional())});var lp=e.object({data:V,params:cp});var pp=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var mp=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(ar).optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditTypeName:e.property("credit_type_name",e.string().optional()),creditUsed:e.property("credit_used",e.number().optional())});var up=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",H),company:L.optional(),companyOverride:e.property("company_override",Ue.optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),creditGrantCounts:e.property("credit_grant_counts",e.record(e.string(),e.number()).optional()),creditGrantDetails:e.property("credit_grant_details",e.list(ar).optional()),creditGrantReason:e.property("credit_grant_reason",xe.optional()),creditRemaining:e.property("credit_remaining",e.number().optional()),creditTotal:e.property("credit_total",e.number().optional()),creditTypeIcon:e.property("credit_type_icon",e.string().optional()),creditUsage:e.property("credit_usage",mp.optional()),creditUsed:e.property("credit_used",e.number().optional()),effectiveLimit:e.property("effective_limit",e.number().optional()),effectivePrice:e.property("effective_price",e.number().optional()),entitlementExpirationDate:e.property("entitlement_expiration_date",e.date().optional()),entitlementId:e.property("entitlement_id",e.string()),entitlementSource:e.property("entitlement_source",e.string().optional()),entitlementType:e.property("entitlement_type",Ar),feature:oe.optional(),hasValidAllocation:e.property("has_valid_allocation",e.boolean().optional()),isUnlimited:e.property("is_unlimited",e.boolean().optional()),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),monthlyUsageBasedPrice:e.property("monthly_usage_based_price",J.optional()),overuse:e.number().optional(),percentUsed:e.property("percent_used",e.number().optional()),period:e.string().optional(),plan:sr.optional(),planEntitlement:e.property("plan_entitlement",le.optional()),priceBehavior:e.property("price_behavior",ze.optional()),softLimit:e.property("soft_limit",e.number().optional()),usage:e.number().optional(),yearlyUsageBasedPrice:e.property("yearly_usage_based_price",J.optional())});var dp=e.object({data:e.list(up),params:pp});var hp=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var gp=e.object({data:V,params:hp});var wp=e.object({companyId:e.property("company_id",e.string().optional()),companyKeys:e.property("company_keys",e.record(e.string(),e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutNegativeEntitlements:e.property("without_negative_entitlements",e.boolean().optional())});var yp=e.object({data:e.list(nr),params:wp});var zp=e.object({companyId:e.property("company_id",e.string().optional()),companyKeys:e.property("company_keys",e.record(e.string(),e.string()).optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutNegativeEntitlements:e.property("without_negative_entitlements",e.boolean().optional())});var bp=e.object({data:V,params:zp});var Rp=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var fp=e.object({access:e.boolean(),allocation:e.number().optional(),allocationType:e.property("allocation_type",H),company:L.optional(),entitlementId:e.property("entitlement_id",e.string()),entitlementType:e.property("entitlement_type",Ar),feature:oe.optional(),metricResetAt:e.property("metric_reset_at",e.date().optional()),monthReset:e.property("month_reset",e.string().optional()),period:e.string().optional(),plan:sr.optional(),usage:e.number().optional(),user:Io.optional()});var _p=e.object({data:e.list(fp),params:Rp});var Sp=e.object({featureId:e.property("feature_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var xp=e.object({data:V,params:Sp});var Ep=e.object({featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),withMeteredProducts:e.property("with_metered_products",e.boolean().optional())});var Up=e.object({data:e.list(le),params:Ep});var Pp=e.enum_(["all_time","current_month","current_week","current_day"]);var Cp=e.enum_(["first_of_month","billing_cycle"]);var Tp=e.object({data:le,params:e.record(e.string(),e.unknown())});var vp=e.object({data:le,params:e.record(e.string(),e.unknown())});var Op=e.enum_(["all_time","current_month","current_week","current_day"]);var jp=e.enum_(["first_of_month","billing_cycle"]);var kp=e.object({data:le,params:e.record(e.string(),e.unknown())});var Vp=e.object({data:A,params:e.record(e.string(),e.unknown())});var Bp=e.object({featureId:e.property("feature_id",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string()).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planId:e.property("plan_id",e.string().optional()),planIds:e.property("plan_ids",e.list(e.string()).optional()),q:e.string().optional(),withMeteredProducts:e.property("with_metered_products",e.boolean().optional())});var Dp=e.object({data:V,params:Bp});var Mp=e.object({message:e.string()});var Ap=e.object({entitlementId:e.property("entitlement_id",e.string()),errors:e.list(Mp),featureId:e.property("feature_id",e.string()),featureName:e.property("feature_name",e.string())});var Fp=e.object({data:e.list(le),skipped:e.list(Ap)});var Ip=e.object({data:Fp,params:e.record(e.string(),e.unknown())});var Kp=e.object({keys:e.record(e.string(),e.string()).optional()});var qp=e.object({data:cr,params:Kp});var Si=e.object({companyId:e.property("company_id",e.string()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),expirationDate:e.property("expiration_date",e.date().optional()),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",ep.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",rp.optional()),note:e.string().optional(),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var xi=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),expirationDate:e.property("expiration_date",e.date().optional()),metricPeriod:e.property("metric_period",ip.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",ap.optional()),note:e.string().optional(),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var Ce=e.object({flatAmount:e.property("flat_amount",e.number().optional()),perUnitPrice:e.property("per_unit_price",e.number().optional()),perUnitPriceDecimal:e.property("per_unit_price_decimal",e.string().optional()),upTo:e.property("up_to",e.number().optional())});var Ei=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),currency:e.string().optional(),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",Pp.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Cp.optional()),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(Ce).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),planId:e.property("plan_id",e.string()),priceBehavior:e.property("price_behavior",ze.optional()),priceTiers:e.property("price_tiers",e.list(Ce).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",te.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(Ce).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var Ui=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),currency:e.string().optional(),metricPeriod:e.property("metric_period",Op.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",jp.optional()),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(Ce).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),priceBehavior:e.property("price_behavior",ze.optional()),priceTiers:e.property("price_tiers",e.list(Ce).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",te.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(Ce).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var Pi=e.object({sourcePlanId:e.property("source_plan_id",e.string()),targetPlanId:e.property("target_plan_id",e.string())});var Lp=e.object({data:L,params:e.record(e.string(),e.unknown())});var Gp=e.object({companyId:e.property("company_id",e.string().optional()),forFallbackPlan:e.property("for_fallback_plan",e.boolean().optional()),forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),hasProductId:e.property("has_product_id",e.boolean().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planType:e.property("plan_type",pe.optional()),q:e.string().optional(),withoutEntitlementFor:e.property("without_entitlement_for",e.string().optional()),withoutPaidProductId:e.property("without_paid_product_id",e.boolean().optional())});var Np=e.object({data:e.list(ce),params:Gp});var Xp=e.object({data:ce,params:e.record(e.string(),e.unknown())});var Hp=e.object({data:ce,params:e.record(e.string(),e.unknown())});var Wp=e.object({data:ce,params:e.record(e.string(),e.unknown())});var Jp=e.object({data:A,params:e.record(e.string(),e.unknown())});var $p=e.object({accountId:e.property("account_id",e.string()),billingProductId:e.property("billing_product_id",e.string()),chargeType:e.property("charge_type",Ae),controlledBy:e.property("controlled_by",rr),environmentId:e.property("environment_id",e.string()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPriceId:e.property("monthly_price_id",e.string().optional()),oneTimePriceId:e.property("one_time_price_id",e.string().optional()),planId:e.property("plan_id",e.string()),trialDays:e.property("trial_days",e.number().optional()),yearlyPriceId:e.property("yearly_price_id",e.string().optional())});var Zp=e.object({data:$p,params:e.record(e.string(),e.unknown())});var Yp=e.object({companyId:e.property("company_id",e.string().optional()),forFallbackPlan:e.property("for_fallback_plan",e.boolean().optional()),forInitialPlan:e.property("for_initial_plan",e.boolean().optional()),forTrialExpiryPlan:e.property("for_trial_expiry_plan",e.boolean().optional()),hasProductId:e.property("has_product_id",e.boolean().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),planType:e.property("plan_type",pe.optional()),q:e.string().optional(),withoutEntitlementFor:e.property("without_entitlement_for",e.string().optional()),withoutPaidProductId:e.property("without_paid_product_id",e.boolean().optional())});var Qp=e.object({data:V,params:Yp});var em=e.object({planId:e.property("plan_id",e.string().optional())});var rm=e.object({code:e.string(),description:e.string(),detail:e.string().optional(),id:e.string().optional()});var om=e.object({data:e.list(rm),params:em});var Ci=e.object({addOnIds:e.property("add_on_ids",e.list(e.string())),basePlanId:e.property("base_plan_id",e.string().optional())});var Ti=e.object({description:e.string(),icon:e.string().optional(),name:e.string(),planType:e.property("plan_type",pe)});var vi=e.object({description:e.string().optional(),icon:e.string().optional(),name:e.string()});var Oi=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),chargeType:e.property("charge_type",Ae),currency:e.string().optional(),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",e.number().optional()),monthlyPriceId:e.property("monthly_price_id",e.string().optional()),oneTimePrice:e.property("one_time_price",e.number().optional()),oneTimePriceId:e.property("one_time_price_id",e.string().optional()),trialDays:e.property("trial_days",e.number().optional()),yearlyPrice:e.property("yearly_price",e.number().optional()),yearlyPriceId:e.property("yearly_price_id",e.string().optional())});var tm=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Ko=e.enum_(["draft","live"]);var Kr=e.enum_(["billing","entitlement"]);var Te=e.object({ast:e.record(e.string(),e.number()).optional(),createdAt:e.property("created_at",e.date()),id:e.string(),name:e.string(),state:Ko,type:Kr,updatedAt:e.property("updated_at",e.date())});var im=e.object({data:e.list(Te),params:tm});var am=e.object({data:Te,params:e.record(e.string(),e.unknown())});var sm=e.object({data:Te,params:e.record(e.string(),e.unknown())});var nm=e.object({data:Te,params:e.record(e.string(),e.unknown())});var cm=e.object({data:A,params:e.record(e.string(),e.unknown())});var lm=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var pm=e.object({data:V,params:lm});var mm=e.object({companyId:e.property("company_id",e.string().optional()),componentId:e.property("component_id",e.string().optional())});var qr=e.object({ctaText:e.property("cta_text",e.string()),ctaWebSite:e.property("cta_web_site",e.string()),priceText:e.property("price_text",e.string())});var um=e.enum_(["downgrade_not_permitted","feature_usage_exceeded"]);var Lr=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Ye.optional()),chargeType:e.property("charge_type",Ae),companyCanTrial:e.property("company_can_trial",e.boolean()),companyCount:e.property("company_count",e.number()),compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),controlledBy:e.property("controlled_by",rr),createdAt:e.property("created_at",e.date()),current:e.boolean(),custom:e.boolean(),customPlanConfig:e.property("custom_plan_config",qr.optional()),description:e.string(),entitlements:e.list(le),features:e.list(oe),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(To)),invalidReason:e.property("invalid_reason",um.optional()),isCustom:e.property("is_custom",e.boolean()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",$.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",$.optional()),planType:e.property("plan_type",pe),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),usageViolations:e.property("usage_violations",e.list(nr)),valid:e.boolean(),yearlyPrice:e.property("yearly_price",$.optional())});var pr=e.object({compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),sourcePlanId:e.property("source_plan_id",e.string())});var qo=e.object({badgeVisibility:e.property("badge_visibility",e.boolean()),checkout:e.boolean()});var Lo=e.object({collectAddress:e.property("collect_address",e.boolean()),collectEmail:e.property("collect_email",e.boolean()),collectPhone:e.property("collect_phone",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean())});var io=e.object({billingScheme:e.property("billing_scheme",ke),createdAt:e.property("created_at",e.date()),currency:e.string(),id:e.string(),interval:Cr,isActive:e.property("is_active",e.boolean()),meterId:e.property("meter_id",e.string().optional()),packageSize:e.property("package_size",e.number()),price:e.number(),priceDecimal:e.property("price_decimal",e.string().optional()),priceExternalId:e.property("price_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),tiersMode:e.property("tiers_mode",te.optional()),updatedAt:e.property("updated_at",e.date()),usageType:e.property("usage_type",W)});var Go=e.object({billingInvoiceId:e.property("billing_invoice_id",e.string().optional()),bundleType:e.property("bundle_type",fe),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string().optional()),creditIcon:e.property("credit_icon",e.string().optional()),creditId:e.property("credit_id",e.string()),creditName:e.property("credit_name",e.string()),expiryType:e.property("expiry_type",N),expiryUnit:e.property("expiry_unit",K),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),hasGrants:e.property("has_grants",e.boolean()),id:e.string(),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),price:io.optional(),quantity:e.number().optional(),singularName:e.property("singular_name",e.string().optional()),status:ge,unitPrice:e.property("unit_price",io.optional()),updatedAt:e.property("updated_at",e.date())});var No=e.object({billingCreditBundleId:e.property("billing_credit_bundle_id",e.string().optional()),billingCreditId:e.property("billing_credit_id",e.string()),companyId:e.property("company_id",e.string()),companyName:e.property("company_name",e.string()),createdAt:e.property("created_at",e.date()),creditDescription:e.property("credit_description",e.string()),creditIcon:e.property("credit_icon",e.string().optional()),creditName:e.property("credit_name",e.string()),expiresAt:e.property("expires_at",e.date().optional()),expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),grantReason:e.property("grant_reason",xe),id:e.string(),planId:e.property("plan_id",e.string().optional()),planName:e.property("plan_name",e.string().optional()),pluralName:e.property("plural_name",e.string().optional()),price:io.optional(),quantity:e.number(),quantityRemaining:e.property("quantity_remaining",e.number()),quantityUsed:e.property("quantity_used",e.number()),singularName:e.property("singular_name",e.string().optional()),sourceLabel:e.property("source_label",e.string()),updatedAt:e.property("updated_at",e.date()),validFrom:e.property("valid_from",e.date().optional()),zeroedOutDate:e.property("zeroed_out_date",e.date().optional()),zeroedOutReason:e.property("zeroed_out_reason",jr.optional())});var Xo=e.object({showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean())});var Ho=e.object({accountId:e.property("account_id",e.string().optional()),publishableKey:e.property("publishable_key",e.string().optional()),schematicPublishableKey:e.property("schematic_publishable_key",e.string()),setupIntentClientSecret:e.property("setup_intent_client_secret",e.string().optional())});var dm=e.object({activeAddOns:e.property("active_add_ons",e.list(Lr)),activePlans:e.property("active_plans",e.list(Lr)),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(br)),addOnCompatibilities:e.property("add_on_compatibilities",e.list(pr)),capabilities:qo.optional(),checkoutSettings:e.property("checkout_settings",Lo),company:L.optional(),component:Te.optional(),creditBundles:e.property("credit_bundles",e.list(Go)),creditGrants:e.property("credit_grants",e.list(No)),defaultPlan:e.property("default_plan",ce.optional()),displaySettings:e.property("display_settings",Xo),featureUsage:e.property("feature_usage",cr.optional()),invoices:e.list(Re),postTrialPlan:e.property("post_trial_plan",ce.optional()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),stripeEmbed:e.property("stripe_embed",Ho.optional()),subscription:lr.optional(),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional()),upcomingInvoice:e.property("upcoming_invoice",Re.optional())});var hm=e.object({data:dm,params:mm});var ji=e.object({ast:e.record(e.string(),e.number()).optional(),entityType:e.property("entity_type",Kr),name:e.string()});var ki=e.object({ast:e.record(e.string(),e.number()).optional(),entityType:e.property("entity_type",Kr.optional()),name:e.string().optional(),state:Ko.optional()});var Wo=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),dealId:e.property("deal_id",e.string().optional()),environmentId:e.property("environment_id",e.string()),productExternalId:e.property("product_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var gm=e.object({data:Wo,params:e.record(e.string(),e.unknown())});var wm=e.object({data:Wo,params:e.record(e.string(),e.unknown())});var ym=e.object({accountId:e.property("account_id",e.string()),arr:e.string(),companyExternalId:e.property("company_external_id",e.string().optional()),createdAt:e.property("created_at",e.date()),dealExternalId:e.property("deal_external_id",e.string()),dealId:e.property("deal_id",e.string()),environmentId:e.property("environment_id",e.string()),mrr:e.string(),name:e.string().optional(),productExternalId:e.property("product_external_id",e.string().optional()),updatedAt:e.property("updated_at",e.date())});var zm=e.object({data:ym,params:e.record(e.string(),e.unknown())});var bm=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),name:e.string().optional(),offset:e.number().optional()});var Jo=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),currency:e.string(),environmentId:e.property("environment_id",e.string()),externalId:e.property("external_id",e.string()),name:e.string(),price:e.string(),productId:e.property("product_id",e.string()),quantity:e.number(),updatedAt:e.property("updated_at",e.date())});var Rm=e.object({data:e.list(Jo),params:bm});var fm=e.object({data:Jo,params:e.record(e.string(),e.unknown())});var Vi=e.object({dealExternalId:e.property("deal_external_id",e.string()),lineItemExternalId:e.property("line_item_external_id",e.string())});var Bi=e.object({amount:e.string(),discountPercentage:e.property("discount_percentage",e.string().optional()),interval:e.string(),lineItemExternalId:e.property("line_item_external_id",e.string()),productExternalId:e.property("product_external_id",e.string()),quantity:e.number(),termMonth:e.property("term_month",e.number().optional()),totalDiscount:e.property("total_discount",e.string().optional())});var Di=e.object({arr:e.string().optional(),crmCompanyId:e.property("crm_company_id",e.string().optional()),crmCompanyKey:e.property("crm_company_key",e.string()),crmProductId:e.property("crm_product_id",e.string().optional()),crmType:e.property("crm_type",e.string()),dealExternalId:e.property("deal_external_id",e.string()),dealName:e.property("deal_name",e.string().optional()),dealStage:e.property("deal_stage",e.string().optional()),mrr:e.string().optional()});var Mi=e.object({currency:e.string(),description:e.string(),externalId:e.property("external_id",e.string()),interval:e.string(),name:e.string(),price:e.string(),quantity:e.number(),sku:e.string()});var _m=e.stringLiteral("company-feature-usage");var Sm=e.stringLiteral("csv");var xm=e.enum_(["failure","pending","success"]);var Em=e.object({accountId:e.property("account_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),exportType:e.property("export_type",_m),id:e.string(),metadata:e.string(),outputFileType:e.property("output_file_type",Sm),status:xm,updatedAt:e.property("updated_at",e.date())});var Um=e.object({data:Em,params:e.record(e.string(),e.unknown())});var Ai=e.object({metadata:e.string()});var $o=e.object({capturedAt:e.property("captured_at",e.date()),eventId:e.property("event_id",e.string().optional()),remoteAddr:e.property("remote_addr",e.string()),remoteIp:e.property("remote_ip",e.string()),userAgent:e.property("user_agent",e.string())});var Pm=e.object({events:e.list($o)});var Cm=e.object({data:Pm,params:e.record(e.string(),e.unknown())});var Tm=e.object({eventSubtypes:e.property("event_subtypes",e.list(e.string()).optional()),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var vm=e.object({data:e.list(Uo),params:Tm});var je=e.enum_(["flag_check","identify","track"]);var Om=e.object({companyId:e.property("company_id",e.string().optional()),eventSubtype:e.property("event_subtype",e.string().optional()),eventTypes:e.property("event_types",e.list(je).optional()),flagId:e.property("flag_id",e.string().optional()),limit:e.number().optional(),offset:e.number().optional(),userId:e.property("user_id",e.string().optional())});var Zo=e.enum_(["enriched","failed","pending","processed","unknown"]);var Yo=e.object({apiKey:e.property("api_key",e.string().optional()),body:e.record(e.string(),e.unknown()),bodyPreview:e.property("body_preview",e.string()),capturedAt:e.property("captured_at",e.date()),company:Vr.optional(),companyId:e.property("company_id",e.string().optional()),enrichedAt:e.property("enriched_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),errorMessage:e.property("error_message",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string())),features:e.list(Vr),id:e.string(),loadedAt:e.property("loaded_at",e.date().optional()),processedAt:e.property("processed_at",e.date().optional()),quantity:e.number(),sentAt:e.property("sent_at",e.date().optional()),status:Zo,subtype:e.string().optional(),type:je,updatedAt:e.property("updated_at",e.date()),user:Vr.optional(),userId:e.property("user_id",e.string().optional())});var jm=e.object({data:e.list(Yo),params:Om});var km=e.object({data:$o,params:e.record(e.string(),e.unknown())});var Vm=e.object({data:Yo,params:e.record(e.string(),e.unknown())});var Bm=e.object({connected:e.boolean(),environmentId:e.property("environment_id",e.string()),lastEventAt:e.property("last_event_at",e.date().optional())});var Dm=e.object({data:Bm,params:e.record(e.string(),e.unknown())});var Mm=e.object({company:e.record(e.string(),e.string()).optional(),event:e.string(),quantity:e.number().optional(),traits:e.record(e.string(),e.unknown()).optional(),user:e.record(e.string(),e.string()).optional()});var Am=e.object({companyId:e.property("company_id",e.string().optional()),error:e.string().optional(),flagId:e.property("flag_id",e.string().optional()),flagKey:e.property("flag_key",e.string()),reason:e.string(),reqCompany:e.property("req_company",e.record(e.string(),e.string()).optional()),reqUser:e.property("req_user",e.record(e.string(),e.string()).optional()),ruleId:e.property("rule_id",e.string().optional()),userId:e.property("user_id",e.string().optional()),value:e.boolean()});var Fm=e.object({keys:e.record(e.string(),e.string()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional()});var Im=e.object({company:Fm.optional(),keys:e.record(e.string(),e.string()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional()});var Km=e.undiscriminatedUnion([Mm,Am,Im]);var Qo=e.object({body:Km.optional(),eventType:e.property("event_type",je),sentAt:e.property("sent_at",e.date().optional())});var Fi=e.object({events:e.list(Qo)});var qm=e.object({booleanRequireEvent:e.property("boolean_require_event",e.boolean().optional()),featureType:e.property("feature_type",e.list(ie).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutCompanyOverrideFor:e.property("without_company_override_for",e.string().optional()),withoutPlanEntitlementFor:e.property("without_plan_entitlement_for",e.string().optional())});var Lm=e.object({data:e.list(oe),params:qm});var Gm=e.object({data:oe,params:e.record(e.string(),e.unknown())});var Nm=e.object({data:oe,params:e.record(e.string(),e.unknown())});var Xm=e.object({data:oe,params:e.record(e.string(),e.unknown())});var Hm=e.object({data:A,params:e.record(e.string(),e.unknown())});var Wm=e.object({booleanRequireEvent:e.property("boolean_require_event",e.boolean().optional()),featureType:e.property("feature_type",e.list(ie).optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),withoutCompanyOverrideFor:e.property("without_company_override_for",e.string().optional()),withoutPlanEntitlementFor:e.property("without_plan_entitlement_for",e.string().optional())});var Jm=e.object({data:V,params:Wm});var $m=e.object({featureId:e.property("feature_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Zm=e.object({data:e.list(Fe),params:$m});var Ym=e.object({data:Fe,params:e.record(e.string(),e.unknown())});var Qm=e.object({data:Fe,params:e.record(e.string(),e.unknown())});var eu=e.object({data:Fe,params:e.record(e.string(),e.unknown())});var ru=e.object({data:A,params:e.record(e.string(),e.unknown())});var ou=e.object({createdAt:e.property("created_at",e.date()),defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",tr),id:e.string(),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),updatedAt:e.property("updated_at",e.date())});var tu=e.object({flag:ou.optional(),rules:e.list(Co)});var iu=e.object({data:tu,params:e.record(e.string(),e.unknown())});var et=e.object({companyId:e.property("company_id",e.string().optional()),error:e.string().optional(),featureAllocation:e.property("feature_allocation",e.number().optional()),featureUsage:e.property("feature_usage",e.number().optional()),featureUsageEvent:e.property("feature_usage_event",e.string().optional()),featureUsagePeriod:e.property("feature_usage_period",e.string().optional()),featureUsageResetAt:e.property("feature_usage_reset_at",e.date().optional()),flag:e.string(),flagId:e.property("flag_id",e.string().optional()),reason:e.string(),ruleId:e.property("rule_id",e.string().optional()),ruleType:e.property("rule_type",e.string().optional()),userId:e.property("user_id",e.string().optional()),value:e.boolean()});var au=e.object({data:et,params:e.record(e.string(),e.unknown())});var rt=e.object({flags:e.list(et)});var su=e.object({data:rt,params:e.record(e.string(),e.unknown())});var nu=e.object({data:e.list(rt)});var cu=e.object({data:nu,params:e.record(e.string(),e.unknown())});var lu=e.object({featureId:e.property("feature_id",e.string().optional()),ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var pu=e.object({data:V,params:lu});var ot=e.object({defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",tr),id:e.string().optional(),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string()});var Ii=e.object({description:e.string(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",ie),flag:ot.optional(),icon:e.string().optional(),lifecyclePhase:e.property("lifecycle_phase",or.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional())});var Ki=e.object({description:e.string().optional(),eventSubtype:e.property("event_subtype",e.string().optional()),featureType:e.property("feature_type",ie.optional()),flag:ot.optional(),icon:e.string().optional(),lifecyclePhase:e.property("lifecycle_phase",or.optional()),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string().optional(),pluralName:e.property("plural_name",e.string().optional()),singularName:e.property("singular_name",e.string().optional()),traitId:e.property("trait_id",e.string().optional())});var mu=e.enum_(["company","metric","trait","user","plan","billing_product","crm_product","base_plan"]);var uu=e.enum_(["all_time","current_month","current_week","current_day"]);var du=e.enum_(["first_of_month","billing_cycle"]);var hu=e.enum_(["eq","ne","gt","gte","lt","lte","is_empty","not_empty"]);var Gr=e.object({comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionType:e.property("condition_type",mu),creditCost:e.property("credit_cost",e.number().optional()),creditId:e.property("credit_id",e.string().optional()),eventSubtype:e.property("event_subtype",e.string().optional()),id:e.string().optional(),metricPeriod:e.property("metric_period",uu.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",du.optional()),metricValue:e.property("metric_value",e.number().optional()),operator:hu,resourceIds:e.property("resource_ids",e.list(e.string())),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string().optional())});var tt=e.object({conditions:e.list(Gr),flagId:e.property("flag_id",e.string().optional()),id:e.string().optional()});var gu=e.enum_(["global_override","company_override","plan_entitlement","standard","default"]);var wu=e.object({conditionGroups:e.property("condition_groups",e.list(tt)),conditions:e.list(Gr),id:e.string().optional(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",gu.optional()),value:e.boolean()});var qi=e.object({rules:e.list(wu)});var ao=e.object({company:e.record(e.string(),e.string()).optional(),user:e.record(e.string(),e.string()).optional()});var Li=e.object({contexts:e.list(ao)});var it=e.object({ctaText:e.property("cta_text",e.string()),ctaWebSite:e.property("cta_web_site",e.string()),priceText:e.property("price_text",e.string())});var Rr=e.object({audienceType:e.property("audience_type",e.string().optional()),billingProduct:e.property("billing_product",Ye.optional()),chargeType:e.property("charge_type",Ae),companyCount:e.property("company_count",e.number()),compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),controlledBy:e.property("controlled_by",rr),createdAt:e.property("created_at",e.date()),customPlanConfig:e.property("custom_plan_config",it.optional()),description:e.string(),entitlements:e.list(le),features:e.list(oe),icon:e.string(),id:e.string(),includedCreditGrants:e.property("included_credit_grants",e.list(Me).optional()),isCustom:e.property("is_custom",e.boolean()),isDefault:e.property("is_default",e.boolean()),isFree:e.property("is_free",e.boolean()),isTrialable:e.property("is_trialable",e.boolean()),monthlyPrice:e.property("monthly_price",$.optional()),name:e.string(),oneTimePrice:e.property("one_time_price",$.optional()),planType:e.property("plan_type",pe),trialDays:e.property("trial_days",e.number().optional()),updatedAt:e.property("updated_at",e.date()),yearlyPrice:e.property("yearly_price",$.optional())});var at=e.object({collectAddress:e.property("collect_address",e.boolean()),collectEmail:e.property("collect_email",e.boolean()),collectPhone:e.property("collect_phone",e.boolean())});var st=e.object({showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean())});var yu=e.object({planEntitlementId:e.property("plan_entitlement_id",e.string()),visible:e.boolean().optional()});var Gi=e.object({entitlements:e.list(yu).optional(),planId:e.property("plan_id",e.string())});var Nr=e.object({bundleId:e.string()});var zu=e.object({addOns:e.property("add_ons",e.list(Rr)),checkoutSettings:e.property("checkout_settings",at),componentSettings:e.property("component_settings",st),customPlanConfig:e.property("custom_plan_config",it.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),defaultPlan:e.property("default_plan",Rr.optional()),defaultPlanId:e.property("default_plan_id",e.string().optional()),fallbackPlan:e.property("fallback_plan",Rr.optional()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),id:e.string(),initialPlan:e.property("initial_plan",Rr.optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPrice:e.property("initial_plan_price",J.optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOnList:e.property("ordered_add_on_list",e.list(Gi)),orderedBundleList:e.property("ordered_bundle_list",e.list(Nr)),orderedPlanList:e.property("ordered_plan_list",e.list(Gi)),plans:e.list(Rr),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),prorationBehavior:e.property("proration_behavior",e.string()),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetails:e.property("sync_customer_billing_details",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlan:e.property("trial_expiry_plan",Rr.optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPrice:e.property("trial_expiry_plan_price",J.optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var bu=e.object({data:zu,params:e.record(e.string(),e.unknown())});var Ru=e.object({compatiblePlanIds:e.property("compatible_plan_ids",e.list(e.string())),sourcePlanId:e.property("source_plan_id",e.string())});var fu=e.object({entitlementId:e.property("entitlement_id",e.string()),visible:e.boolean().optional()});var We=e.object({entitlements:e.list(fu).optional(),planId:e.property("plan_id",e.string())});var nt=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(Ru)),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutSettings:e.property("checkout_settings",at),componentSettings:e.property("component_settings",st),defaultPlanId:e.property("default_plan_id",e.string().optional()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),id:e.string(),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOnIds:e.property("ordered_add_on_ids",e.list(We)),planIds:e.property("plan_ids",e.list(We)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),prorationBehavior:e.property("proration_behavior",e.string()),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetails:e.property("sync_customer_billing_details",e.boolean()),taxCollectionEnabled:e.property("tax_collection_enabled",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var _u=e.object({data:nt,params:e.record(e.string(),e.unknown())});var Su=e.object({data:nt,params:e.record(e.string(),e.unknown())});var ct=e.enum_(["create_prorations","invoice_immediately"]);var Ni=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(pr).optional()),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutCollectAddress:e.property("checkout_collect_address",e.boolean()),checkoutCollectEmail:e.property("checkout_collect_email",e.boolean()),checkoutCollectPhone:e.property("checkout_collect_phone",e.boolean()),customPlanConfig:e.property("custom_plan_config",qr.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),enableTaxCollection:e.property("enable_tax_collection",e.boolean()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOns:e.property("ordered_add_ons",e.list(We)),orderedBundleList:e.property("ordered_bundle_list",e.list(Nr)),orderedPlans:e.property("ordered_plans",e.list(We)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),prorationBehavior:e.property("proration_behavior",ct),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetails:e.property("sync_customer_billing_details",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var Xi=e.object({addOnCompatibilities:e.property("add_on_compatibilities",e.list(pr).optional()),addOnIds:e.property("add_on_ids",e.list(e.string())),checkoutCollectAddress:e.property("checkout_collect_address",e.boolean()),checkoutCollectEmail:e.property("checkout_collect_email",e.boolean()),checkoutCollectPhone:e.property("checkout_collect_phone",e.boolean()),customPlanConfig:e.property("custom_plan_config",qr.optional()),customPlanId:e.property("custom_plan_id",e.string().optional()),enableTaxCollection:e.property("enable_tax_collection",e.boolean()),fallbackPlanId:e.property("fallback_plan_id",e.string().optional()),initialPlanId:e.property("initial_plan_id",e.string().optional()),initialPlanPriceId:e.property("initial_plan_price_id",e.string().optional()),orderedAddOns:e.property("ordered_add_ons",e.list(We)),orderedBundleList:e.property("ordered_bundle_list",e.list(Nr)),orderedPlans:e.property("ordered_plans",e.list(We)),preventDowngradesWhenOverLimit:e.property("prevent_downgrades_when_over_limit",e.boolean()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),prorationBehavior:e.property("proration_behavior",ct),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),syncCustomerBillingDetails:e.property("sync_customer_billing_details",e.boolean()),trialDays:e.property("trial_days",e.number().optional()),trialExpiryPlanId:e.property("trial_expiry_plan_id",e.string().optional()),trialExpiryPlanPriceId:e.property("trial_expiry_plan_price_id",e.string().optional()),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional())});var lt=e.stringLiteral("company");var xu=e.object({apiKeyId:e.property("api_key_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expiredAt:e.property("expired_at",e.date()),id:e.string(),resourceType:e.property("resource_type",lt),token:e.string(),updatedAt:e.property("updated_at",e.date())});var Eu=e.object({data:xu,params:e.record(e.string(),e.unknown())});var Hi=e.object({lookup:e.record(e.string(),e.string()),resource_type:e.string()});var Uu=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),webhookId:e.property("webhook_id",e.string().optional())});var Ke=e.enum_(["subscription.trial.ended","company.created","company.deleted","company.override.created","company.override.deleted","company.override.expired","company.override.updated","company.plan_changed","company.updated","credit.limit.reached","credit.limit.warning","entitlement.limit.reached","entitlement.limit.warning","entitlement.soft_limit.reached","entitlement.soft_limit.warning","entitlement.tier_limit.reached","entitlement.tier_limit.warning","feature.created","feature.deleted","feature.updated","flag.created","flag.deleted","flag_rules.updated","flag.updated","plan.created","plan.deleted","plan.entitlement.created","plan.entitlement.deleted","plan.entitlement.updated","plan.updated","rule.deleted","test.send","user.created","user.deleted","user.updated"]);var pt=e.enum_(["failure","pending","success"]);var Xr=e.object({creditId:e.property("credit_id",e.string())});var Hr=e.object({featureId:e.property("feature_id",e.string())});var mt=e.enum_(["active","inactive"]);var qe=e.object({createdAt:e.property("created_at",e.date()),creditTriggerConfigs:e.property("credit_trigger_configs",e.list(Xr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(Hr).optional()),id:e.string(),name:e.string(),requestTypes:e.property("request_types",e.list(Ke)),secret:e.string(),status:mt,updatedAt:e.property("updated_at",e.date()),url:e.string()});var ut=e.object({createdAt:e.property("created_at",e.date()),id:e.string(),payload:e.string().optional(),requestType:e.property("request_type",Ke),responseCode:e.property("response_code",e.number().optional()),sentAt:e.property("sent_at",e.date().optional()),status:pt,updatedAt:e.property("updated_at",e.date()),webhook:qe.optional(),webhookId:e.property("webhook_id",e.string())});var Pu=e.object({data:e.list(ut),params:Uu});var Cu=e.object({data:ut,params:e.record(e.string(),e.unknown())});var Tu=e.object({ids:e.list(e.string()).optional(),limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional(),webhookId:e.property("webhook_id",e.string().optional())});var vu=e.object({data:V,params:Tu});var Ou=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var ju=e.object({data:e.list(qe),params:Ou});var ku=e.object({data:qe,params:e.record(e.string(),e.unknown())});var Vu=e.object({data:qe,params:e.record(e.string(),e.unknown())});var Bu=e.object({data:qe,params:e.record(e.string(),e.unknown())});var Du=e.object({data:A,params:e.record(e.string(),e.unknown())});var Mu=e.object({limit:e.number().optional(),offset:e.number().optional(),q:e.string().optional()});var Au=e.object({data:V,params:Mu});var Wi=e.object({creditTriggerConfigs:e.property("credit_trigger_configs",e.list(Xr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(Hr).optional()),name:e.string(),requestTypes:e.property("request_types",e.list(Ke)),url:e.string()});var Ji=e.object({creditTriggerConfigs:e.property("credit_trigger_configs",e.list(Xr).optional()),entitlementTriggerConfigs:e.property("entitlement_trigger_configs",e.list(Hr).optional()),name:e.string().optional(),requestTypes:e.property("request_types",e.list(Ke).optional()),status:mt.optional(),url:e.string().optional()});var a=e.object({error:e.string()});var dt=e.object({addOnId:e.property("add_on_id",e.string()),priceId:e.property("price_id",e.string())});var Wr=e.object({bundleId:e.property("bundle_id",e.string()),quantity:e.number()});var Jr=e.object({priceId:e.property("price_id",e.string()),quantity:e.number()});var $i=e.object({addOnIds:e.property("add_on_ids",e.list(dt)),companyId:e.property("company_id",e.string()),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(Wr)),newPlanId:e.property("new_plan_id",e.string()),newPriceId:e.property("new_price_id",e.string()),payInAdvance:e.property("pay_in_advance",e.list(Jr)),paymentMethodId:e.property("payment_method_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional()),skipTrial:e.property("skip_trial",e.boolean())});var wee=e.object({addOnIds:e.property("add_on_ids",e.list(dt)),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(Wr)),newPlanId:e.property("new_plan_id",e.string()),newPriceId:e.property("new_price_id",e.string()),payInAdvance:e.property("pay_in_advance",e.list(Jr)),paymentMethodId:e.property("payment_method_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional()),skipTrial:e.property("skip_trial",e.boolean())});var zee=e.object({companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),id:e.string(),updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string())});var Bee=e.object({activeAddOns:e.property("active_add_ons",e.list(Lr)),activePlans:e.property("active_plans",e.list(Lr)),activeUsageBasedEntitlements:e.property("active_usage_based_entitlements",e.list(br)),addOnCompatibilities:e.property("add_on_compatibilities",e.list(pr)),capabilities:qo.optional(),checkoutSettings:e.property("checkout_settings",Lo),company:L.optional(),component:Te.optional(),creditBundles:e.property("credit_bundles",e.list(Go)),creditGrants:e.property("credit_grants",e.list(No)),defaultPlan:e.property("default_plan",ce.optional()),displaySettings:e.property("display_settings",Xo),featureUsage:e.property("feature_usage",cr.optional()),postTrialPlan:e.property("post_trial_plan",ce.optional()),preventSelfServiceDowngrade:e.property("prevent_self_service_downgrade",e.boolean()),preventSelfServiceDowngradeButtonText:e.property("prevent_self_service_downgrade_button_text",e.string().optional()),preventSelfServiceDowngradeUrl:e.property("prevent_self_service_downgrade_url",e.string().optional()),showAsMonthlyPrices:e.property("show_as_monthly_prices",e.boolean()),showCredits:e.property("show_credits",e.boolean()),showPeriodToggle:e.property("show_period_toggle",e.boolean()),showZeroPriceAsFree:e.property("show_zero_price_as_free",e.boolean()),stripeEmbed:e.property("stripe_embed",Ho.optional()),subscription:lr.optional(),trialPaymentMethodRequired:e.property("trial_payment_method_required",e.boolean().optional()),upcomingInvoice:e.property("upcoming_invoice",Re.optional())});var Mee=e.object({amountOff:e.property("amount_off",e.number()),currency:e.string().optional(),duration:e.string(),durationInMonths:e.property("duration_in_months",e.number()),maxRedemptions:e.property("max_redemptions",e.number()),name:e.string(),percentOff:e.property("percent_off",e.number()),timesRedeemed:e.property("times_redeemed",e.number())});var Fu=e.enum_(["all_time","current_month","current_week","current_day"]);var Iu=e.enum_(["first_of_month","billing_cycle"]);var Gee=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),featureId:e.property("feature_id",e.string()),metricPeriod:e.property("metric_period",Fu.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Iu.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var Zi=e.object({defaultValue:e.property("default_value",e.boolean()),description:e.string(),featureId:e.property("feature_id",e.string().optional()),flagType:e.property("flag_type",tr),key:e.string(),maintainerId:e.property("maintainer_id",e.string().optional()),name:e.string()});var Qee=e.object({expiryType:e.property("expiry_type",N.optional()),expiryUnit:e.property("expiry_unit",K.optional()),expiryUnitCount:e.property("expiry_unit_count",e.number().optional()),resetCadence:e.property("reset_cadence",Be),resetStart:e.property("reset_start",Ee),resetType:e.property("reset_type",De.optional())});var ore=e.object({createdAt:e.property("created_at",e.date()),definitionId:e.property("definition_id",e.string()),entityId:e.property("entity_id",e.string()),entityType:e.property("entity_type",q),environmentId:e.property("environment_id",e.string()),id:e.string(),key:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var ire=e.object({createdAt:e.property("created_at",e.date()),definitionId:e.property("definition_id",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),updatedAt:e.property("updated_at",e.date()),value:e.string()});var cre=e.object({apiKey:e.property("api_key",e.string().optional()),body:e.record(e.string(),e.unknown()),bodyPreview:e.property("body_preview",e.string()),capturedAt:e.property("captured_at",e.date()),companyId:e.property("company_id",e.string().optional()),enrichedAt:e.property("enriched_at",e.date().optional()),environmentId:e.property("environment_id",e.string().optional()),errorMessage:e.property("error_message",e.string().optional()),featureIds:e.property("feature_ids",e.list(e.string())),id:e.string(),loadedAt:e.property("loaded_at",e.date().optional()),processedAt:e.property("processed_at",e.date().optional()),quantity:e.number(),sentAt:e.property("sent_at",e.date().optional()),status:Zo,subtype:e.string().optional(),type:je,updatedAt:e.property("updated_at",e.date()),userId:e.property("user_id",e.string().optional())});var pre=e.object({amountDue:e.property("amount_due",e.number()),amountPaid:e.property("amount_paid",e.number()),amountRemaining:e.property("amount_remaining",e.number()),collectionMethod:e.property("collection_method",e.string()),currency:e.string(),customerExternalId:e.property("customer_external_id",e.string()),dueDate:e.property("due_date",e.date().optional()),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),subscriptionExternalId:e.property("subscription_external_id",e.string().optional()),subtotal:e.number(),url:e.string().optional()});var Yi=e.object({keys:e.record(e.string(),e.string())});var Ku=e.object({planId:e.property("plan_id",e.string()),priceId:e.property("price_id",e.string().optional())});var Qi=e.object({addOnSelections:e.property("add_on_selections",e.list(Ku)),basePlanId:e.property("base_plan_id",e.string().optional()),basePlanPriceId:e.property("base_plan_price_id",e.string().optional()),cancelImmediately:e.property("cancel_immediately",e.boolean().optional()),companyId:e.property("company_id",e.string()),couponExternalId:e.property("coupon_external_id",e.string().optional()),creditBundles:e.property("credit_bundles",e.list(Wr)),payInAdvanceEntitlements:e.property("pay_in_advance_entitlements",e.list(Jr)),paymentMethodExternalId:e.property("payment_method_external_id",e.string().optional()),promoCode:e.property("promo_code",e.string().optional()),prorate:e.boolean().optional(),trialEnd:e.property("trial_end",e.date().optional())});var zre=e.object({displayName:e.property("display_name",e.string()),eventName:e.property("event_name",e.string()),eventPayloadKey:e.property("event_payload_key",e.string())});var Rre=e.object({accountLast4:e.property("account_last4",e.string().optional()),accountName:e.property("account_name",e.string().optional()),bankName:e.property("bank_name",e.string().optional()),billingEmail:e.property("billing_email",e.string().optional()),billingName:e.property("billing_name",e.string().optional()),cardBrand:e.property("card_brand",e.string().optional()),cardExpMonth:e.property("card_exp_month",e.number().optional()),cardExpYear:e.property("card_exp_year",e.number().optional()),cardLast4:e.property("card_last4",e.string().optional()),customerExternalId:e.property("customer_external_id",e.string()),paymentMethodType:e.property("payment_method_type",e.string())});var _re=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),ruleId:e.property("rule_id",e.string()),updatedAt:e.property("updated_at",e.date())});var Ere=e.object({comparisonTraitId:e.property("comparison_trait_id",e.string().optional()),conditionGroupId:e.property("condition_group_id",e.string().optional()),conditionType:e.property("condition_type",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",e.string().optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",e.string().optional()),metricValue:e.property("metric_value",e.number().optional()),operator:e.string(),resourceIds:e.property("resource_ids",e.list(e.string())),ruleId:e.property("rule_id",e.string()),traitEntityType:e.property("trait_entity_type",q.optional()),traitId:e.property("trait_id",e.string().optional()),traitValue:e.property("trait_value",e.string()),updatedAt:e.property("updated_at",e.date())});var Pre=e.object({createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",e.string()),updatedAt:e.property("updated_at",e.date()),value:e.boolean()});var Tre=e.enum_(["549e6fea","placeholder-for-fern-compatibility"]);var qu=e.enum_(["all_time","current_day","current_month","current_week"]);var Lu=e.enum_(["default","global_override","company_override","company_override_usage_exceeded","plan_entitlement","plan_entitlement_usage_exceeded","standard"]);var Bre=e.object({companyId:e.property("company_id",e.string().optional()),err:e.string().optional(),featureAllocation:e.property("feature_allocation",e.number().optional()),featureUsage:e.property("feature_usage",e.number().optional()),featureUsageEvent:e.property("feature_usage_event",e.string().optional()),featureUsagePeriod:e.property("feature_usage_period",qu.optional()),featureUsageResetAt:e.property("feature_usage_reset_at",e.date().optional()),flagId:e.property("flag_id",e.string().optional()),flagKey:e.property("flag_key",e.string()),reason:e.string(),ruleId:e.property("rule_id",e.string().optional()),ruleType:e.property("rule_type",Lu.optional()),userId:e.property("user_id",e.string().optional()),value:e.boolean()});var Gu=e.enum_(["first_of_month","billing_cycle"]);var Nu=e.enum_(["all_time","current_day","current_month","current_week"]);var Xu=e.object({accountId:e.property("account_id",e.string()),companyId:e.property("company_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string()),monthReset:e.property("month_reset",Gu),period:Nu,validUntil:e.property("valid_until",e.date().optional()),value:e.number()});var Hu=e.enum_(["bool","date","int","string"]);var Wu=e.enum_(["company","user"]);var so=e.object({comparableType:e.property("comparable_type",Hu),entityType:e.property("entity_type",Wu),id:e.string()});var Ju=e.enum_(["base_plan","billing_product","company","credit","crm_product","metric","plan","trait","user"]);var $u=e.enum_(["all_time","current_day","current_month","current_week"]);var Zu=e.enum_(["first_of_month","billing_cycle"]);var Yu=e.enum_(["eq","ne","gt","lt","gte","lte","is_empty","not_empty"]);var ht=e.object({accountId:e.property("account_id",e.string()),comparisonTraitDefinition:e.property("comparison_trait_definition",so.optional()),conditionType:e.property("condition_type",Ju),consumptionRate:e.property("consumption_rate",e.number().optional()),creditId:e.property("credit_id",e.string().optional()),environmentId:e.property("environment_id",e.string()),eventSubtype:e.property("event_subtype",e.string().optional()),id:e.string(),metricPeriod:e.property("metric_period",$u.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",Zu.optional()),metricValue:e.property("metric_value",e.number().optional()),operator:Yu,resourceIds:e.property("resource_ids",e.list(e.string())),traitDefinition:e.property("trait_definition",so.optional()),traitValue:e.property("trait_value",e.string())});var Qu=e.object({conditions:e.list(ht)});var ed=e.enum_(["default","global_override","company_override","company_override_usage_exceeded","plan_entitlement","plan_entitlement_usage_exceeded","standard"]);var $r=e.object({accountId:e.property("account_id",e.string()),conditionGroups:e.property("condition_groups",e.list(Qu)),conditions:e.list(ht),environmentId:e.property("environment_id",e.string()),flagId:e.property("flag_id",e.string().optional()),id:e.string(),name:e.string(),priority:e.number(),ruleType:e.property("rule_type",ed),value:e.boolean()});var rd=e.object({id:e.string(),periodEnd:e.property("period_end",e.date()),periodStart:e.property("period_start",e.date())});var gt=e.object({traitDefinition:e.property("trait_definition",so.optional()),value:e.string()});var yoe=e.object({accountId:e.property("account_id",e.string()),basePlanId:e.property("base_plan_id",e.string().optional()),billingProductIds:e.property("billing_product_ids",e.list(e.string())),creditBalances:e.property("credit_balances",e.record(e.string(),e.number())),crmProductIds:e.property("crm_product_ids",e.list(e.string())),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.record(e.string(),e.string()),metrics:e.list(Xu),planIds:e.property("plan_ids",e.list(e.string())),rules:e.list($r),subscription:rd.optional(),traits:e.list(gt)});var Roe=e.object({accountId:e.property("account_id",e.string()),defaultValue:e.property("default_value",e.boolean()),environmentId:e.property("environment_id",e.string()),id:e.string(),key:e.string(),rules:e.list($r)});var xoe=e.object({accountId:e.property("account_id",e.string()),environmentId:e.property("environment_id",e.string()),id:e.string(),keys:e.record(e.string(),e.string()),rules:e.list($r),traits:e.list(gt)});var Poe=e.object({apiKeyId:e.property("api_key_id",e.string()),createdAt:e.property("created_at",e.date()),environmentId:e.property("environment_id",e.string()),expiredAt:e.property("expired_at",e.date()),id:e.string(),resourceType:e.property("resource_type",lt),updatedAt:e.property("updated_at",e.date())});var od=e.enum_(["all_time","current_month","current_week","current_day"]);var td=e.enum_(["first_of_month","billing_cycle"]);var Voe=e.object({creditConsumptionRate:e.property("credit_consumption_rate",e.number().optional()),metricPeriod:e.property("metric_period",od.optional()),metricPeriodMonthReset:e.property("metric_period_month_reset",td.optional()),valueBool:e.property("value_bool",e.boolean().optional()),valueCreditId:e.property("value_credit_id",e.string().optional()),valueNumeric:e.property("value_numeric",e.number().optional()),valueTraitId:e.property("value_trait_id",e.string().optional()),valueType:e.property("value_type",H)});var Aoe=e.object({conditionGroups:e.property("condition_groups",e.list(tt)),conditions:e.list(Gr),name:e.string(),priority:e.number(),value:e.boolean()});var ea=e.object({id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var ra=e.object({incr:e.number().optional(),keys:e.record(e.string(),e.string()),set:e.string().optional(),trait:e.string(),updateOnly:e.property("update_only",e.boolean().optional())});var oa=e.object({companies:e.list(e.record(e.string(),e.string())).optional(),company:e.record(e.string(),e.string()).optional(),companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var Loe=e.object({companyId:e.property("company_id",e.string().optional()),companyIds:e.property("company_ids",e.list(e.string()).optional()),id:e.string().optional(),keys:e.record(e.string(),e.string()),lastSeenAt:e.property("last_seen_at",e.date().optional()),name:e.string().optional(),traits:e.record(e.string(),e.unknown()).optional(),updateOnly:e.property("update_only",e.boolean().optional())});var Woe=e.object({billingProductId:e.property("billing_product_id",e.string().optional()),billingThreshold:e.property("billing_threshold",e.number().optional()),currency:e.string().optional(),monthlyMeteredPriceId:e.property("monthly_metered_price_id",e.string().optional()),monthlyPriceTiers:e.property("monthly_price_tiers",e.list(Ce).optional()),monthlyUnitPrice:e.property("monthly_unit_price",e.number().optional()),monthlyUnitPriceDecimal:e.property("monthly_unit_price_decimal",e.string().optional()),overageBillingProductId:e.property("overage_billing_product_id",e.string().optional()),priceBehavior:e.property("price_behavior",ze.optional()),priceTiers:e.property("price_tiers",e.list(Ce).optional()),softLimit:e.property("soft_limit",e.number().optional()),tierMode:e.property("tier_mode",te.optional()),yearlyMeteredPriceId:e.property("yearly_metered_price_id",e.string().optional()),yearlyPriceTiers:e.property("yearly_price_tiers",e.list(Ce).optional()),yearlyUnitPrice:e.property("yearly_unit_price",e.number().optional()),yearlyUnitPriceDecimal:e.property("yearly_unit_price_decimal",e.string().optional())});var Yoe=e.object({createdAt:e.property("created_at",e.date()),id:e.string(),payload:e.string().optional(),requestType:e.property("request_type",Ke),responseCode:e.property("response_code",e.number().optional()),sentAt:e.property("sent_at",e.date().optional()),status:pt,updatedAt:e.property("updated_at",e.date()),webhookId:e.property("webhook_id",e.string())});var wt=class{constructor(t={}){this._options=t}listApiKeys(t,o){return R.fromPromise(this.__listApiKeys(t,o))}async __listApiKeys(t,o){let{environmentId:r,requireEnvironment:i,limit:m,offset:g}=t,l={};r!=null&&(l.environment_id=r),l.require_environment=i.toString(),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:ws.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-keys.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}createApiKey(t,o){return R.fromPromise(this.__createApiKey(t,o))}async __createApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Xt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:zs.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /api-keys.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getApiKey(t,o){return R.fromPromise(this.__getApiKey(t,o))}async __getApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:bs.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-keys/{api_key_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateApiKey(t,o={},r){return R.fromPromise(this.__updateApiKey(t,o,r))}async __updateApiKey(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ht.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Rs.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /api-keys/{api_key_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteApiKey(t,o){return R.fromPromise(this.__deleteApiKey(t,o))}async __deleteApiKey(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-keys/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:fs.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /api-keys/{api_key_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countApiKeys(t,o){return R.fromPromise(this.__countApiKeys(t,o))}async __countApiKeys(t,o){let{environmentId:r,requireEnvironment:i,limit:m,offset:g}=t,l={};r!=null&&(l.environment_id=r),l.require_environment=i.toString(),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-keys/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Ss.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-keys/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listApiRequests(t={},o){return R.fromPromise(this.__listApiRequests(t,o))}async __listApiRequests(t={},o){let{q:r,requestType:i,environmentId:m,limit:g,offset:l}=t,s={};r!=null&&(s.q=r),i!=null&&(s.request_type=i),m!=null&&(s.environment_id=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-requests"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Es.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-requests.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}getApiRequest(t,o){return R.fromPromise(this.__getApiRequest(t,o))}async __getApiRequest(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`api-requests/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ps.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-requests/{api_request_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countApiRequests(t={},o){return R.fromPromise(this.__countApiRequests(t,o))}async __countApiRequests(t={},o){let{q:r,requestType:i,environmentId:m,limit:g,offset:l}=t,s={};r!=null&&(s.q=r),i!=null&&(s.request_type=i),m!=null&&(s.environment_id=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"api-requests/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Ts.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /api-requests/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}listEnvironments(t={},o){return R.fromPromise(this.__listEnvironments(t,o))}async __listEnvironments(t={},o){let{ids:r,limit:i,offset:m}=t,g={};r!=null&&(Array.isArray(r)?g.ids=r.map(s=>s):g.ids=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"environments"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:Os.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /environments.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}createEnvironment(t,o){return R.fromPromise(this.__createEnvironment(t,o))}async __createEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"environments"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Wt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ks.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /environments.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEnvironment(t,o){return R.fromPromise(this.__getEnvironment(t,o))}async __getEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vs.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /environments/{environment_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateEnvironment(t,o={},r){return R.fromPromise(this.__updateEnvironment(t,o,r))}async __updateEnvironment(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Jt.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Bs.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /environments/{environment_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteEnvironment(t,o){return R.fromPromise(this.__deleteEnvironment(t,o))}async __deleteEnvironment(t,o){let r=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`environments/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ds.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /environments/{environment_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}quickstart(t){return R.fromPromise(this.__quickstart(t))}async __quickstart(t){let o=await(this._options.fetcher??_)({url:(0,he.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"quickstart"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:As.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 400:throw new P(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /quickstart.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Q=re(require("url-join"));var yt=class{constructor(t={}){this._options=t}listCoupons(t={},o){return R.fromPromise(this.__listCoupons(t,o))}async __listCoupons(t={},o){let{isActive:r,q:i,limit:m,offset:g}=t,l={};r!=null&&(l.is_active=r.toString()),i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/coupons"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Is.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/coupons.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertBillingCoupon(t,o){return R.fromPromise(this.__upsertBillingCoupon(t,o))}async __upsertBillingCoupon(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/coupons"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:$t.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ks.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/coupons.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingCustomer(t,o){return R.fromPromise(this.__upsertBillingCustomer(t,o))}async __upsertBillingCustomer(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customer/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Zt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ls.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/customer/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCustomersWithSubscriptions(t={},o){return R.fromPromise(this.__listCustomersWithSubscriptions(t,o))}async __listCustomersWithSubscriptions(t={},o){let{companyIds:r,name:i,failedToImport:m,q:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.company_ids=r.map(y=>y):p.company_ids=r),i!=null&&(p.name=i),m!=null&&(p.failed_to_import=m.toString()),g!=null&&(p.q=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customers"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Hs.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/customers.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}countCustomers(t={},o){return R.fromPromise(this.__countCustomers(t,o))}async __countCustomers(t={},o){let{companyIds:r,name:i,failedToImport:m,q:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.company_ids=r.map(y=>y):p.company_ids=r),i!=null&&(p.name=i),m!=null&&(p.failed_to_import=m.toString()),g!=null&&(p.q=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/customers/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Js.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/customers/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}listInvoices(t,o){return R.fromPromise(this.__listInvoices(t,o))}async __listInvoices(t,o){let{companyId:r,customerExternalId:i,subscriptionExternalId:m,limit:g,offset:l}=t,s={};r!=null&&(s.company_id=r),s.customer_external_id=i,s.subscription_external_id=m,g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/invoices"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Zs.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/invoices.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}upsertInvoice(t,o){return R.fromPromise(this.__upsertInvoice(t,o))}async __upsertInvoice(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/invoices"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Yt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ys.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/invoices.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listMeters(t={},o){return R.fromPromise(this.__listMeters(t,o))}async __listMeters(t={},o){let{displayName:r,limit:i,offset:m}=t,g={};r!=null&&(g.display_name=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/meter"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:en.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/meter.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}upsertBillingMeter(t,o){return R.fromPromise(this.__upsertBillingMeter(t,o))}async __upsertBillingMeter(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/meter/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Qt.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:rn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/meter/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listPaymentMethods(t,o){return R.fromPromise(this.__listPaymentMethods(t,o))}async __listPaymentMethods(t,o){let{companyId:r,customerExternalId:i,limit:m,offset:g}=t,l={};r!=null&&(l.company_id=r),l.customer_external_id=i,m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/payment-methods"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:tn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/payment-methods.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertPaymentMethod(t,o){return R.fromPromise(this.__upsertPaymentMethod(t,o))}async __upsertPaymentMethod(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/payment-methods"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ei.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:an.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/payment-methods.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listBillingPrices(t={},o){return R.fromPromise(this.__listBillingPrices(t,o))}async __listBillingPrices(t={},o){let{forInitialPlan:r,forTrialExpiryPlan:i,ids:m,interval:g,isActive:l,price:s,productId:p,productIds:u,q:y,tiersMode:z,usageType:C,withMeter:O,limit:v,offset:j}=t,B={};r!=null&&(B.for_initial_plan=r.toString()),i!=null&&(B.for_trial_expiry_plan=i.toString()),m!=null&&(Array.isArray(m)?B.ids=m.map(k=>k):B.ids=m),g!=null&&(B.interval=g),l!=null&&(B.is_active=l.toString()),s!=null&&(B.price=s.toString()),p!=null&&(B.product_id=p),u!=null&&(Array.isArray(u)?B.product_ids=u.map(k=>k):B.product_ids=u),y!=null&&(B.q=y),z!=null&&(B.tiers_mode=te.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})),C!=null&&(B.usage_type=W.jsonOrThrow(C,{unrecognizedObjectKeys:"strip"})),O!=null&&(B.with_meter=O.toString()),v!=null&&(B.limit=v.toString()),j!=null&&(B.offset=j.toString());let T=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/price"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:B,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(T.ok)return{data:nn.parseOrThrow(T.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:T.rawResponse};if(T.error.reason==="status-code")switch(T.error.statusCode){case 400:throw new P(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 401:throw new S(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 403:throw new x(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 404:throw new E(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 500:throw new U(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);default:throw new c({statusCode:T.error.statusCode,body:T.error.body,rawResponse:T.rawResponse})}switch(T.error.reason){case"non-json":throw new c({statusCode:T.error.statusCode,body:T.error.rawBody,rawResponse:T.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/price.");case"unknown":throw new c({message:T.error.errorMessage,rawResponse:T.rawResponse})}}upsertBillingPrice(t,o){return R.fromPromise(this.__upsertBillingPrice(t,o))}async __upsertBillingPrice(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/price/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ri.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:cn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/price/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteBillingProduct(t,o){return R.fromPromise(this.__deleteBillingProduct(t,o))}async __deleteBillingProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/product/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ln.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /billing/product/{billing_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listBillingProductPrices(t={},o){return R.fromPromise(this.__listBillingProductPrices(t,o))}async __listBillingProductPrices(t={},o){let{forInitialPlan:r,forTrialExpiryPlan:i,ids:m,interval:g,isActive:l,price:s,productId:p,productIds:u,q:y,tiersMode:z,usageType:C,withMeter:O,limit:v,offset:j}=t,B={};r!=null&&(B.for_initial_plan=r.toString()),i!=null&&(B.for_trial_expiry_plan=i.toString()),m!=null&&(Array.isArray(m)?B.ids=m.map(k=>k):B.ids=m),g!=null&&(B.interval=g),l!=null&&(B.is_active=l.toString()),s!=null&&(B.price=s.toString()),p!=null&&(B.product_id=p),u!=null&&(Array.isArray(u)?B.product_ids=u.map(k=>k):B.product_ids=u),y!=null&&(B.q=y),z!=null&&(B.tiers_mode=te.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})),C!=null&&(B.usage_type=W.jsonOrThrow(C,{unrecognizedObjectKeys:"strip"})),O!=null&&(B.with_meter=O.toString()),v!=null&&(B.limit=v.toString()),j!=null&&(B.offset=j.toString());let T=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/product/prices"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:B,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(T.ok)return{data:mn.parseOrThrow(T.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:T.rawResponse};if(T.error.reason==="status-code")switch(T.error.statusCode){case 400:throw new P(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 401:throw new S(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 403:throw new x(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 404:throw new E(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);case 500:throw new U(a.parseOrThrow(T.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),T.rawResponse);default:throw new c({statusCode:T.error.statusCode,body:T.error.body,rawResponse:T.rawResponse})}switch(T.error.reason){case"non-json":throw new c({statusCode:T.error.statusCode,body:T.error.rawBody,rawResponse:T.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/product/prices.");case"unknown":throw new c({message:T.error.errorMessage,rawResponse:T.rawResponse})}}deleteProductPrice(t,o){return R.fromPromise(this.__deleteProductPrice(t,o))}async __deleteProductPrice(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/product/prices/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:un.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /billing/product/prices/{billing_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingProduct(t,o){return R.fromPromise(this.__upsertBillingProduct(t,o))}async __upsertBillingProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/product/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:oi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:dn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/product/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listBillingProducts(t={},o){return R.fromPromise(this.__listBillingProducts(t,o))}async __listBillingProducts(t={},o){let{ids:r,name:i,q:m,priceUsageType:g,withoutLinkedToPlan:l,withOneTimeCharges:s,withZeroPrice:p,withPricesOnly:u,isActive:y,limit:z,offset:C}=t,O={};r!=null&&(Array.isArray(r)?O.ids=r.map(j=>j):O.ids=r),i!=null&&(O.name=i),m!=null&&(O.q=m),g!=null&&(O.price_usage_type=W.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(O.without_linked_to_plan=l.toString()),s!=null&&(O.with_one_time_charges=s.toString()),p!=null&&(O.with_zero_price=p.toString()),u!=null&&(O.with_prices_only=u.toString()),y!=null&&(O.is_active=y.toString()),z!=null&&(O.limit=z.toString()),C!=null&&(O.offset=C.toString());let v=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/products"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:O,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(v.ok)return{data:gn.parseOrThrow(v.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:v.rawResponse};if(v.error.reason==="status-code")switch(v.error.statusCode){case 400:throw new P(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 401:throw new S(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 403:throw new x(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 404:throw new E(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 500:throw new U(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);default:throw new c({statusCode:v.error.statusCode,body:v.error.body,rawResponse:v.rawResponse})}switch(v.error.reason){case"non-json":throw new c({statusCode:v.error.statusCode,body:v.error.rawBody,rawResponse:v.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/products.");case"unknown":throw new c({message:v.error.errorMessage,rawResponse:v.rawResponse})}}countBillingProducts(t={},o){return R.fromPromise(this.__countBillingProducts(t,o))}async __countBillingProducts(t={},o){let{ids:r,name:i,q:m,priceUsageType:g,withoutLinkedToPlan:l,withOneTimeCharges:s,withZeroPrice:p,withPricesOnly:u,isActive:y,limit:z,offset:C}=t,O={};r!=null&&(Array.isArray(r)?O.ids=r.map(j=>j):O.ids=r),i!=null&&(O.name=i),m!=null&&(O.q=m),g!=null&&(O.price_usage_type=W.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(O.without_linked_to_plan=l.toString()),s!=null&&(O.with_one_time_charges=s.toString()),p!=null&&(O.with_zero_price=p.toString()),u!=null&&(O.with_prices_only=u.toString()),y!=null&&(O.is_active=y.toString()),z!=null&&(O.limit=z.toString()),C!=null&&(O.offset=C.toString());let v=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/products/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:O,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(v.ok)return{data:yn.parseOrThrow(v.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:v.rawResponse};if(v.error.reason==="status-code")switch(v.error.statusCode){case 400:throw new P(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 401:throw new S(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 403:throw new x(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 404:throw new E(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);case 500:throw new U(a.parseOrThrow(v.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),v.rawResponse);default:throw new c({statusCode:v.error.statusCode,body:v.error.body,rawResponse:v.rawResponse})}switch(v.error.reason){case"non-json":throw new c({statusCode:v.error.statusCode,body:v.error.rawBody,rawResponse:v.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/products/count.");case"unknown":throw new c({message:v.error.errorMessage,rawResponse:v.rawResponse})}}upsertBillingSubscription(t,o){return R.fromPromise(this.__upsertBillingSubscription(t,o))}async __upsertBillingSubscription(t,o){let r=await(this._options.fetcher??_)({url:(0,Q.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/subscription/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ti.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:bn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/subscription/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var X=re(require("url-join"));var zt=class{constructor(t={}){this._options=t}listBillingCredits(t={},o){return R.fromPromise(this.__listBillingCredits(t,o))}async __listBillingCredits(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(p=>p):l.ids=r),i!=null&&(l.name=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:xn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}createBillingCredit(t,o){return R.fromPromise(this.__createBillingCredit(t,o))}async __createBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ii.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:En.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/credits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getSingleBillingCredit(t,o){return R.fromPromise(this.__getSingleBillingCredit(t,o))}async __getSingleBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Un.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/{credit_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateBillingCredit(t,o,r){return R.fromPromise(this.__updateBillingCredit(t,o,r))}async __updateBillingCredit(t,o,r){let i=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ai.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Pn.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /billing/credits/{credit_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}softDeleteBillingCredit(t,o){return R.fromPromise(this.__softDeleteBillingCredit(t,o))}async __softDeleteBillingCredit(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Cn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /billing/credits/{credit_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCreditBundles(t={},o){return R.fromPromise(this.__listCreditBundles(t,o))}async __listCreditBundles(t={},o){let{ids:r,creditId:i,status:m,bundleType:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(y=>y):p.ids=r),i!=null&&(p.credit_id=i),m!=null&&(p.status=ge.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(p.bundle_type=fe.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:vn.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/bundles.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createCreditBundle(t,o){return R.fromPromise(this.__createCreditBundle(t,o))}async __createCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:si.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:On.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/credits/bundles.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCreditBundle(t,o){return R.fromPromise(this.__getCreditBundle(t,o))}async __getCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:jn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCreditBundleDetails(t,o,r){return R.fromPromise(this.__updateCreditBundleDetails(t,o,r))}async __updateCreditBundleDetails(t,o,r){let i=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ni.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:kn.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteCreditBundle(t,o){return R.fromPromise(this.__deleteCreditBundle(t,o))}async __deleteCreditBundle(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/bundles/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vn.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /billing/credits/bundles/{bundle_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countCreditBundles(t={},o){return R.fromPromise(this.__countCreditBundles(t,o))}async __countCreditBundles(t={},o){let{ids:r,creditId:i,status:m,bundleType:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(y=>y):p.ids=r),i!=null&&(p.credit_id=i),m!=null&&(p.status=ge.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(p.bundle_type=fe.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/bundles/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Dn.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/bundles/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}countBillingCredits(t={},o){return R.fromPromise(this.__countBillingCredits(t,o))}async __countBillingCredits(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(p=>p):l.ids=r),i!=null&&(l.name=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:An.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}zeroOutGrant(t,o={},r){return R.fromPromise(this.__zeroOutGrant(t,o,r))}async __zeroOutGrant(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/grants/${encodeURIComponent(t)}/zero-out`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ci.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Fn.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /billing/credits/grants/{grant_id}/zero-out.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}grantBillingCreditsToCompany(t,o){return R.fromPromise(this.__grantBillingCreditsToCompany(t,o))}async __grantBillingCreditsToCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/company"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:li.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:In.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/credits/grants/company.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCompanyGrants(t={},o){return R.fromPromise(this.__listCompanyGrants(t,o))}async __listCompanyGrants(t={},o){let{companyId:r,order:i,dir:m,limit:g,offset:l}=t,s={};r!=null&&(s.company_id=r),i!=null&&(s.order=xo.jsonOrThrow(i,{unrecognizedObjectKeys:"strip"})),m!=null&&(s.dir=Oe.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/company/list"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:qn.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/grants/company/list.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}countBillingCreditsGrants(t={},o){return R.fromPromise(this.__countBillingCreditsGrants(t,o))}async __countBillingCreditsGrants(t={},o){let{creditId:r,ids:i,limit:m,offset:g}=t,l={};r!=null&&(l.credit_id=r),i!=null&&(Array.isArray(i)?l.ids=i.map(p=>p):l.ids=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Gn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/grants/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listGrantsForCredit(t={},o){return R.fromPromise(this.__listGrantsForCredit(t,o))}async __listGrantsForCredit(t={},o){let{creditId:r,ids:i,limit:m,offset:g}=t,l={};r!=null&&(l.credit_id=r),i!=null&&(Array.isArray(i)?l.ids=i.map(p=>p):l.ids=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/grants/list"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Xn.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/grants/list.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}getEnrichedCreditLedger(t,o){return R.fromPromise(this.__getEnrichedCreditLedger(t,o))}async __getEnrichedCreditLedger(t,o){let{companyId:r,billingCreditId:i,featureId:m,period:g,startTime:l,endTime:s,limit:p,offset:u}=t,y={};y.company_id=r,i!=null&&(y.billing_credit_id=i),m!=null&&(y.feature_id=m),y.period=zr.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"}),l!=null&&(y.start_time=l),s!=null&&(y.end_time=s),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/ledger"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Yn.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/ledger.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}countCreditLedger(t,o){return R.fromPromise(this.__countCreditLedger(t,o))}async __countCreditLedger(t,o){let{companyId:r,billingCreditId:i,featureId:m,period:g,startTime:l,endTime:s,limit:p,offset:u}=t,y={};y.company_id=r,i!=null&&(y.billing_credit_id=i),m!=null&&(y.feature_id=m),y.period=zr.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"}),l!=null&&(y.start_time=l),s!=null&&(y.end_time=s),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/ledger/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:ec.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/ledger/count.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}listBillingPlanCreditGrants(t={},o){return R.fromPromise(this.__listBillingPlanCreditGrants(t,o))}async __listBillingPlanCreditGrants(t={},o){let{creditId:r,planId:i,planIds:m,ids:g,limit:l,offset:s}=t,p={};r!=null&&(p.credit_id=r),i!=null&&(p.plan_id=i),m!=null&&(Array.isArray(m)?p.plan_ids=m.map(y=>y):p.plan_ids=m),g!=null&&(Array.isArray(g)?p.ids=g.map(y=>y):p.ids=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:oc.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/plan-grants.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createBillingPlanCreditGrant(t,o){return R.fromPromise(this.__createBillingPlanCreditGrant(t,o))}async __createBillingPlanCreditGrant(t,o){let r=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:pi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:tc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /billing/credits/plan-grants.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateBillingPlanCreditGrant(t,o,r){return R.fromPromise(this.__updateBillingPlanCreditGrant(t,o,r))}async __updateBillingPlanCreditGrant(t,o,r){let i=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/plan-grants/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:mi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:ic.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /billing/credits/plan-grants/{plan_grant_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteBillingPlanCreditGrant(t,o={},r){return R.fromPromise(this.__deleteBillingPlanCreditGrant(t,o,r))}async __deleteBillingPlanCreditGrant(t,o={},r){let{applyToExisting:i}=o,m={};i!=null&&(m.apply_to_existing=i.toString());let g=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`billing/credits/plan-grants/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",queryParameters:m,requestType:"json",timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(g.ok)return{data:sc.parseOrThrow(g.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:g.rawResponse};if(g.error.reason==="status-code")switch(g.error.statusCode){case 400:throw new P(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 401:throw new S(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 403:throw new x(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 404:throw new E(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 500:throw new U(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);default:throw new c({statusCode:g.error.statusCode,body:g.error.body,rawResponse:g.rawResponse})}switch(g.error.reason){case"non-json":throw new c({statusCode:g.error.statusCode,body:g.error.rawBody,rawResponse:g.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /billing/credits/plan-grants/{plan_grant_id}.");case"unknown":throw new c({message:g.error.errorMessage,rawResponse:g.rawResponse})}}countBillingPlanCreditGrants(t={},o){return R.fromPromise(this.__countBillingPlanCreditGrants(t,o))}async __countBillingPlanCreditGrants(t={},o){let{creditId:r,planId:i,planIds:m,ids:g,limit:l,offset:s}=t,p={};r!=null&&(p.credit_id=r),i!=null&&(p.plan_id=i),m!=null&&(Array.isArray(m)?p.plan_ids=m.map(y=>y):p.plan_ids=m),g!=null&&(Array.isArray(g)?p.ids=g.map(y=>y):p.ids=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,X.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"billing/credits/plan-grants/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:cc.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /billing/credits/plan-grants/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var mr=re(require("url-join"));var bt=class{constructor(t={}){this._options=t}internal(t,o){return R.fromPromise(this.__internal(t,o))}async __internal(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:$i.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:pc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /checkout-internal.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCheckoutData(t,o){return R.fromPromise(this.__getCheckoutData(t,o))}async __getCheckoutData(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal/data"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:di.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Sc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /checkout-internal/data.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}previewCheckoutInternal(t,o){return R.fromPromise(this.__previewCheckoutInternal(t,o))}async __previewCheckoutInternal(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"checkout-internal/preview"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:$i.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Uc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /checkout-internal/preview.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}managePlan(t,o){return R.fromPromise(this.__managePlan(t,o))}async __managePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"manage-plan"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Qi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Pc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /manage-plan.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}previewManagePlan(t,o){return R.fromPromise(this.__previewManagePlan(t,o))}async __previewManagePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"manage-plan/preview"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Qi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Tc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /manage-plan/preview.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}cancelSubscription(t,o){return R.fromPromise(this.__cancelSubscription(t,o))}async __cancelSubscription(t,o){let r=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"manage-plan/subscription/cancel"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:hi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:vc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /manage-plan/subscription/cancel.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCustomerSubscriptionTrialEnd(t,o={},r){return R.fromPromise(this.__updateCustomerSubscriptionTrialEnd(t,o,r))}async __updateCustomerSubscriptionTrialEnd(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,mr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`subscription/${encodeURIComponent(t)}/edit-trial-end`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:gi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Oc.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /subscription/{subscription_id}/edit-trial-end.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var M=re(require("url-join"));var Rt=class{constructor(t={}){this._options=t}listCompanies(t={},o){return R.fromPromise(this.__listCompanies(t,o))}async __listCompanies(t={},o){let{ids:r,planId:i,q:m,withoutFeatureOverrideFor:g,withoutPlan:l,withSubscription:s,limit:p,offset:u}=t,y={};r!=null&&(Array.isArray(r)?y.ids=r.map(C=>C):y.ids=r),i!=null&&(y.plan_id=i),m!=null&&(y.q=m),g!=null&&(y.without_feature_override_for=g),l!=null&&(y.without_plan=l.toString()),s!=null&&(y.with_subscription=s.toString()),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:kc.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}upsertCompany(t,o){return R.fromPromise(this.__upsertCompany(t,o))}async __upsertCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ea.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /companies.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCompany(t,o){return R.fromPromise(this.__getCompany(t,o))}async __getCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`companies/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Bc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies/{company_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompany(t,o={},r){return R.fromPromise(this.__deleteCompany(t,o,r))}async __deleteCompany(t,o={},r){let{cancelSubscription:i,prorate:m}=o,g={};i!=null&&(g.cancel_subscription=i.toString()),m!=null&&(g.prorate=m.toString());let l=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`companies/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(l.ok)return{data:Mc.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /companies/{company_id}.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}countCompanies(t={},o){return R.fromPromise(this.__countCompanies(t,o))}async __countCompanies(t={},o){let{ids:r,planId:i,q:m,withoutFeatureOverrideFor:g,withoutPlan:l,withSubscription:s,limit:p,offset:u}=t,y={};r!=null&&(Array.isArray(r)?y.ids=r.map(C=>C):y.ids=r),i!=null&&(y.plan_id=i),m!=null&&(y.q=m),g!=null&&(y.without_feature_override_for=g),l!=null&&(y.without_plan=l.toString()),s!=null&&(y.with_subscription=s.toString()),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Fc.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies/count.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}countCompaniesForAdvancedFilter(t={},o){return R.fromPromise(this.__countCompaniesForAdvancedFilter(t,o))}async __countCompaniesForAdvancedFilter(t={},o){let{ids:r,planIds:i,featureIds:m,creditTypeIds:g,subscriptionStatuses:l,subscriptionTypes:s,monetizedSubscriptions:p,q:u,withoutPlan:y,withoutSubscription:z,sortOrderColumn:C,sortOrderDirection:O,displayProperties:v,limit:j,offset:B}=t,T={};r!=null&&(Array.isArray(r)?T.ids=r.map(G=>G):T.ids=r),i!=null&&(Array.isArray(i)?T.plan_ids=i.map(G=>G):T.plan_ids=i),m!=null&&(Array.isArray(m)?T.feature_ids=m.map(G=>G):T.feature_ids=m),g!=null&&(Array.isArray(g)?T.credit_type_ids=g.map(G=>G):T.credit_type_ids=g),l!=null&&(Array.isArray(l)?T.subscription_statuses=l.map(G=>Xe.jsonOrThrow(G,{unrecognizedObjectKeys:"strip"})):T.subscription_statuses=Xe.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(Array.isArray(s)?T.subscription_types=s.map(G=>He.jsonOrThrow(G,{unrecognizedObjectKeys:"strip"})):T.subscription_types=He.jsonOrThrow(s,{unrecognizedObjectKeys:"strip"})),p!=null&&(T.monetized_subscriptions=p.toString()),u!=null&&(T.q=u),y!=null&&(T.without_plan=y.toString()),z!=null&&(T.without_subscription=z.toString()),C!=null&&(T.sort_order_column=C),O!=null&&(T.sort_order_direction=Oe.jsonOrThrow(O,{unrecognizedObjectKeys:"strip"})),v!=null&&(Array.isArray(v)?T.display_properties=v.map(G=>G):T.display_properties=v),j!=null&&(T.limit=j.toString()),B!=null&&(T.offset=B.toString());let k=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/count2"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:T,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(k.ok)return{data:Kc.parseOrThrow(k.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:k.rawResponse};if(k.error.reason==="status-code")switch(k.error.statusCode){case 400:throw new P(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 401:throw new S(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 403:throw new x(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 404:throw new E(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 500:throw new U(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);default:throw new c({statusCode:k.error.statusCode,body:k.error.body,rawResponse:k.rawResponse})}switch(k.error.reason){case"non-json":throw new c({statusCode:k.error.statusCode,body:k.error.rawBody,rawResponse:k.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies/count2.");case"unknown":throw new c({message:k.error.errorMessage,rawResponse:k.rawResponse})}}createCompany(t,o){return R.fromPromise(this.__createCompany(t,o))}async __createCompany(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/create"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ea.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:qc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /companies/create.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompanyByKeys(t,o){return R.fromPromise(this.__deleteCompanyByKeys(t,o))}async __deleteCompanyByKeys(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/delete"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Yi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Lc.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /companies/delete.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCompaniesForAdvancedFilter(t={},o){return R.fromPromise(this.__listCompaniesForAdvancedFilter(t,o))}async __listCompaniesForAdvancedFilter(t={},o){let{ids:r,planIds:i,featureIds:m,creditTypeIds:g,subscriptionStatuses:l,subscriptionTypes:s,monetizedSubscriptions:p,q:u,withoutPlan:y,withoutSubscription:z,sortOrderColumn:C,sortOrderDirection:O,displayProperties:v,limit:j,offset:B}=t,T={};r!=null&&(Array.isArray(r)?T.ids=r.map(G=>G):T.ids=r),i!=null&&(Array.isArray(i)?T.plan_ids=i.map(G=>G):T.plan_ids=i),m!=null&&(Array.isArray(m)?T.feature_ids=m.map(G=>G):T.feature_ids=m),g!=null&&(Array.isArray(g)?T.credit_type_ids=g.map(G=>G):T.credit_type_ids=g),l!=null&&(Array.isArray(l)?T.subscription_statuses=l.map(G=>Xe.jsonOrThrow(G,{unrecognizedObjectKeys:"strip"})):T.subscription_statuses=Xe.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(Array.isArray(s)?T.subscription_types=s.map(G=>He.jsonOrThrow(G,{unrecognizedObjectKeys:"strip"})):T.subscription_types=He.jsonOrThrow(s,{unrecognizedObjectKeys:"strip"})),p!=null&&(T.monetized_subscriptions=p.toString()),u!=null&&(T.q=u),y!=null&&(T.without_plan=y.toString()),z!=null&&(T.without_subscription=z.toString()),C!=null&&(T.sort_order_column=C),O!=null&&(T.sort_order_direction=Oe.jsonOrThrow(O,{unrecognizedObjectKeys:"strip"})),v!=null&&(Array.isArray(v)?T.display_properties=v.map(G=>G):T.display_properties=v),j!=null&&(T.limit=j.toString()),B!=null&&(T.offset=B.toString());let k=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/list2"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:T,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(k.ok)return{data:Wc.parseOrThrow(k.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:k.rawResponse};if(k.error.reason==="status-code")switch(k.error.statusCode){case 400:throw new P(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 401:throw new S(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 403:throw new x(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 404:throw new E(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);case 500:throw new U(a.parseOrThrow(k.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),k.rawResponse);default:throw new c({statusCode:k.error.statusCode,body:k.error.body,rawResponse:k.rawResponse})}switch(k.error.reason){case"non-json":throw new c({statusCode:k.error.statusCode,body:k.error.rawBody,rawResponse:k.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies/list2.");case"unknown":throw new c({message:k.error.errorMessage,rawResponse:k.rawResponse})}}lookupCompany(t,o){return R.fromPromise(this.__lookupCompany(t,o))}async __lookupCompany(t,o){let{keys:r}=t,i={};i.keys=be(r);let m=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"companies/lookup"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:$c.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /companies/lookup.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}getActiveDeals(t,o){return R.fromPromise(this.__getActiveDeals(t,o))}async __getActiveDeals(t,o){let{companyId:r,dealStage:i,limit:m,offset:g}=t,l={};l.company_id=r,l.deal_stage=i,m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-crm-deals"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:el.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-crm-deals.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listCompanyMemberships(t={},o){return R.fromPromise(this.__listCompanyMemberships(t,o))}async __listCompanyMemberships(t={},o){let{companyId:r,userId:i,limit:m,offset:g}=t,l={};r!=null&&(l.company_id=r),i!=null&&(l.user_id=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-memberships"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:ol.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-memberships.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}getOrCreateCompanyMembership(t,o){return R.fromPromise(this.__getOrCreateCompanyMembership(t,o))}async __getOrCreateCompanyMembership(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-memberships"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:yi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:tl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /company-memberships.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteCompanyMembership(t,o){return R.fromPromise(this.__deleteCompanyMembership(t,o))}async __deleteCompanyMembership(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-memberships/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:il.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /company-memberships/{company_membership_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getActiveCompanySubscription(t={},o){return R.fromPromise(this.__getActiveCompanySubscription(t,o))}async __getActiveCompanySubscription(t={},o){let{companyId:r,companyIds:i,limit:m,offset:g}=t,l={};r!=null&&(l.company_id=r),i!=null&&(Array.isArray(i)?l.company_ids=i.map(p=>p):l.company_ids=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-subscriptions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:sl.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-subscriptions.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertCompanyTrait(t,o){return R.fromPromise(this.__upsertCompanyTrait(t,o))}async __upsertCompanyTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ra.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:nl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /company-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listEntityKeyDefinitions(t={},o){return R.fromPromise(this.__listEntityKeyDefinitions(t,o))}async __listEntityKeyDefinitions(t={},o){let{entityType:r,ids:i,q:m,limit:g,offset:l}=t,s={};r!=null&&(s.entity_type=q.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-key-definitions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:ll.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-key-definitions.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}countEntityKeyDefinitions(t={},o){return R.fromPromise(this.__countEntityKeyDefinitions(t,o))}async __countEntityKeyDefinitions(t={},o){let{entityType:r,ids:i,q:m,limit:g,offset:l}=t,s={};r!=null&&(s.entity_type=q.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-key-definitions/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:ml.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-key-definitions/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}listEntityTraitDefinitions(t={},o){return R.fromPromise(this.__listEntityTraitDefinitions(t,o))}async __listEntityTraitDefinitions(t={},o){let{entityType:r,ids:i,q:m,traitType:g,traitTypes:l,limit:s,offset:p}=t,u={};r!=null&&(u.entity_type=q.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?u.ids=i.map(z=>z):u.ids=i),m!=null&&(u.q=m),g!=null&&(u.trait_type=Y.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(Array.isArray(l)?u.trait_types=l.map(z=>Y.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})):u.trait_types=Y.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:dl.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-trait-definitions.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}getOrCreateEntityTraitDefinition(t,o){return R.fromPromise(this.__getOrCreateEntityTraitDefinition(t,o))}async __getOrCreateEntityTraitDefinition(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:zi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:hl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /entity-trait-definitions.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEntityTraitDefinition(t,o){return R.fromPromise(this.__getEntityTraitDefinition(t,o))}async __getEntityTraitDefinition(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`entity-trait-definitions/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:gl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-trait-definitions/{entity_trait_definition_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateEntityTraitDefinition(t,o,r){return R.fromPromise(this.__updateEntityTraitDefinition(t,o,r))}async __updateEntityTraitDefinition(t,o,r){let i=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`entity-trait-definitions/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:bi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:wl.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /entity-trait-definitions/{entity_trait_definition_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}countEntityTraitDefinitions(t={},o){return R.fromPromise(this.__countEntityTraitDefinitions(t,o))}async __countEntityTraitDefinitions(t={},o){let{entityType:r,ids:i,q:m,traitType:g,traitTypes:l,limit:s,offset:p}=t,u={};r!=null&&(u.entity_type=q.jsonOrThrow(r,{unrecognizedObjectKeys:"strip"})),i!=null&&(Array.isArray(i)?u.ids=i.map(z=>z):u.ids=i),m!=null&&(u.q=m),g!=null&&(u.trait_type=Y.jsonOrThrow(g,{unrecognizedObjectKeys:"strip"})),l!=null&&(Array.isArray(l)?u.trait_types=l.map(z=>Y.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})):u.trait_types=Y.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-definitions/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:zl.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-trait-definitions/count.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}getEntityTraitValues(t,o){return R.fromPromise(this.__getEntityTraitValues(t,o))}async __getEntityTraitValues(t,o){let{definitionId:r,q:i,limit:m,offset:g}=t,l={};l.definition_id=r,i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"entity-trait-values"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:fl.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /entity-trait-values.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listPlanChanges(t={},o){return R.fromPromise(this.__listPlanChanges(t,o))}async __listPlanChanges(t={},o){let{action:r,basePlanAction:i,companyId:m,companyIds:g,planIds:l,limit:s,offset:p}=t,u={};r!=null&&(u.action=r),i!=null&&(u.base_plan_action=i),m!=null&&(u.company_id=m),g!=null&&(Array.isArray(g)?u.company_ids=g.map(z=>z):u.company_ids=g),l!=null&&(Array.isArray(l)?u.plan_ids=l.map(z=>z):u.plan_ids=l),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-changes"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:Cl.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-changes.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}getPlanChange(t,o){return R.fromPromise(this.__getPlanChange(t,o))}async __getPlanChange(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-changes/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Tl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-changes/{plan_change_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listPlanTraits(t={},o){return R.fromPromise(this.__listPlanTraits(t,o))}async __listPlanTraits(t={},o){let{ids:r,planId:i,traitId:m,traitIds:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(y=>y):p.ids=r),i!=null&&(p.plan_id=i),m!=null&&(p.trait_id=m),g!=null&&(Array.isArray(g)?p.trait_ids=g.map(y=>y):p.trait_ids=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Ol.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-traits.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createPlanTrait(t,o){return R.fromPromise(this.__createPlanTrait(t,o))}async __createPlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ri.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:jl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plan-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlanTrait(t,o){return R.fromPromise(this.__getPlanTrait(t,o))}async __getPlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:kl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanTrait(t,o,r){return R.fromPromise(this.__updatePlanTrait(t,o,r))}async __updatePlanTrait(t,o,r){let i=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:fi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Vl.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlanTrait(t,o){return R.fromPromise(this.__deletePlanTrait(t,o))}async __deletePlanTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-traits/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Bl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /plan-traits/{plan_trait_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanTraitsBulk(t,o){return R.fromPromise(this.__updatePlanTraitsBulk(t,o))}async __updatePlanTraitsBulk(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits/bulk"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:_i.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Dl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plan-traits/bulk.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countPlanTraits(t={},o){return R.fromPromise(this.__countPlanTraits(t,o))}async __countPlanTraits(t={},o){let{ids:r,planId:i,traitId:m,traitIds:g,limit:l,offset:s}=t,p={};r!=null&&(Array.isArray(r)?p.ids=r.map(y=>y):p.ids=r),i!=null&&(p.plan_id=i),m!=null&&(p.trait_id=m),g!=null&&(Array.isArray(g)?p.trait_ids=g.map(y=>y):p.trait_ids=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-traits/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Al.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-traits/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}upsertUserTrait(t,o){return R.fromPromise(this.__upsertUserTrait(t,o))}async __upsertUserTrait(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"user-traits"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ra.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Fl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /user-traits.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listUsers(t={},o){return R.fromPromise(this.__listUsers(t,o))}async __listUsers(t={},o){let{companyId:r,ids:i,planId:m,q:g,limit:l,offset:s}=t,p={};r!=null&&(p.company_id=r),i!=null&&(Array.isArray(i)?p.ids=i.map(y=>y):p.ids=i),m!=null&&(p.plan_id=m),g!=null&&(p.q=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Kl.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /users.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}upsertUser(t,o){return R.fromPromise(this.__upsertUser(t,o))}async __upsertUser(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:oa.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ql.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /users.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getUser(t,o){return R.fromPromise(this.__getUser(t,o))}async __getUser(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`users/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ll.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /users/{user_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteUser(t,o){return R.fromPromise(this.__deleteUser(t,o))}async __deleteUser(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`users/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Gl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /users/{user_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countUsers(t={},o){return R.fromPromise(this.__countUsers(t,o))}async __countUsers(t={},o){let{companyId:r,ids:i,planId:m,q:g,limit:l,offset:s}=t,p={};r!=null&&(p.company_id=r),i!=null&&(Array.isArray(i)?p.ids=i.map(y=>y):p.ids=i),m!=null&&(p.plan_id=m),g!=null&&(p.q=g),l!=null&&(p.limit=l.toString()),s!=null&&(p.offset=s.toString());let u=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:p,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(u.ok)return{data:Xl.parseOrThrow(u.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:u.rawResponse};if(u.error.reason==="status-code")switch(u.error.statusCode){case 400:throw new P(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 401:throw new S(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 403:throw new x(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 404:throw new E(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);case 500:throw new U(a.parseOrThrow(u.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),u.rawResponse);default:throw new c({statusCode:u.error.statusCode,body:u.error.body,rawResponse:u.rawResponse})}switch(u.error.reason){case"non-json":throw new c({statusCode:u.error.statusCode,body:u.error.rawBody,rawResponse:u.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /users/count.");case"unknown":throw new c({message:u.error.errorMessage,rawResponse:u.rawResponse})}}createUser(t,o){return R.fromPromise(this.__createUser(t,o))}async __createUser(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/create"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:oa.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Hl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /users/create.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deleteUserByKeys(t,o){return R.fromPromise(this.__deleteUserByKeys(t,o))}async __deleteUserByKeys(t,o){let r=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/delete"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Yi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Wl.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /users/delete.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}lookupUser(t,o){return R.fromPromise(this.__lookupUser(t,o))}async __lookupUser(t,o){let{keys:r}=t,i={};i.keys=be(r);let m=await(this._options.fetcher??_)({url:(0,M.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"users/lookup"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:$l.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /users/lookup.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var ee=re(require("url-join"));var ft=class{constructor(t={}){this._options=t}listCompanyOverrides(t={},o){return R.fromPromise(this.__listCompanyOverrides(t,o))}async __listCompanyOverrides(t={},o){let{companyId:r,companyIds:i,featureId:m,featureIds:g,ids:l,withoutExpired:s,q:p,limit:u,offset:y}=t,z={};r!=null&&(z.company_id=r),i!=null&&(Array.isArray(i)?z.company_ids=i.map(O=>O):z.company_ids=i),m!=null&&(z.feature_id=m),g!=null&&(Array.isArray(g)?z.feature_ids=g.map(O=>O):z.feature_ids=g),l!=null&&(Array.isArray(l)?z.ids=l.map(O=>O):z.ids=l),s!=null&&(z.without_expired=s.toString()),p!=null&&(z.q=p),u!=null&&(z.limit=u.toString()),y!=null&&(z.offset=y.toString());let C=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:Ql.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-overrides.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}createCompanyOverride(t,o){return R.fromPromise(this.__createCompanyOverride(t,o))}async __createCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Si.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:op.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /company-overrides.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getCompanyOverride(t,o){return R.fromPromise(this.__getCompanyOverride(t,o))}async __getCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:tp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-overrides/{company_override_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateCompanyOverride(t,o,r){return R.fromPromise(this.__updateCompanyOverride(t,o,r))}async __updateCompanyOverride(t,o,r){let i=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:xi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:sp.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /company-overrides/{company_override_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteCompanyOverride(t,o){return R.fromPromise(this.__deleteCompanyOverride(t,o))}async __deleteCompanyOverride(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-overrides/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:np.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /company-overrides/{company_override_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countCompanyOverrides(t={},o){return R.fromPromise(this.__countCompanyOverrides(t,o))}async __countCompanyOverrides(t={},o){let{companyId:r,companyIds:i,featureId:m,featureIds:g,ids:l,withoutExpired:s,q:p,limit:u,offset:y}=t,z={};r!=null&&(z.company_id=r),i!=null&&(Array.isArray(i)?z.company_ids=i.map(O=>O):z.company_ids=i),m!=null&&(z.feature_id=m),g!=null&&(Array.isArray(g)?z.feature_ids=g.map(O=>O):z.feature_ids=g),l!=null&&(Array.isArray(l)?z.ids=l.map(O=>O):z.ids=l),s!=null&&(z.without_expired=s.toString()),p!=null&&(z.q=p),u!=null&&(z.limit=u.toString()),y!=null&&(z.offset=y.toString());let C=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"company-overrides/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:lp.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /company-overrides/count.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}listFeatureCompanies(t,o){return R.fromPromise(this.__listFeatureCompanies(t,o))}async __listFeatureCompanies(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,l={};l.feature_id=r,i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-companies"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:dp.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-companies.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}countFeatureCompanies(t,o){return R.fromPromise(this.__countFeatureCompanies(t,o))}async __countFeatureCompanies(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,l={};l.feature_id=r,i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-companies/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:gp.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-companies/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listFeatureUsage(t={},o){return R.fromPromise(this.__listFeatureUsage(t,o))}async __listFeatureUsage(t={},o){let{companyId:r,companyKeys:i,featureIds:m,q:g,withoutNegativeEntitlements:l,limit:s,offset:p}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.company_keys=be(i)),m!=null&&(Array.isArray(m)?u.feature_ids=m.map(z=>z):u.feature_ids=m),g!=null&&(u.q=g),l!=null&&(u.without_negative_entitlements=l.toString()),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-usage"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:yp.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-usage.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}countFeatureUsage(t={},o){return R.fromPromise(this.__countFeatureUsage(t,o))}async __countFeatureUsage(t={},o){let{companyId:r,companyKeys:i,featureIds:m,q:g,withoutNegativeEntitlements:l,limit:s,offset:p}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.company_keys=be(i)),m!=null&&(Array.isArray(m)?u.feature_ids=m.map(z=>z):u.feature_ids=m),g!=null&&(u.q=g),l!=null&&(u.without_negative_entitlements=l.toString()),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-usage/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:bp.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-usage/count.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}listFeatureUsers(t,o){return R.fromPromise(this.__listFeatureUsers(t,o))}async __listFeatureUsers(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,l={};l.feature_id=r,i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-users"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:_p.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-users.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}countFeatureUsers(t,o){return R.fromPromise(this.__countFeatureUsers(t,o))}async __countFeatureUsers(t,o){let{featureId:r,q:i,limit:m,offset:g}=t,l={};l.feature_id=r,i!=null&&(l.q=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"feature-users/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:xp.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /feature-users/count.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listPlanEntitlements(t={},o){return R.fromPromise(this.__listPlanEntitlements(t,o))}async __listPlanEntitlements(t={},o){let{featureId:r,featureIds:i,ids:m,planId:g,planIds:l,q:s,withMeteredProducts:p,limit:u,offset:y}=t,z={};r!=null&&(z.feature_id=r),i!=null&&(Array.isArray(i)?z.feature_ids=i.map(O=>O):z.feature_ids=i),m!=null&&(Array.isArray(m)?z.ids=m.map(O=>O):z.ids=m),g!=null&&(z.plan_id=g),l!=null&&(Array.isArray(l)?z.plan_ids=l.map(O=>O):z.plan_ids=l),s!=null&&(z.q=s),p!=null&&(z.with_metered_products=p.toString()),u!=null&&(z.limit=u.toString()),y!=null&&(z.offset=y.toString());let C=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:Up.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-entitlements.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}createPlanEntitlement(t,o){return R.fromPromise(this.__createPlanEntitlement(t,o))}async __createPlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ei.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Tp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plan-entitlements.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlanEntitlement(t,o){return R.fromPromise(this.__getPlanEntitlement(t,o))}async __getPlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:vp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanEntitlement(t,o,r){return R.fromPromise(this.__updatePlanEntitlement(t,o,r))}async __updatePlanEntitlement(t,o,r){let i=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ui.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:kp.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlanEntitlement(t,o){return R.fromPromise(this.__deletePlanEntitlement(t,o))}async __deletePlanEntitlement(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-entitlements/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /plan-entitlements/{plan_entitlement_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countPlanEntitlements(t={},o){return R.fromPromise(this.__countPlanEntitlements(t,o))}async __countPlanEntitlements(t={},o){let{featureId:r,featureIds:i,ids:m,planId:g,planIds:l,q:s,withMeteredProducts:p,limit:u,offset:y}=t,z={};r!=null&&(z.feature_id=r),i!=null&&(Array.isArray(i)?z.feature_ids=i.map(O=>O):z.feature_ids=i),m!=null&&(Array.isArray(m)?z.ids=m.map(O=>O):z.ids=m),g!=null&&(z.plan_id=g),l!=null&&(Array.isArray(l)?z.plan_ids=l.map(O=>O):z.plan_ids=l),s!=null&&(z.q=s),p!=null&&(z.with_metered_products=p.toString()),u!=null&&(z.limit=u.toString()),y!=null&&(z.offset=y.toString());let C=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:z,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(C.ok)return{data:Dp.parseOrThrow(C.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:C.rawResponse};if(C.error.reason==="status-code")switch(C.error.statusCode){case 400:throw new P(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 401:throw new S(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 403:throw new x(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 404:throw new E(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);case 500:throw new U(a.parseOrThrow(C.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),C.rawResponse);default:throw new c({statusCode:C.error.statusCode,body:C.error.body,rawResponse:C.rawResponse})}switch(C.error.reason){case"non-json":throw new c({statusCode:C.error.statusCode,body:C.error.rawBody,rawResponse:C.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-entitlements/count.");case"unknown":throw new c({message:C.error.errorMessage,rawResponse:C.rawResponse})}}duplicatePlanEntitlements(t,o){return R.fromPromise(this.__duplicatePlanEntitlements(t,o))}async __duplicatePlanEntitlements(t,o){let r=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-entitlements/duplicate"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Pi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ip.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plan-entitlements/duplicate.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getFeatureUsageByCompany(t,o){return R.fromPromise(this.__getFeatureUsageByCompany(t,o))}async __getFeatureUsageByCompany(t,o){let{keys:r}=t,i={};i.keys=be(r);let m=await(this._options.fetcher??_)({url:(0,ee.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"usage-by-company"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:qp.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /usage-by-company.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Le=re(require("url-join"));var _t=class{constructor(t={}){this._options=t}updateCompanyPlans(t,o,r){return R.fromPromise(this.__updateCompanyPlans(t,o,r))}async __updateCompanyPlans(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`company-plans/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ci.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Lp.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /company-plans/{company_plan_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}listPlans(t={},o){return R.fromPromise(this.__listPlans(t,o))}async __listPlans(t={},o){let{companyId:r,forFallbackPlan:i,forInitialPlan:m,forTrialExpiryPlan:g,hasProductId:l,ids:s,planType:p,q:u,withoutEntitlementFor:y,withoutPaidProductId:z,limit:C,offset:O}=t,v={};r!=null&&(v.company_id=r),i!=null&&(v.for_fallback_plan=i.toString()),m!=null&&(v.for_initial_plan=m.toString()),g!=null&&(v.for_trial_expiry_plan=g.toString()),l!=null&&(v.has_product_id=l.toString()),s!=null&&(Array.isArray(s)?v.ids=s.map(B=>B):v.ids=s),p!=null&&(v.plan_type=pe.jsonOrThrow(p,{unrecognizedObjectKeys:"strip"})),u!=null&&(v.q=u),y!=null&&(v.without_entitlement_for=y),z!=null&&(v.without_paid_product_id=z.toString()),C!=null&&(v.limit=C.toString()),O!=null&&(v.offset=O.toString());let j=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:v,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(j.ok)return{data:Np.parseOrThrow(j.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:j.rawResponse};if(j.error.reason==="status-code")switch(j.error.statusCode){case 400:throw new P(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 401:throw new S(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 403:throw new x(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 404:throw new E(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 500:throw new U(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);default:throw new c({statusCode:j.error.statusCode,body:j.error.body,rawResponse:j.rawResponse})}switch(j.error.reason){case"non-json":throw new c({statusCode:j.error.statusCode,body:j.error.rawBody,rawResponse:j.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plans.");case"unknown":throw new c({message:j.error.errorMessage,rawResponse:j.rawResponse})}}createPlan(t,o){return R.fromPromise(this.__createPlan(t,o))}async __createPlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ti.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Xp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plans.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getPlan(t,o){return R.fromPromise(this.__getPlan(t,o))}async __getPlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Hp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plans/{plan_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlan(t,o,r){return R.fromPromise(this.__updatePlan(t,o,r))}async __updatePlan(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:vi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Wp.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plans/{plan_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deletePlan(t,o){return R.fromPromise(this.__deletePlan(t,o))}async __deletePlan(t,o){let r=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Jp.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /plans/{plan_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertBillingProductPlan(t,o,r){return R.fromPromise(this.__upsertBillingProductPlan(t,o,r))}async __upsertBillingProductPlan(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plans/${encodeURIComponent(t)}/billing_products`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Oi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Zp.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plans/{plan_id}/billing_products.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}countPlans(t={},o){return R.fromPromise(this.__countPlans(t,o))}async __countPlans(t={},o){let{companyId:r,forFallbackPlan:i,forInitialPlan:m,forTrialExpiryPlan:g,hasProductId:l,ids:s,planType:p,q:u,withoutEntitlementFor:y,withoutPaidProductId:z,limit:C,offset:O}=t,v={};r!=null&&(v.company_id=r),i!=null&&(v.for_fallback_plan=i.toString()),m!=null&&(v.for_initial_plan=m.toString()),g!=null&&(v.for_trial_expiry_plan=g.toString()),l!=null&&(v.has_product_id=l.toString()),s!=null&&(Array.isArray(s)?v.ids=s.map(B=>B):v.ids=s),p!=null&&(v.plan_type=pe.jsonOrThrow(p,{unrecognizedObjectKeys:"strip"})),u!=null&&(v.q=u),y!=null&&(v.without_entitlement_for=y),z!=null&&(v.without_paid_product_id=z.toString()),C!=null&&(v.limit=C.toString()),O!=null&&(v.offset=O.toString());let j=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:v,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(j.ok)return{data:Qp.parseOrThrow(j.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:j.rawResponse};if(j.error.reason==="status-code")switch(j.error.statusCode){case 400:throw new P(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 401:throw new S(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 403:throw new x(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 404:throw new E(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);case 500:throw new U(a.parseOrThrow(j.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),j.rawResponse);default:throw new c({statusCode:j.error.statusCode,body:j.error.body,rawResponse:j.rawResponse})}switch(j.error.reason){case"non-json":throw new c({statusCode:j.error.statusCode,body:j.error.rawBody,rawResponse:j.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plans/count.");case"unknown":throw new c({message:j.error.errorMessage,rawResponse:j.rawResponse})}}listPlanIssues(t,o){return R.fromPromise(this.__listPlanIssues(t,o))}async __listPlanIssues(t,o){let{planId:r}=t,i={};i.plan_id=r;let m=await(this._options.fetcher??_)({url:(0,Le.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plans/issues"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:i,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(m.ok)return{data:om.parseOrThrow(m.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:m.rawResponse};if(m.error.reason==="status-code")switch(m.error.statusCode){case 400:throw new P(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 401:throw new S(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 403:throw new x(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 404:throw new E(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);case 500:throw new U(a.parseOrThrow(m.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),m.rawResponse);default:throw new c({statusCode:m.error.statusCode,body:m.error.body,rawResponse:m.rawResponse})}switch(m.error.reason){case"non-json":throw new c({statusCode:m.error.statusCode,body:m.error.rawBody,rawResponse:m.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plans/issues.");case"unknown":throw new c({message:m.error.errorMessage,rawResponse:m.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var ur=re(require("url-join"));var St=class{constructor(t={}){this._options=t}listComponents(t={},o){return R.fromPromise(this.__listComponents(t,o))}async __listComponents(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:im.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /components.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}createComponent(t,o){return R.fromPromise(this.__createComponent(t,o))}async __createComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ji.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:am.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /components.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getComponent(t,o){return R.fromPromise(this.__getComponent(t,o))}async __getComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:sm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /components/{component_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateComponent(t,o={},r){return R.fromPromise(this.__updateComponent(t,o,r))}async __updateComponent(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ki.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:nm.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /components/{component_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteComponent(t,o){return R.fromPromise(this.__deleteComponent(t,o))}async __deleteComponent(t,o){let r=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`components/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:cm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /components/{component_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countComponents(t={},o){return R.fromPromise(this.__countComponents(t,o))}async __countComponents(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:pm.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /components/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}previewComponentData(t={},o){return R.fromPromise(this.__previewComponentData(t,o))}async __previewComponentData(t={},o){let{companyId:r,componentId:i}=t,m={};r!=null&&(m.company_id=r),i!=null&&(m.component_id=i);let g=await(this._options.fetcher??_)({url:(0,ur.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"components/preview-data"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:m,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(g.ok)return{data:hm.parseOrThrow(g.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:g.rawResponse};if(g.error.reason==="status-code")switch(g.error.statusCode){case 401:throw new S(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 403:throw new x(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 404:throw new E(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);case 500:throw new U(a.parseOrThrow(g.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),g.rawResponse);default:throw new c({statusCode:g.error.statusCode,body:g.error.body,rawResponse:g.rawResponse})}switch(g.error.reason){case"non-json":throw new c({statusCode:g.error.statusCode,body:g.error.rawBody,rawResponse:g.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /components/preview-data.");case"unknown":throw new c({message:g.error.errorMessage,rawResponse:g.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Zr=re(require("url-join"));var xt=class{constructor(t={}){this._options=t}upsertDealLineItemAssociation(t,o){return R.fromPromise(this.__upsertDealLineItemAssociation(t,o))}async __upsertDealLineItemAssociation(t,o){let r=await(this._options.fetcher??_)({url:(0,Zr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/associations/deal-line-item"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Vi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:gm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /crm/associations/deal-line-item.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertLineItem(t,o){return R.fromPromise(this.__upsertLineItem(t,o))}async __upsertLineItem(t,o){let r=await(this._options.fetcher??_)({url:(0,Zr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/deal-line-item/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Bi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:wm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /crm/deal-line-item/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}upsertCrmDeal(t,o){return R.fromPromise(this.__upsertCrmDeal(t,o))}async __upsertCrmDeal(t,o){let r=await(this._options.fetcher??_)({url:(0,Zr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/deals/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Di.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:zm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /crm/deals/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}listCrmProducts(t={},o){return R.fromPromise(this.__listCrmProducts(t,o))}async __listCrmProducts(t={},o){let{ids:r,name:i,limit:m,offset:g}=t,l={};r!=null&&(Array.isArray(r)?l.ids=r.map(p=>p):l.ids=r),i!=null&&(l.name=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,Zr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/products"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:Rm.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /crm/products.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}upsertCrmProduct(t,o){return R.fromPromise(this.__upsertCrmProduct(t,o))}async __upsertCrmProduct(t,o){let r=await(this._options.fetcher??_)({url:(0,Zr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"crm/products/upsert"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Mi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:fm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /crm/products/upsert.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var ta=re(require("url-join"));var Et=class{constructor(t={}){this._options=t}createDataExport(t,o){return R.fromPromise(this.__createDataExport(t,o))}async __createDataExport(t,o){let r=await(this._options.fetcher??_)({url:(0,ta.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"data-exports"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:{...Ai.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),export_type:"company-feature-usage",output_file_type:"csv"},timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Um.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /data-exports.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getDataExportArtifact(t,o){return R.fromPromise(this.__getDataExportArtifact(t,o))}async __getDataExportArtifact(t,o){let r=await(this._options.fetcher??_)({url:(0,ta.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`data-exports/${encodeURIComponent(t)}/artifact`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",responseType:"streaming",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:r.body,rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /data-exports/{data_export_id}/artifact.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var fr=re(require("url-join"));var Ut=class{constructor(t={}){this._options=t}createEventBatch(t,o){return R.fromPromise(this.__createEventBatch(t,o))}async __createEventBatch(t,o){let r=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"event-batch"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Fi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Cm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /event-batch.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEventSummaries(t={},o){return R.fromPromise(this.__getEventSummaries(t,o))}async __getEventSummaries(t={},o){let{q:r,eventSubtypes:i,limit:m,offset:g}=t,l={};r!=null&&(l.q=r),i!=null&&(Array.isArray(i)?l.event_subtypes=i.map(p=>p):l.event_subtypes=i),m!=null&&(l.limit=m.toString()),g!=null&&(l.offset=g.toString());let s=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"event-types"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:l,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(s.ok)return{data:vm.parseOrThrow(s.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:s.rawResponse};if(s.error.reason==="status-code")switch(s.error.statusCode){case 400:throw new P(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 401:throw new S(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 403:throw new x(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 404:throw new E(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);case 500:throw new U(a.parseOrThrow(s.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),s.rawResponse);default:throw new c({statusCode:s.error.statusCode,body:s.error.body,rawResponse:s.rawResponse})}switch(s.error.reason){case"non-json":throw new c({statusCode:s.error.statusCode,body:s.error.rawBody,rawResponse:s.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /event-types.");case"unknown":throw new c({message:s.error.errorMessage,rawResponse:s.rawResponse})}}listEvents(t={},o){return R.fromPromise(this.__listEvents(t,o))}async __listEvents(t={},o){let{companyId:r,eventSubtype:i,eventTypes:m,flagId:g,userId:l,limit:s,offset:p}=t,u={};r!=null&&(u.company_id=r),i!=null&&(u.event_subtype=i),m!=null&&(Array.isArray(m)?u.event_types=m.map(z=>je.jsonOrThrow(z,{unrecognizedObjectKeys:"strip"})):u.event_types=je.jsonOrThrow(m,{unrecognizedObjectKeys:"strip"})),g!=null&&(u.flag_id=g),l!=null&&(u.user_id=l),s!=null&&(u.limit=s.toString()),p!=null&&(u.offset=p.toString());let y=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"events"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:u,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(y.ok)return{data:jm.parseOrThrow(y.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:y.rawResponse};if(y.error.reason==="status-code")switch(y.error.statusCode){case 400:throw new P(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 401:throw new S(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 403:throw new x(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 404:throw new E(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);case 500:throw new U(a.parseOrThrow(y.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),y.rawResponse);default:throw new c({statusCode:y.error.statusCode,body:y.error.body,rawResponse:y.rawResponse})}switch(y.error.reason){case"non-json":throw new c({statusCode:y.error.statusCode,body:y.error.rawBody,rawResponse:y.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /events.");case"unknown":throw new c({message:y.error.errorMessage,rawResponse:y.rawResponse})}}createEvent(t,o){return R.fromPromise(this.__createEvent(t,o))}async __createEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"events"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Qo.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:km.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /events.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getEvent(t,o){return R.fromPromise(this.__getEvent(t,o))}async __getEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`events/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /events/{event_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getSegmentIntegrationStatus(t){return R.fromPromise(this.__getSegmentIntegrationStatus(t))}async __getSegmentIntegrationStatus(t){let o=await(this._options.fetcher??_)({url:(0,fr.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"segment-integration"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:Dm.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /segment-integration.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var me=re(require("url-join"));var Pt=class{constructor(t={}){this._options=t}listFeatures(t={},o){return R.fromPromise(this.__listFeatures(t,o))}async __listFeatures(t={},o){let{ids:r,q:i,withoutCompanyOverrideFor:m,withoutPlanEntitlementFor:g,featureType:l,booleanRequireEvent:s,limit:p,offset:u}=t,y={};r!=null&&(Array.isArray(r)?y.ids=r.map(C=>C):y.ids=r),i!=null&&(y.q=i),m!=null&&(y.without_company_override_for=m),g!=null&&(y.without_plan_entitlement_for=g),l!=null&&(Array.isArray(l)?y.feature_type=l.map(C=>ie.jsonOrThrow(C,{unrecognizedObjectKeys:"strip"})):y.feature_type=ie.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(y.boolean_require_event=s.toString()),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Lm.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /features.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}createFeature(t,o){return R.fromPromise(this.__createFeature(t,o))}async __createFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ii.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Gm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /features.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getFeature(t,o){return R.fromPromise(this.__getFeature(t,o))}async __getFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Nm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /features/{feature_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFeature(t,o={},r){return R.fromPromise(this.__updateFeature(t,o,r))}async __updateFeature(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ki.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Xm.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /features/{feature_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteFeature(t,o){return R.fromPromise(this.__deleteFeature(t,o))}async __deleteFeature(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`features/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Hm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /features/{feature_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countFeatures(t={},o){return R.fromPromise(this.__countFeatures(t,o))}async __countFeatures(t={},o){let{ids:r,q:i,withoutCompanyOverrideFor:m,withoutPlanEntitlementFor:g,featureType:l,booleanRequireEvent:s,limit:p,offset:u}=t,y={};r!=null&&(Array.isArray(r)?y.ids=r.map(C=>C):y.ids=r),i!=null&&(y.q=i),m!=null&&(y.without_company_override_for=m),g!=null&&(y.without_plan_entitlement_for=g),l!=null&&(Array.isArray(l)?y.feature_type=l.map(C=>ie.jsonOrThrow(C,{unrecognizedObjectKeys:"strip"})):y.feature_type=ie.jsonOrThrow(l,{unrecognizedObjectKeys:"strip"})),s!=null&&(y.boolean_require_event=s.toString()),p!=null&&(y.limit=p.toString()),u!=null&&(y.offset=u.toString());let z=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"features/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:y,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(z.ok)return{data:Jm.parseOrThrow(z.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:z.rawResponse};if(z.error.reason==="status-code")switch(z.error.statusCode){case 400:throw new P(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 401:throw new S(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 403:throw new x(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 404:throw new E(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);case 500:throw new U(a.parseOrThrow(z.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),z.rawResponse);default:throw new c({statusCode:z.error.statusCode,body:z.error.body,rawResponse:z.rawResponse})}switch(z.error.reason){case"non-json":throw new c({statusCode:z.error.statusCode,body:z.error.rawBody,rawResponse:z.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /features/count.");case"unknown":throw new c({message:z.error.errorMessage,rawResponse:z.rawResponse})}}listFlags(t={},o){return R.fromPromise(this.__listFlags(t,o))}async __listFlags(t={},o){let{featureId:r,ids:i,q:m,limit:g,offset:l}=t,s={};r!=null&&(s.feature_id=r),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Zm.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /flags.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}createFlag(t,o){return R.fromPromise(this.__createFlag(t,o))}async __createFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Zi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Ym.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /flags.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getFlag(t,o){return R.fromPromise(this.__getFlag(t,o))}async __getFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Qm.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /flags/{flag_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFlag(t,o,r){return R.fromPromise(this.__updateFlag(t,o,r))}async __updateFlag(t,o,r){let i=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Zi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:eu.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /flags/{flag_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteFlag(t,o){return R.fromPromise(this.__deleteFlag(t,o))}async __deleteFlag(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ru.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /flags/{flag_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateFlagRules(t,o,r){return R.fromPromise(this.__updateFlagRules(t,o,r))}async __updateFlagRules(t,o,r){let i=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}/rules`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:qi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:iu.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /flags/{flag_id}/rules.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}checkFlag(t,o,r){return R.fromPromise(this.__checkFlag(t,o,r))}async __checkFlag(t,o,r){let i=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`flags/${encodeURIComponent(t)}/check`),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:ao.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:au.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /flags/{key}/check.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}checkFlags(t,o){return R.fromPromise(this.__checkFlags(t,o))}async __checkFlags(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags/check"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:ao.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:su.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /flags/check.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}checkFlagsBulk(t,o){return R.fromPromise(this.__checkFlagsBulk(t,o))}async __checkFlagsBulk(t,o){let r=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags/check-bulk"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Li.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:cu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /flags/check-bulk.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countFlags(t={},o){return R.fromPromise(this.__countFlags(t,o))}async __countFlags(t={},o){let{featureId:r,ids:i,q:m,limit:g,offset:l}=t,s={};r!=null&&(s.feature_id=r),i!=null&&(Array.isArray(i)?s.ids=i.map(u=>u):s.ids=i),m!=null&&(s.q=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,me.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"flags/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:pu.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /flags/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Ct=re(require("url-join"));var Tt=class{constructor(t={}){this._options=t}getPlanGroup(t){return R.fromPromise(this.__getPlanGroup(t))}async __getPlanGroup(t){let o=await(this._options.fetcher??_)({url:(0,Ct.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-groups"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...t?.headers},contentType:"application/json",requestType:"json",timeoutMs:t?.timeoutInSeconds!=null?t.timeoutInSeconds*1e3:6e4,maxRetries:t?.maxRetries,abortSignal:t?.abortSignal});if(o.ok)return{data:bu.parseOrThrow(o.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:o.rawResponse};if(o.error.reason==="status-code")switch(o.error.statusCode){case 401:throw new S(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 403:throw new x(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 404:throw new E(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);case 500:throw new U(a.parseOrThrow(o.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),o.rawResponse);default:throw new c({statusCode:o.error.statusCode,body:o.error.body,rawResponse:o.rawResponse})}switch(o.error.reason){case"non-json":throw new c({statusCode:o.error.statusCode,body:o.error.rawBody,rawResponse:o.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /plan-groups.");case"unknown":throw new c({message:o.error.errorMessage,rawResponse:o.rawResponse})}}createPlanGroup(t,o){return R.fromPromise(this.__createPlanGroup(t,o))}async __createPlanGroup(t,o){let r=await(this._options.fetcher??_)({url:(0,Ct.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"plan-groups"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Ni.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:_u.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /plan-groups.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updatePlanGroup(t,o,r){return R.fromPromise(this.__updatePlanGroup(t,o,r))}async __updatePlanGroup(t,o,r){let i=await(this._options.fetcher??_)({url:(0,Ct.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-groups/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Xi.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Su.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plan-groups/{plan_group_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var id=re(require("url-join"));var vt=class{constructor(t={}){this._options=t}issueTemporaryAccessToken(t,o){return R.fromPromise(this.__issueTemporaryAccessToken(t,o))}async __issueTemporaryAccessToken(t,o){let r=await(this._options.fetcher??_)({url:(0,id.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"temporary-access-tokens"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:{...Hi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),resource_type:"company"},timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Eu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /temporary-access-tokens.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Ge=re(require("url-join"));var Ot=class{constructor(t={}){this._options=t}listWebhookEvents(t={},o){return R.fromPromise(this.__listWebhookEvents(t,o))}async __listWebhookEvents(t={},o){let{ids:r,q:i,webhookId:m,limit:g,offset:l}=t,s={};r!=null&&(Array.isArray(r)?s.ids=r.map(u=>u):s.ids=r),i!=null&&(s.q=i),m!=null&&(s.webhook_id=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhook-events"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:Pu.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhook-events.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}getWebhookEvent(t,o){return R.fromPromise(this.__getWebhookEvent(t,o))}async __getWebhookEvent(t,o){let r=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhook-events/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Cu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhook-events/{webhook_event_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countWebhookEvents(t={},o){return R.fromPromise(this.__countWebhookEvents(t,o))}async __countWebhookEvents(t={},o){let{ids:r,q:i,webhookId:m,limit:g,offset:l}=t,s={};r!=null&&(Array.isArray(r)?s.ids=r.map(u=>u):s.ids=r),i!=null&&(s.q=i),m!=null&&(s.webhook_id=m),g!=null&&(s.limit=g.toString()),l!=null&&(s.offset=l.toString());let p=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhook-events/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:s,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(p.ok)return{data:vu.parseOrThrow(p.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:p.rawResponse};if(p.error.reason==="status-code")switch(p.error.statusCode){case 400:throw new P(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 401:throw new S(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 403:throw new x(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 404:throw new E(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);case 500:throw new U(a.parseOrThrow(p.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),p.rawResponse);default:throw new c({statusCode:p.error.statusCode,body:p.error.body,rawResponse:p.rawResponse})}switch(p.error.reason){case"non-json":throw new c({statusCode:p.error.statusCode,body:p.error.rawBody,rawResponse:p.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhook-events/count.");case"unknown":throw new c({message:p.error.errorMessage,rawResponse:p.rawResponse})}}listWebhooks(t={},o){return R.fromPromise(this.__listWebhooks(t,o))}async __listWebhooks(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:ju.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhooks.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}createWebhook(t,o){return R.fromPromise(this.__createWebhook(t,o))}async __createWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks"),method:"POST",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",body:Wi.jsonOrThrow(t,{unrecognizedObjectKeys:"strip"}),timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:ku.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling POST /webhooks.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}getWebhook(t,o){return R.fromPromise(this.__getWebhook(t,o))}async __getWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Vu.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhooks/{webhook_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}updateWebhook(t,o={},r){return R.fromPromise(this.__updateWebhook(t,o,r))}async __updateWebhook(t,o={},r){let i=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...r?.headers},contentType:"application/json",requestType:"json",body:Ji.jsonOrThrow(o,{unrecognizedObjectKeys:"strip"}),timeoutMs:r?.timeoutInSeconds!=null?r.timeoutInSeconds*1e3:6e4,maxRetries:r?.maxRetries,abortSignal:r?.abortSignal});if(i.ok)return{data:Bu.parseOrThrow(i.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:i.rawResponse};if(i.error.reason==="status-code")switch(i.error.statusCode){case 400:throw new P(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 401:throw new S(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 403:throw new x(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 404:throw new E(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);case 500:throw new U(a.parseOrThrow(i.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),i.rawResponse);default:throw new c({statusCode:i.error.statusCode,body:i.error.body,rawResponse:i.rawResponse})}switch(i.error.reason){case"non-json":throw new c({statusCode:i.error.statusCode,body:i.error.rawBody,rawResponse:i.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /webhooks/{webhook_id}.");case"unknown":throw new c({message:i.error.errorMessage,rawResponse:i.rawResponse})}}deleteWebhook(t,o){return R.fromPromise(this.__deleteWebhook(t,o))}async __deleteWebhook(t,o){let r=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`webhooks/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:Du.parseOrThrow(r.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:r.rawResponse};if(r.error.reason==="status-code")switch(r.error.statusCode){case 400:throw new P(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 401:throw new S(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 403:throw new x(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 404:throw new E(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);case 500:throw new U(a.parseOrThrow(r.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),r.rawResponse);default:throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse})}switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /webhooks/{webhook_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}countWebhooks(t={},o){return R.fromPromise(this.__countWebhooks(t,o))}async __countWebhooks(t={},o){let{q:r,limit:i,offset:m}=t,g={};r!=null&&(g.q=r),i!=null&&(g.limit=i.toString()),m!=null&&(g.offset=m.toString());let l=await(this._options.fetcher??_)({url:(0,Ge.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,"webhooks/count"),method:"GET",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",queryParameters:g,requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(l.ok)return{data:Au.parseOrThrow(l.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),rawResponse:l.rawResponse};if(l.error.reason==="status-code")switch(l.error.statusCode){case 400:throw new P(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 401:throw new S(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 403:throw new x(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 404:throw new E(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);case 500:throw new U(a.parseOrThrow(l.error.body,{unrecognizedObjectKeys:"passthrough",allowUnrecognizedUnionMembers:!0,allowUnrecognizedEnumValues:!0,skipValidation:!0,breadcrumbsPrefix:["response"]}),l.rawResponse);default:throw new c({statusCode:l.error.statusCode,body:l.error.body,rawResponse:l.rawResponse})}switch(l.error.reason){case"non-json":throw new c({statusCode:l.error.statusCode,body:l.error.rawBody,rawResponse:l.rawResponse});case"timeout":throw new b("Timeout exceeded when calling GET /webhooks/count.");case"unknown":throw new c({message:l.error.errorMessage,rawResponse:l.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var jt=class{constructor(t={}){this._options=t}get accounts(){return this._accounts??=new wt(this._options)}get billing(){return this._billing??=new yt(this._options)}get credits(){return this._credits??=new zt(this._options)}get checkout(){return this._checkout??=new bt(this._options)}get companies(){return this._companies??=new Rt(this._options)}get entitlements(){return this._entitlements??=new ft(this._options)}get plans(){return this._plans??=new _t(this._options)}get components(){return this._components??=new St(this._options)}get crm(){return this._crm??=new xt(this._options)}get dataexports(){return this._dataexports??=new Et(this._options)}get events(){return this._events??=new Ut(this._options)}get features(){return this._features??=new Pt(this._options)}get plangroups(){return this._plangroups??=new Tt(this._options)}get accesstokens(){return this._accesstokens??=new vt(this._options)}get webhooks(){return this._webhooks??=new Ot(this._options)}putPlanAudiencesPlanAudienceId(t,o){return R.fromPromise(this.__putPlanAudiencesPlanAudienceId(t,o))}async __putPlanAudiencesPlanAudienceId(t,o){let r=await(this._options.fetcher??_)({url:(0,ia.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-audiences/${encodeURIComponent(t)}`),method:"PUT",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:void 0,rawResponse:r.rawResponse};if(r.error.reason==="status-code")throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse});switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling PUT /plan-audiences/{plan_audience_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}deletePlanAudiencesPlanAudienceId(t,o){return R.fromPromise(this.__deletePlanAudiencesPlanAudienceId(t,o))}async __deletePlanAudiencesPlanAudienceId(t,o){let r=await(this._options.fetcher??_)({url:(0,ia.default)(await d.get(this._options.baseUrl)??await d.get(this._options.environment)??f.Default,`plan-audiences/${encodeURIComponent(t)}`),method:"DELETE",headers:{"X-Fern-Language":"JavaScript","X-Fern-SDK-Name":"@schematichq/schematic-typescript-node","X-Fern-SDK-Version":"1.2.7","User-Agent":"@schematichq/schematic-typescript-node/1.2.7","X-Fern-Runtime":h.type,"X-Fern-Runtime-Version":h.version,...await this._getCustomAuthorizationHeaders(),...o?.headers},contentType:"application/json",requestType:"json",timeoutMs:o?.timeoutInSeconds!=null?o.timeoutInSeconds*1e3:6e4,maxRetries:o?.maxRetries,abortSignal:o?.abortSignal});if(r.ok)return{data:void 0,rawResponse:r.rawResponse};if(r.error.reason==="status-code")throw new c({statusCode:r.error.statusCode,body:r.error.body,rawResponse:r.rawResponse});switch(r.error.reason){case"non-json":throw new c({statusCode:r.error.statusCode,body:r.error.rawBody,rawResponse:r.rawResponse});case"timeout":throw new b("Timeout exceeded when calling DELETE /plan-audiences/{plan_audience_id}.");case"unknown":throw new c({message:r.error.errorMessage,rawResponse:r.rawResponse})}}async _getCustomAuthorizationHeaders(){return{"X-Schematic-Api-Key":await d.get(this._options.apiKey)}}};var Yr=class{error(t,...o){console.error(t,...o)}warn(t,...o){console.warn(t,...o)}info(t,...o){console.info(t,...o)}debug(t,...o){console.debug(t,...o)}};var sg=1e3,ng=1e3,cg=3,lg=1e3,kt=class{constructor(t,o){this.events=[];this.intervalId=null;this.shutdown=!1;this.stopped=!1;this.flushing=!1;let{logger:r=new Yr,maxSize:i=ng,interval:m=sg,offline:g=!1,maxRetries:l=cg,initialRetryDelay:s=lg}=o||{};this.eventsApi=t,this.interval=m,this.logger=r,this.maxSize=i,this.offline=g,this.maxRetries=l,this.initialRetryDelay=s,this.startPeriodicFlush()}async flush(){if(!(this.events.length===0||this.flushing)){this.flushing=!0;try{let t=[...this.events];this.events=[];let o=0,r=!1,i=null;for(;o<=this.maxRetries&&!r;)try{o>0&&this.logger.info(`Retrying event batch submission (attempt ${o} of ${this.maxRetries})`),await this.eventsApi.createEventBatch({events:t}),r=!0}catch(m){if(i=m,o++,o<=this.maxRetries){let g=this.initialRetryDelay*Math.pow(2,o-1),l=Math.random()*.1*g,s=g+l;this.logger.warn(`Event batch submission failed: ${m}. Retrying in ${(s/1e3).toFixed(2)} seconds...`),process.env.NODE_ENV!=="test"&&await new Promise(p=>setTimeout(p,s))}}r?o>0&&this.logger.info(`Event batch submission succeeded after ${o} retries`):this.logger.error(`Event batch submission failed after ${this.maxRetries} retries:`,i)}finally{this.flushing=!1}}}async push(t){if(!this.offline){if(this.stopped){this.logger.error("Event buffer is stopped, not accepting new events");return}this.events.length>=this.maxSize&&!this.flushing&&await this.flush(),this.events.push(t)}}async stop(){this.shutdown=!0,this.stopped=!0,this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null),await this.flush()}startPeriodicFlush(){this.offline||this.intervalId||(this.intervalId=setInterval(async()=>{this.shutdown||await this.flush()},this.interval))}};function ad(w){return async function(o){let r={};if(w&&Object.assign(r,w),o.body!==void 0&&o.contentType!=null&&(r["Content-Type"]=o.contentType),o.headers!=null)for(let[l,s]of Object.entries(o.headers))s!=null&&(r[l]=s);let i=co(o.url,o.queryParameters),m=await po({body:o.body,type:o.requestType==="json"?"json":"other"}),g=await lo();try{let l=await ho(async()=>uo(g,i,o.method,r,m,o.timeoutMs,o.abortSignal,o.withCredentials,o.duplex),o.maxRetries),s=await mo(l,o.responseType),p=Sr(l);return l.status>=200&&l.status<400?{ok:!0,body:s,headers:l.headers,rawResponse:p}:{ok:!1,error:{reason:"status-code",statusCode:l.status,body:s},rawResponse:p}}catch(l){return o.abortSignal!=null&&o.abortSignal.aborted?{ok:!1,error:{reason:"unknown",errorMessage:"The user aborted a request"},rawResponse:gr}:l instanceof Error&&l.name==="AbortError"?{ok:!1,error:{reason:"timeout"},rawResponse:gr}:l instanceof Error?{ok:!1,error:{reason:"unknown",errorMessage:l.message},rawResponse:wr}:{ok:!1,error:{reason:"unknown",errorMessage:JSON.stringify(l)},rawResponse:wr}}}}async function pg(w){return{ok:!0,body:{},headers:{"Content-Type":"application/json"},rawResponse:{headers:new hr,redirected:!1,status:200,statusText:"OK",type:"basic",url:""}}}var sd=pg;var Vt=class extends jt{constructor(t){let{apiKey:o="",basePath:r,eventBufferInterval:i,flagDefaults:m={},logger:g=new Yr}=t??{},{offline:l=!1}=t??{},s={};t?.environmentId&&(s["X-Schematic-Environment-Id"]=t.environmentId),t?.headers&&Object.assign(s,t.headers),l?o!==""&&g.debug("Offline mode enabled, ignoring API key"):o===""&&!l&&(g.warn("No API key was provided, running in offline mode"),l=!0),super({apiKey:o,environment:r,fetcher:l?sd:ad(s)}),this.logger=g,this.eventBuffer=new kt(this.events,{interval:i,logger:g,offline:l}),this.flagCheckCacheProviders=t?.cacheProviders?.flagChecks??[new _r],this.flagDefaults=m,this.offline=l}async checkFlag(t,o){if(this.offline)return this.logger.debug(`Offline mode enabled, returning default flag value for flag ${o}`),this.getFlagDefault(o);try{let r=JSON.stringify({evalCtx:t,key:o});for(let m of this.flagCheckCacheProviders){let g=await m.get(r);if(g!==void 0)return this.logger.debug(`${m.constructor.name} cache hit for flag ${o}`),g}let i=await this.features.checkFlag(o,t);if(i.data.value===void 0)return this.logger.debug(`No value returned from feature flag API for flag ${o}, falling back to default`),this.getFlagDefault(o);for(let m of this.flagCheckCacheProviders)this.logger.debug(`Caching value for flag ${o} in ${m.constructor.name}`),await m.set(r,i.data.value);return this.logger.debug(`Feature flag API response for ${o}: ${JSON.stringify(i.data)}`),i.data.value}catch(r){return this.logger.error(`Error checking flag ${o}: ${r}`),this.getFlagDefault(o)}}async checkFlags(t,o){if(this.offline)return this.logger.debug(`Offline mode enabled, returning default flag values for flags ${o?o.join(", "):"all"}`),o&&o.length>0?o.map(r=>({flag:r,value:this.getFlagDefault(r),reason:"Offline mode - using default value"})):[];try{if(!o||o.length===0)return this.logger.debug("No specific flag keys provided, calling standard checkFlags API"),(await this.features.checkFlags(t)).data.flags;let r=new Map,i=[];for(let s of o){let p=JSON.stringify({evalCtx:t,key:s}),u=!1;for(let y of this.flagCheckCacheProviders){let z=await y.get(p);if(z!==void 0){this.logger.debug(`${y.constructor.name} cache hit for flag ${s}`),r.set(s,{flag:s,value:z,reason:"Retrieved from cache"}),u=!0;break}}u||i.push(s)}if(i.length===0)return this.logger.debug(`All ${o.length} flags found in cache`),o.map(s=>r.get(s));this.logger.debug(`Cache miss for ${i.length} flags: ${i.join(", ")}, calling API`);let g=(await this.features.checkFlags(t)).data.flags,l=[];for(let s of o){let p=g.find(u=>u.flag===s);if(p){let u=JSON.stringify({evalCtx:t,key:s});for(let y of this.flagCheckCacheProviders)this.logger.debug(`Caching value for flag ${u} in ${y.constructor.name}`),await y.set(u,p.value);l.push(p)}else{let u=r.get(s);if(u)l.push(u);else{this.logger.debug(`Flag ${s} not found in API response or cache, using default value`);let y={flag:s,value:this.getFlagDefault(s),reason:"Flag not found - using default value"};l.push(y)}}}return this.logger.debug(`Checked ${o.length} flags: used fresh API values for consistency (${i.length} were cache misses)`),l}catch(r){return this.logger.error(`Error checking flags ${o?o.join(", "):"all"}: ${r}`),o&&o.length>0?o.map(i=>({flag:i,value:this.getFlagDefault(i),reason:`Error occurred - using default value: ${r}`})):[]}}async close(){return this.eventBuffer.stop()}async identify(t){if(!this.offline)try{await this.enqueueEvent("identify",t)}catch(o){this.logger.error(`Error sending identify event: ${o}`)}}async track(t){if(!this.offline)try{await this.enqueueEvent("track",t)}catch(o){this.logger.error(`Error sending track event: ${o}`)}}setFlagDefault(t,o){this.flagDefaults[t]=o}setFlagDefaults(t){Object.assign(this.flagDefaults,t)}getFlagDefault(t){return this.flagDefaults[t]??!1}async enqueueEvent(t,o){try{this.eventBuffer.push({eventType:t,body:o,sentAt:new Date})}catch(r){this.logger.error(`Error enqueueing ${t} event: ${r}`)}}};var Bt=re(require("crypto")),aa="X-Schematic-Webhook-Signature",sa="X-Schematic-Webhook-Timestamp",Ne=class w extends Error{constructor(t){super(t),Object.setPrototypeOf(this,w.prototype),this.name="WebhookSignatureError"}static missingSignature(){return new w("Missing webhook signature header")}static missingTimestamp(){return new w("Missing webhook timestamp header")}static invalidSignature(){return new w("Invalid webhook signature")}};function Dt(w,t,o){let r=Buffer.isBuffer(w)?w:Buffer.from(w),i=Buffer.concat([r,Buffer.from(`+${t}`)]),m=Bt.createHmac("sha256",o);return m.update(i),m.digest()}function cd(w,t,o){return Dt(w,t,o).toString("hex")}function na(w,t,o,r){if(!t)throw Ne.missingSignature();if(!o)throw Ne.missingTimestamp();let i;try{i=Buffer.from(t,"hex")}catch(g){throw new Ne(`Invalid signature format: ${g?.message||"Unknown error"}`)}let m=Dt(w,o,r);if(i.length!==m.length||!Bt.timingSafeEqual(i,m))throw Ne.invalidSignature()}function ld(w,t,o,r={}){let i=w.headers,m=r.signatureHeader||aa,g=r.timestampHeader||sa,l=nd(i,m),s=nd(i,g),p;if(o!==void 0)p=o;else if("rawBody"in w&&w.rawBody)p=w.rawBody;else throw new Ne("Request body is not available. Provide the body as a parameter or ensure req.rawBody exists.");na(p,l,s,t)}function nd(w,t){let o=w[t]||w[t.toLowerCase()];return Array.isArray(o)?o[0]||"":o||""}0&&(module.exports={LocalCache,Schematic,SchematicClient,SchematicEnvironment,SchematicError,SchematicTimeoutError,WEBHOOK_SIGNATURE_HEADER,WEBHOOK_TIMESTAMP_HEADER,WebhookSignatureError,computeHexSignature,computeSignature,verifySignature,verifyWebhookSignature});