{
  "version": 3,
  "sources": ["../src/compat.ts", "../src/generated/model/accountWebhookDeliveryStatus.ts", "../src/generated/model/accountWebhookResponseEventsItem.ts", "../src/generated/model/accountWebhookWithSecretEventsItem.ts", "../src/generated/model/addEntityUserBodyRole.ts", "../src/generated/model/advanceInvoiceCalculationMode.ts", "../src/generated/model/advanceInvoiceItemClassification.ts", "../src/generated/model/advanceInvoiceItemType.ts", "../src/generated/model/advanceInvoiceTransactionType.ts", "../src/generated/model/calculatedItemType.ts", "../src/generated/model/calculateDocumentPreviewCalculationMode.ts", "../src/generated/model/calculateDocumentPreviewType.ts", "../src/generated/model/completeAdvanceInvoicePreviewCalculationMode.ts", "../src/generated/model/completeCreditNotePreviewCalculationMode.ts", "../src/generated/model/completeDeliveryNotePreviewCalculationMode.ts", "../src/generated/model/completeEstimatePreviewCalculationMode.ts", "../src/generated/model/completeEstimatePreviewTitleType.ts", "../src/generated/model/completeInvoicePreviewCalculationMode.ts", "../src/generated/model/createAccountWebhookBodyEventsItem.ts", "../src/generated/model/createAdvanceInvoiceCalculationMode.ts", "../src/generated/model/createCheckoutRequestBillingInterval.ts", "../src/generated/model/createCreditNoteCalculationMode.ts", "../src/generated/model/createDeliveryNoteCalculationMode.ts", "../src/generated/model/createDocumentItemClassification.ts", "../src/generated/model/createDocumentItemType.ts", "../src/generated/model/createDocumentPaymentType.ts", "../src/generated/model/createEntityBodyEnvironment.ts", "../src/generated/model/createEntityBodySettingsPdfTemplate.ts", "../src/generated/model/createEstimateCalculationMode.ts", "../src/generated/model/createEstimateTitleType.ts", "../src/generated/model/createIncomingPurchaseDocumentBodyTransactionType.ts", "../src/generated/model/createIncomingPurchaseDocumentBodyType.ts", "../src/generated/model/createIncomingPurchaseDocumentPaymentBodyType.ts", "../src/generated/model/createInvoiceCalculationMode.ts", "../src/generated/model/createItemBodyClassification.ts", "../src/generated/model/createMigrationJobRequestEnvironment.ts", "../src/generated/model/createMigrationJobResponseStatus.ts", "../src/generated/model/createOrderBodyPaymentStatus.ts", "../src/generated/model/createOrderBodySource.ts", "../src/generated/model/createOrderIntegrationBodySource.ts", "../src/generated/model/createPaymentBodyType.ts", "../src/generated/model/createPtAtcudSeriesBodyDocumentType.ts", "../src/generated/model/createRecurringInvoiceBodyFrequency.ts", "../src/generated/model/createWebhookBodyEventsItem.ts", "../src/generated/model/creationSource.ts", "../src/generated/model/creditNoteCalculationMode.ts", "../src/generated/model/creditNoteItemClassification.ts", "../src/generated/model/creditNoteItemType.ts", "../src/generated/model/creditNoteTransactionType.ts", "../src/generated/model/currentSubscriptionPaymentProvider.ts", "../src/generated/model/customCreateAdvanceInvoiceCalculationMode.ts", "../src/generated/model/customCreateCreditNoteCalculationMode.ts", "../src/generated/model/customCreateDeliveryNoteCalculationMode.ts", "../src/generated/model/customCreateEstimateCalculationMode.ts", "../src/generated/model/customCreateEstimateTitleType.ts", "../src/generated/model/customCreateIncomingPurchaseDocumentTransactionType.ts", "../src/generated/model/customCreateIncomingPurchaseDocumentType.ts", "../src/generated/model/customCreateInvoiceCalculationMode.ts", "../src/generated/model/customDocumentItemClassification.ts", "../src/generated/model/customDocumentItemType.ts", "../src/generated/model/deleteDocumentType.ts", "../src/generated/model/deliveryNoteCalculationMode.ts", "../src/generated/model/deliveryNoteItemClassification.ts", "../src/generated/model/deliveryNoteItemType.ts", "../src/generated/model/deliveryNoteTransactionType.ts", "../src/generated/model/documentCalculationCalculationMode.ts", "../src/generated/model/documentCalculationTransactionType.ts", "../src/generated/model/documentRelationRelatedDocumentTitleType.ts", "../src/generated/model/documentRelationRelatedDocumentType.ts", "../src/generated/model/documentRelationSourceType.ts", "../src/generated/model/documentRelationTargetType.ts", "../src/generated/model/documentVersionDocumentType.ts", "../src/generated/model/entityApiKeyEnvironment.ts", "../src/generated/model/entityBankAccountType.ts", "../src/generated/model/entityEnvironment.ts", "../src/generated/model/entityInvitationRole.ts", "../src/generated/model/entityInvitationStatus.ts", "../src/generated/model/entitySettingsPdfTemplate.ts", "../src/generated/model/entityUserRole.ts", "../src/generated/model/eslogExportByDateRangeTypesItem.ts", "../src/generated/model/estimateCalculationMode.ts", "../src/generated/model/estimateItemClassification.ts", "../src/generated/model/estimateItemType.ts", "../src/generated/model/estimateTitleType.ts", "../src/generated/model/estimateTransactionType.ts", "../src/generated/model/exportDocumentsFormat.ts", "../src/generated/model/exportDocumentsLanguage.ts", "../src/generated/model/exportDocumentsType.ts", "../src/generated/model/exportSalesPerItemFormat.ts", "../src/generated/model/exportSalesPerItemLanguage.ts", "../src/generated/model/finalizeDocumentType.ts", "../src/generated/model/fiscalizeDocumentType.ts", "../src/generated/model/fursPremiseSuccessResponseEnvironment.ts", "../src/generated/model/getActivePtAtcudSeriesDocumentType.ts", "../src/generated/model/getActivities200DataItemActorType.ts", "../src/generated/model/getEntitiesEnvironment.ts", "../src/generated/model/getEslogExportStatus200Status.ts", "../src/generated/model/getFilesCategory.ts", "../src/generated/model/getFinaSettings200CertificateStatus.ts", "../src/generated/model/getFinaSettings200NumberingSequence.ts", "../src/generated/model/getFursSettings200CertificateStatus.ts", "../src/generated/model/getFursSettings200NumberingStrategy.ts", "../src/generated/model/getIncomingPurchaseDocumentsIsDraft.ts", "../src/generated/model/getNextDocumentNumberType.ts", "../src/generated/model/getPdfExportStatus200Status.ts", "../src/generated/model/getShareableAdvanceInvoiceHtmlLanguage.ts", "../src/generated/model/getShareableAdvanceInvoiceHtmlLocale.ts", "../src/generated/model/getShareableAdvanceInvoicePdfLanguage.ts", "../src/generated/model/getShareableAdvanceInvoicePdfLocale.ts", "../src/generated/model/getShareableCreditNoteHtmlLanguage.ts", "../src/generated/model/getShareableCreditNoteHtmlLocale.ts", "../src/generated/model/getShareableCreditNotePdfLanguage.ts", "../src/generated/model/getShareableCreditNotePdfLocale.ts", "../src/generated/model/getShareableDeliveryNoteHtmlLanguage.ts", "../src/generated/model/getShareableDeliveryNoteHtmlLocale.ts", "../src/generated/model/getShareableDeliveryNotePdfLanguage.ts", "../src/generated/model/getShareableDeliveryNotePdfLocale.ts", "../src/generated/model/getShareableEstimateHtmlLanguage.ts", "../src/generated/model/getShareableEstimateHtmlLocale.ts", "../src/generated/model/getShareableEstimatePdfLanguage.ts", "../src/generated/model/getShareableEstimatePdfLocale.ts", "../src/generated/model/getShareableInvoiceHtmlLanguage.ts", "../src/generated/model/getShareableInvoiceHtmlLocale.ts", "../src/generated/model/getShareableInvoicePdfLanguage.ts", "../src/generated/model/getShareableInvoicePdfLocale.ts", "../src/generated/model/getSloveniaTaxProfile200AccountingExportsPreferredFormat.ts", "../src/generated/model/getSloveniaTaxProfile200BusinessForm.ts", "../src/generated/model/getSloveniaTaxProfile200BusinessFormSource.ts", "../src/generated/model/getSloveniaTaxProfile200IncomeTaxRegime.ts", "../src/generated/model/getSloveniaTaxProfile200InferredBusinessForm.ts", "../src/generated/model/getSloveniaTaxProfile200TaxResidency.ts", "../src/generated/model/getSloveniaTaxProfile200VatProfile.ts", "../src/generated/model/getSloveniaTaxProfile200YearlyReportingAccountingType.ts", "../src/generated/model/getSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis.ts", "../src/generated/model/incomingPurchaseDocumentItemClassification.ts", "../src/generated/model/incomingPurchaseDocumentSummaryClassification.ts", "../src/generated/model/incomingPurchaseDocumentType.ts", "../src/generated/model/invoiceCalculationMode.ts", "../src/generated/model/invoiceItemClassification.ts", "../src/generated/model/invoiceItemType.ts", "../src/generated/model/invoiceTransactionType.ts", "../src/generated/model/itemClassification.ts", "../src/generated/model/legacyAuthResponseOrganizationsItemUnsupportedItemCode.ts", "../src/generated/model/lineDiscountType.ts", "../src/generated/model/listPtAtcudSeriesDocumentType.ts", "../src/generated/model/migrationJobResponseStatus.ts", "../src/generated/model/orderBasePaymentStatus.ts", "../src/generated/model/orderBaseSource.ts", "../src/generated/model/orderBaseStatus.ts", "../src/generated/model/orderIntegrationBaseAutoProcessOn.ts", "../src/generated/model/orderIntegrationBaseSource.ts", "../src/generated/model/orderItemKind.ts", "../src/generated/model/partialAdvanceInvoicePreviewCalculationMode.ts", "../src/generated/model/partialAdvanceInvoicePreviewItemsItemDiscountsItemType.ts", "../src/generated/model/partialAdvanceInvoicePreviewItemsItemType.ts", "../src/generated/model/partialCreditNotePreviewCalculationMode.ts", "../src/generated/model/partialCreditNotePreviewItemsItemDiscountsItemType.ts", "../src/generated/model/partialCreditNotePreviewItemsItemType.ts", "../src/generated/model/partialDeliveryNotePreviewCalculationMode.ts", "../src/generated/model/partialDeliveryNotePreviewItemsItemDiscountsItemType.ts", "../src/generated/model/partialDeliveryNotePreviewItemsItemType.ts", "../src/generated/model/partialEstimatePreviewCalculationMode.ts", "../src/generated/model/partialEstimatePreviewItemsItemDiscountsItemType.ts", "../src/generated/model/partialEstimatePreviewItemsItemType.ts", "../src/generated/model/partialEstimatePreviewTitleType.ts", "../src/generated/model/partialInvoicePreviewCalculationMode.ts", "../src/generated/model/partialInvoicePreviewItemsItemDiscountsItemType.ts", "../src/generated/model/partialInvoicePreviewItemsItemType.ts", "../src/generated/model/patchEntityBodySettingsPdfTemplate.ts", "../src/generated/model/patchMeBodyLocale.ts", "../src/generated/model/paymentType.ts", "../src/generated/model/pdfExportByDateRangeLanguage.ts", "../src/generated/model/pdfExportByDateRangeLocale.ts", "../src/generated/model/pdfExportByDateRangeTypesItem.ts", "../src/generated/model/pdfExportByDocumentIdsLanguage.ts", "../src/generated/model/pdfExportByDocumentIdsLocale.ts", "../src/generated/model/permanentDeleteDocumentType.ts", "../src/generated/model/ptAtcudSeriesDocumentType.ts", "../src/generated/model/recurringInvoiceBaseFrequency.ts", "../src/generated/model/recurringInvoiceBaseStatus.ts", "../src/generated/model/registerFursMovablePremiseBodyMovablePremisePremiseType.ts", "../src/generated/model/renderAdvanceInvoicePreviewEpcQrEnabled.ts", "../src/generated/model/renderAdvanceInvoicePreviewPartial.ts", "../src/generated/model/renderAdvanceInvoicePreviewTemplate.ts", "../src/generated/model/renderAdvanceInvoicePreviewUpnQrDisplayMode.ts", "../src/generated/model/renderAdvanceInvoicePreviewUpnQrEnabled.ts", "../src/generated/model/renderCreditNotePreviewEpcQrEnabled.ts", "../src/generated/model/renderCreditNotePreviewPartial.ts", "../src/generated/model/renderCreditNotePreviewTemplate.ts", "../src/generated/model/renderCreditNotePreviewUpnQrDisplayMode.ts", "../src/generated/model/renderCreditNotePreviewUpnQrEnabled.ts", "../src/generated/model/renderDeliveryNotePreviewEpcQrEnabled.ts", "../src/generated/model/renderDeliveryNotePreviewPartial.ts", "../src/generated/model/renderDeliveryNotePreviewTemplate.ts", "../src/generated/model/renderDeliveryNotePreviewUpnQrDisplayMode.ts", "../src/generated/model/renderDeliveryNotePreviewUpnQrEnabled.ts", "../src/generated/model/renderDocumentHtmlTemplate.ts", "../src/generated/model/renderDocumentPdfTemplate.ts", "../src/generated/model/renderEstimatePreviewEpcQrEnabled.ts", "../src/generated/model/renderEstimatePreviewPartial.ts", "../src/generated/model/renderEstimatePreviewTemplate.ts", "../src/generated/model/renderEstimatePreviewUpnQrDisplayMode.ts", "../src/generated/model/renderEstimatePreviewUpnQrEnabled.ts", "../src/generated/model/renderInvoicePreviewEpcQrEnabled.ts", "../src/generated/model/renderInvoicePreviewPartial.ts", "../src/generated/model/renderInvoicePreviewTemplate.ts", "../src/generated/model/renderInvoicePreviewUpnQrDisplayMode.ts", "../src/generated/model/renderInvoicePreviewUpnQrEnabled.ts", "../src/generated/model/restoreDocumentType.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200FilingKind.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200IssueDetailsItemAffectedDocumentsItemType.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200IssueDetailsItemOfficialSourcesItemIssuer.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200IssueDetailsItemSeverity.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileAccountingExportsPreferredFormat.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileBusinessForm.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileBusinessFormSource.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileIncomeTaxRegime.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileInferredBusinessForm.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileTaxResidency.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileVatProfile.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingAccountingType.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingNormiranecInsuranceBasis.ts", "../src/generated/model/reviewSloveniaYearlyNormiraniReport200WarningsItemSeverity.ts", "../src/generated/model/sendDocument200Status.ts", "../src/generated/model/sendEmail200Status.ts", "../src/generated/model/sendEmailBodyLanguage.ts", "../src/generated/model/sendEmailBodyLocale.ts", "../src/generated/model/startEslogExport202Status.ts", "../src/generated/model/startPdfExport202Status.ts", "../src/generated/model/statsQueryRequestMetricsItemType.ts", "../src/generated/model/statsQueryRequestOrderByItemDirection.ts", "../src/generated/model/statsQueryRequestTable.ts", "../src/generated/model/stripeAppEntityUpdateSettingsBodyAutoInvoiceEventsItem.ts", "../src/generated/model/stripeAppUpdateSettingsBodyAutoInvoiceEventsItem.ts", "../src/generated/model/transactionTypeCheckResponseTransactionType.ts", "../src/generated/model/updateAccountWebhookBodyEventsItem.ts", "../src/generated/model/updateEntityUserRoleBodyRole.ts", "../src/generated/model/updateEstimateTitleType.ts", "../src/generated/model/updateFinaSettings200CertificateStatus.ts", "../src/generated/model/updateFinaSettings200NumberingSequence.ts", "../src/generated/model/updateFinaSettingsBodyNumberingSequence.ts", "../src/generated/model/updateFursSettings200CertificateStatus.ts", "../src/generated/model/updateFursSettings200NumberingStrategy.ts", "../src/generated/model/updateFursSettingsBodyNumberingStrategy.ts", "../src/generated/model/updateIncomingPurchaseDocumentBodyTransactionType.ts", "../src/generated/model/updateIncomingPurchaseDocumentBodyType.ts", "../src/generated/model/updateItemBodyClassification.ts", "../src/generated/model/updateOrderBodyPaymentStatus.ts", "../src/generated/model/updateOrderIntegrationBodyAutoProcessOn.ts", "../src/generated/model/updatePaymentBodyType.ts", "../src/generated/model/updateRecurringInvoiceBodyFrequency.ts", "../src/generated/model/updateSloveniaTaxProfile200AccountingExportsPreferredFormat.ts", "../src/generated/model/updateSloveniaTaxProfile200BusinessForm.ts", "../src/generated/model/updateSloveniaTaxProfile200BusinessFormSource.ts", "../src/generated/model/updateSloveniaTaxProfile200IncomeTaxRegime.ts", "../src/generated/model/updateSloveniaTaxProfile200InferredBusinessForm.ts", "../src/generated/model/updateSloveniaTaxProfile200TaxResidency.ts", "../src/generated/model/updateSloveniaTaxProfile200VatProfile.ts", "../src/generated/model/updateSloveniaTaxProfile200YearlyReportingAccountingType.ts", "../src/generated/model/updateSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis.ts", "../src/generated/model/updateSloveniaTaxProfileBodyAccountingExportsPreferredFormat.ts", "../src/generated/model/updateSloveniaTaxProfileBodyBusinessForm.ts", "../src/generated/model/updateSloveniaTaxProfileBodyIncomeTaxRegime.ts", "../src/generated/model/updateSloveniaTaxProfileBodyTaxResidency.ts", "../src/generated/model/updateSloveniaTaxProfileBodyVatProfile.ts", "../src/generated/model/updateSloveniaTaxProfileBodyYearlyReportingAccountingType.ts", "../src/generated/model/updateSloveniaTaxProfileBodyYearlyReportingNormiranecInsuranceBasis.ts", "../src/generated/model/updateWebhookBodyEventsItem.ts", "../src/generated/model/uploadFileBodyCategory.ts", "../src/generated/model/webhookDeliveryStatus.ts", "../src/generated/model/webhookResponseEventsItem.ts", "../src/generated/model/webhookWithSecretEventsItem.ts", "../src/client-headers.ts", "../src/mutator/custom-fetch.ts", "../src/generated/account-webhooks/account-webhooks.ts", "../src/sdk/utils.ts", "../src/sdk/account-webhooks.ts", "../src/generated/activities/activities.ts", "../src/sdk/activities.ts", "../src/generated/advance-invoices/advance-invoices.ts", "../src/sdk/advance-invoices.ts", "../src/generated/company-registry/company-registry.ts", "../src/sdk/company-registry.ts", "../src/generated/credit-notes/credit-notes.ts", "../src/sdk/credit-notes.ts", "../src/generated/customers/customers.ts", "../src/sdk/customers.ts", "../src/generated/delivery-notes/delivery-notes.ts", "../src/sdk/delivery-notes.ts", "../src/generated/documents/documents.ts", "../src/sdk/documents.ts", "../src/generated/e-invoicing/e-invoicing.ts", "../src/sdk/e-invoicing.ts", "../src/generated/email/email.ts", "../src/sdk/email.ts", "../src/generated/entities/entities.ts", "../src/sdk/entities.ts", "../src/generated/entity-api-keys/entity-api-keys.ts", "../src/sdk/entity-api-keys.ts", "../src/generated/entity-invitations/entity-invitations.ts", "../src/sdk/entity-invitations.ts", "../src/generated/entity-stats/entity-stats.ts", "../src/sdk/entity-stats.ts", "../src/generated/entity-users/entity-users.ts", "../src/sdk/entity-users.ts", "../src/generated/estimates/estimates.ts", "../src/sdk/estimates.ts", "../src/generated/exports/exports.ts", "../src/sdk/exports.ts", "../src/generated/files/files.ts", "../src/sdk/files.ts", "../src/generated/fina-certificate/fina-certificate.ts", "../src/sdk/fina-certificate.ts", "../src/generated/fina-devices/fina-devices.ts", "../src/sdk/fina-devices.ts", "../src/generated/fina-premises/fina-premises.ts", "../src/sdk/fina-premises.ts", "../src/generated/fina-settings/fina-settings.ts", "../src/sdk/fina-settings.ts", "../src/generated/furs-certificate/furs-certificate.ts", "../src/sdk/furs-certificate.ts", "../src/generated/furs-devices/furs-devices.ts", "../src/sdk/furs-devices.ts", "../src/generated/furs-internal-act/furs-internal-act.ts", "../src/sdk/furs-internal-act.ts", "../src/generated/furs-premises/furs-premises.ts", "../src/sdk/furs-premises.ts", "../src/generated/furs-settings/furs-settings.ts", "../src/sdk/furs-settings.ts", "../src/generated/health/health.ts", "../src/sdk/health.ts", "../src/generated/incoming-purchase-documents/incoming-purchase-documents.ts", "../src/sdk/incoming-purchase-documents.ts", "../src/sdk/types.ts", "../src/sdk/init.ts", "../src/generated/invoices/invoices.ts", "../src/sdk/download.ts", "../src/sdk/invoices.ts", "../src/generated/items/items.ts", "../src/sdk/items.ts", "../src/generated/legacy-migration/legacy-migration.ts", "../src/sdk/legacy-migration.ts", "../src/generated/locale/locale.ts", "../src/sdk/locale.ts", "../src/generated/order-integrations/order-integrations.ts", "../src/sdk/order-integrations.ts", "../src/generated/orders/orders.ts", "../src/sdk/orders.ts", "../src/generated/payments/payments.ts", "../src/sdk/payments.ts", "../src/generated/pt-atcud-series/pt-atcud-series.ts", "../src/sdk/pt-atcud-series.ts", "../src/generated/pt-saf-t/pt-saf-t.ts", "../src/sdk/pt-saf-t.ts", "../src/generated/recurring-invoices/recurring-invoices.ts", "../src/sdk/recurring-invoices.ts", "../src/generated/stripe-app/stripe-app.ts", "../src/sdk/stripe-app.ts", "../src/generated/suppliers/suppliers.ts", "../src/sdk/suppliers.ts", "../src/generated/tax-reports/tax-reports.ts", "../src/sdk/tax-reports.ts", "../src/generated/taxes/taxes.ts", "../src/sdk/taxes.ts", "../src/generated/transaction-type/transaction-type.ts", "../src/sdk/transaction-type.ts", "../src/generated/upload/upload.ts", "../src/sdk/upload.ts", "../src/generated/users/users.ts", "../src/sdk/users.ts", "../src/generated/vies/vies.ts", "../src/sdk/vies.ts", "../src/generated/webhooks/webhooks.ts", "../src/sdk/webhooks.ts", "../src/generated/white-label-subscriptions/white-label-subscriptions.ts", "../src/sdk/white-label-subscriptions.ts", "../src/generated/white-labels/white-labels.ts", "../src/sdk/white-labels.ts"],
  "sourcesContent": [
    "/**\n * Compatibility layer for SDK type aliases.\n *\n * This file provides backward-compatible type aliases for code migrating\n * from the old SDK to the new Orval-generated SDK.\n *\n * @deprecated All exports from this file are deprecated. Import directly from the SDK instead.\n */\n\nimport type {\n  AdvanceInvoice,\n  AdvanceInvoiceList,\n  CreateAdvanceInvoice,\n  CreateCreditNote,\n  CreateCustomerBody,\n  CreateDeliveryNote,\n  CreateEntityBody,\n  CreateEstimate,\n  CreateInvoice,\n  CreateItemBody,\n  CreatePaymentBody,\n  CreateTaxBody,\n  CreditNote,\n  CreditNoteList,\n  DeliveryNote,\n  DeliveryNoteList,\n  Estimate,\n  EstimateList,\n  GetActivities200,\n  GetActivities200DataItem,\n  GetCustomers200,\n  GetEntities200,\n  GetFursSettings200,\n  GetItems200,\n  GetPayments200,\n  GetTaxes200,\n  Invoice,\n  InvoiceList,\n  PaginationMetadata,\n  PatchEntityBody,\n} from \"./generated/model\";\n\n// ============================================================================\n// RESOURCE TYPE ALIASES\n// ============================================================================\n\n/** @deprecated Use `GetActivities200DataItem` from `@spaceinvoices/js-sdk` */\nexport type Activity = GetActivities200DataItem;\n\n/** @deprecated Use `AdvanceInvoice` from `@spaceinvoices/js-sdk` */\nexport type AdvanceInvoiceWithItems = AdvanceInvoice;\n\n/** @deprecated Use `CreditNote` from `@spaceinvoices/js-sdk` */\nexport type CreditNoteWithItems = CreditNote;\n\n/** @deprecated Use `DeliveryNote` from `@spaceinvoices/js-sdk` */\nexport type DeliveryNoteWithItems = DeliveryNote;\n\n/** @deprecated Use `Estimate` from `@spaceinvoices/js-sdk` */\nexport type EstimateWithItems = Estimate;\n\n/** @deprecated Use `Invoice` from `@spaceinvoices/js-sdk` */\nexport type InvoiceWithItems = Invoice;\n\n// ============================================================================\n// CREATE REQUEST TYPE ALIASES\n// ============================================================================\n\n/** @deprecated Use `CreateAdvanceInvoice` from `@spaceinvoices/js-sdk` */\nexport type CreateAdvanceInvoiceRequest = CreateAdvanceInvoice;\n\n/** @deprecated Use `CreateCreditNote` from `@spaceinvoices/js-sdk` */\nexport type CreateCreditNoteRequest = CreateCreditNote;\n\n/** @deprecated Use `CreateDeliveryNote` from `@spaceinvoices/js-sdk` */\nexport type CreateDeliveryNoteRequest = CreateDeliveryNote;\n\n/** @deprecated Use `CreateCustomerBody` from `@spaceinvoices/js-sdk` */\nexport type CreateCustomerRequest = CreateCustomerBody;\n\n/** @deprecated Use `CreateEntityBody` from `@spaceinvoices/js-sdk` */\nexport type CreateEntityRequest = CreateEntityBody;\n\n/** @deprecated Use `CreateEstimate` from `@spaceinvoices/js-sdk` */\nexport type CreateEstimateRequest = CreateEstimate;\n\n/** @deprecated Use `CreateInvoice` from `@spaceinvoices/js-sdk` */\nexport type CreateInvoiceRequest = CreateInvoice;\n\n/** @deprecated Use `CreateItemBody` from `@spaceinvoices/js-sdk` */\nexport type CreateItemRequest = CreateItemBody;\n\n/** @deprecated Use `CreatePaymentBody` from `@spaceinvoices/js-sdk` */\nexport type CreatePaymentRequest = CreatePaymentBody;\n\n/** @deprecated Use `CreateTaxBody` from `@spaceinvoices/js-sdk` */\nexport type CreateTaxRequest = CreateTaxBody;\n\n// ============================================================================\n// PATCH REQUEST TYPE ALIASES\n// ============================================================================\n\n/** @deprecated Use `PatchEntityBody` from `@spaceinvoices/js-sdk` */\nexport type PatchEntityRequest = PatchEntityBody;\n\n// ============================================================================\n// RESPONSE TYPE ALIASES\n// ============================================================================\n\n/** @deprecated Use `GetActivities200` from `@spaceinvoices/js-sdk` */\nexport type GetActivitiesResponse = GetActivities200;\n\n/** @deprecated Use `AdvanceInvoiceList` from `@spaceinvoices/js-sdk` */\nexport type GetAdvanceInvoicesResponse = AdvanceInvoiceList;\n\n/** @deprecated Use `CreditNoteList` from `@spaceinvoices/js-sdk` */\nexport type GetCreditNotesResponse = CreditNoteList;\n\n/** @deprecated Use `DeliveryNoteList` from `@spaceinvoices/js-sdk` */\nexport type GetDeliveryNotesResponse = DeliveryNoteList;\n\n/** @deprecated Use `GetCustomers200` from `@spaceinvoices/js-sdk` */\nexport type GetCustomersResponse = GetCustomers200;\n\n/** @deprecated Use `GetCustomers200` from `@spaceinvoices/js-sdk` */\nexport type GetCustomers200Response = GetCustomers200;\n\n/** @deprecated Use `GetEntities200` from `@spaceinvoices/js-sdk` */\nexport type GetEntitiesResponse = GetEntities200;\n\n/** @deprecated Use `EstimateList` from `@spaceinvoices/js-sdk` */\nexport type GetEstimatesResponse = EstimateList;\n\n/** @deprecated Use `EstimateList` from `@spaceinvoices/js-sdk` */\nexport type GetEstimates200Response = EstimateList;\n\n/** @deprecated Use `GetFursSettings200` from `@spaceinvoices/js-sdk` */\nexport type GetFursSettingsResponse = GetFursSettings200;\n\n/** @deprecated Use `GetFursSettings200` from `@spaceinvoices/js-sdk` */\nexport type GetFursSettings200Response = GetFursSettings200;\n\n/** @deprecated Use `InvoiceList` from `@spaceinvoices/js-sdk` */\nexport type GetInvoicesResponse = InvoiceList;\n\n/** @deprecated Use `GetItems200` from `@spaceinvoices/js-sdk` */\nexport type GetItemsResponse = GetItems200;\n\n/** @deprecated Use `GetItems200` from `@spaceinvoices/js-sdk` */\nexport type GetItems200Response = GetItems200;\n\n/** @deprecated Use `GetPayments200` from `@spaceinvoices/js-sdk` */\nexport type GetPaymentsResponse = GetPayments200;\n\n/** @deprecated Use `GetTaxes200` from `@spaceinvoices/js-sdk` */\nexport type GetTaxesResponse = GetTaxes200;\n\n/** @deprecated Use `GetTaxes200` from `@spaceinvoices/js-sdk` */\nexport type GetTaxes200Response = GetTaxes200;\n\n// ============================================================================\n// GENERIC PAGINATED RESPONSE TYPE\n// ============================================================================\n\n/**\n * @deprecated Use specific list types (e.g. `InvoiceList`, `EstimateList`) instead.\n */\nexport interface PaginatedResponse<T> {\n  data: T[];\n  pagination: PaginationMetadata;\n}\n\n// ============================================================================\n// CONFIGURATION CLASS\n// ============================================================================\n\n/**\n * @deprecated Use `new SpaceInvoices({ accessToken, basePath })` instead.\n */\nexport class Configuration {\n  basePath?: string;\n  accessToken?: string;\n\n  constructor(config?: { basePath?: string; accessToken?: string }) {\n    this.basePath = config?.basePath;\n    this.accessToken = config?.accessToken;\n  }\n}\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AccountWebhookDeliveryStatus = typeof AccountWebhookDeliveryStatus[keyof typeof AccountWebhookDeliveryStatus];\n\n\nexport const AccountWebhookDeliveryStatus = {\n  pending: 'pending',\n  success: 'success',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AccountWebhookResponseEventsItem = typeof AccountWebhookResponseEventsItem[keyof typeof AccountWebhookResponseEventsItem];\n\n\nexport const AccountWebhookResponseEventsItem = {\n  white_label_subscriptionsubscribed: 'white_label_subscription.subscribed',\n  white_label_subscriptionupgraded: 'white_label_subscription.upgraded',\n  white_label_subscriptiondowngrade_scheduled: 'white_label_subscription.downgrade_scheduled',\n  white_label_subscriptiondowngraded: 'white_label_subscription.downgraded',\n  white_label_subscriptioncancellation_scheduled: 'white_label_subscription.cancellation_scheduled',\n  white_label_subscriptioncancelled: 'white_label_subscription.cancelled',\n  white_label_subscriptionrenewed: 'white_label_subscription.renewed',\n  white_label_subscriptionexpired: 'white_label_subscription.expired',\n  white_label_subscriptionpayment_failed: 'white_label_subscription.payment_failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type AccountWebhookWithSecretEventsItem = typeof AccountWebhookWithSecretEventsItem[keyof typeof AccountWebhookWithSecretEventsItem];\n\n\nexport const AccountWebhookWithSecretEventsItem = {\n  white_label_subscriptionsubscribed: 'white_label_subscription.subscribed',\n  white_label_subscriptionupgraded: 'white_label_subscription.upgraded',\n  white_label_subscriptiondowngrade_scheduled: 'white_label_subscription.downgrade_scheduled',\n  white_label_subscriptiondowngraded: 'white_label_subscription.downgraded',\n  white_label_subscriptioncancellation_scheduled: 'white_label_subscription.cancellation_scheduled',\n  white_label_subscriptioncancelled: 'white_label_subscription.cancelled',\n  white_label_subscriptionrenewed: 'white_label_subscription.renewed',\n  white_label_subscriptionexpired: 'white_label_subscription.expired',\n  white_label_subscriptionpayment_failed: 'white_label_subscription.payment_failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Role to assign to the user\n */\nexport type AddEntityUserBodyRole = typeof AddEntityUserBodyRole[keyof typeof AddEntityUserBodyRole];\n\n\nexport const AddEntityUserBodyRole = {\n  viewer: 'viewer',\n  editor: 'editor',\n  admin: 'admin',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for this document. Stored on the document so recalculation and rendering remain stable even if entity defaults change later.\n */\nexport type AdvanceInvoiceCalculationMode = typeof AdvanceInvoiceCalculationMode[keyof typeof AdvanceInvoiceCalculationMode];\n\n\nexport const AdvanceInvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type AdvanceInvoiceItemClassification = typeof AdvanceInvoiceItemClassification[keyof typeof AdvanceInvoiceItemClassification] | null;\n\n\nexport const AdvanceInvoiceItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. null = regular line item, 'separator' = visual section header.\n * @nullable\n */\nexport type AdvanceInvoiceItemType = typeof AdvanceInvoiceItemType[keyof typeof AdvanceInvoiceItemType] | null;\n\n\nexport const AdvanceInvoiceItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes (domestic, intra_eu_b2b, intra_eu_b2c, export). Always determined based on issuer/customer countries.\n * @nullable\n */\nexport type AdvanceInvoiceTransactionType = typeof AdvanceInvoiceTransactionType[keyof typeof AdvanceInvoiceTransactionType] | null;\n\n\nexport const AdvanceInvoiceTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type CalculatedItemType = typeof CalculatedItemType[keyof typeof CalculatedItemType] | null;\n\n\nexport const CalculatedItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CalculateDocumentPreviewCalculationMode = typeof CalculateDocumentPreviewCalculationMode[keyof typeof CalculateDocumentPreviewCalculationMode] | null;\n\n\nexport const CalculateDocumentPreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CalculateDocumentPreviewType = typeof CalculateDocumentPreviewType[keyof typeof CalculateDocumentPreviewType];\n\n\nexport const CalculateDocumentPreviewType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CompleteAdvanceInvoicePreviewCalculationMode = typeof CompleteAdvanceInvoicePreviewCalculationMode[keyof typeof CompleteAdvanceInvoicePreviewCalculationMode] | null;\n\n\nexport const CompleteAdvanceInvoicePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CompleteCreditNotePreviewCalculationMode = typeof CompleteCreditNotePreviewCalculationMode[keyof typeof CompleteCreditNotePreviewCalculationMode] | null;\n\n\nexport const CompleteCreditNotePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CompleteDeliveryNotePreviewCalculationMode = typeof CompleteDeliveryNotePreviewCalculationMode[keyof typeof CompleteDeliveryNotePreviewCalculationMode] | null;\n\n\nexport const CompleteDeliveryNotePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CompleteEstimatePreviewCalculationMode = typeof CompleteEstimatePreviewCalculationMode[keyof typeof CompleteEstimatePreviewCalculationMode] | null;\n\n\nexport const CompleteEstimatePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Display name variant for the document. 'estimate' renders as 'Estimate' (Ponudba/Ponuda), 'proforma_invoice' renders as 'Proforma invoice' (Predračun).\n * @nullable\n */\nexport type CompleteEstimatePreviewTitleType = typeof CompleteEstimatePreviewTitleType[keyof typeof CompleteEstimatePreviewTitleType] | null;\n\n\nexport const CompleteEstimatePreviewTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CompleteInvoicePreviewCalculationMode = typeof CompleteInvoicePreviewCalculationMode[keyof typeof CompleteInvoicePreviewCalculationMode] | null;\n\n\nexport const CompleteInvoicePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateAccountWebhookBodyEventsItem = typeof CreateAccountWebhookBodyEventsItem[keyof typeof CreateAccountWebhookBodyEventsItem];\n\n\nexport const CreateAccountWebhookBodyEventsItem = {\n  white_label_subscriptionsubscribed: 'white_label_subscription.subscribed',\n  white_label_subscriptionupgraded: 'white_label_subscription.upgraded',\n  white_label_subscriptiondowngrade_scheduled: 'white_label_subscription.downgrade_scheduled',\n  white_label_subscriptiondowngraded: 'white_label_subscription.downgraded',\n  white_label_subscriptioncancellation_scheduled: 'white_label_subscription.cancellation_scheduled',\n  white_label_subscriptioncancelled: 'white_label_subscription.cancelled',\n  white_label_subscriptionrenewed: 'white_label_subscription.renewed',\n  white_label_subscriptionexpired: 'white_label_subscription.expired',\n  white_label_subscriptionpayment_failed: 'white_label_subscription.payment_failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CreateAdvanceInvoiceCalculationMode = typeof CreateAdvanceInvoiceCalculationMode[keyof typeof CreateAdvanceInvoiceCalculationMode] | null;\n\n\nexport const CreateAdvanceInvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Billing interval\n */\nexport type CreateCheckoutRequestBillingInterval = typeof CreateCheckoutRequestBillingInterval[keyof typeof CreateCheckoutRequestBillingInterval];\n\n\nexport const CreateCheckoutRequestBillingInterval = {\n  monthly: 'monthly',\n  yearly: 'yearly',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CreateCreditNoteCalculationMode = typeof CreateCreditNoteCalculationMode[keyof typeof CreateCreditNoteCalculationMode] | null;\n\n\nexport const CreateCreditNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CreateDeliveryNoteCalculationMode = typeof CreateDeliveryNoteCalculationMode[keyof typeof CreateDeliveryNoteCalculationMode] | null;\n\n\nexport const CreateDeliveryNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type CreateDocumentItemClassification = typeof CreateDocumentItemClassification[keyof typeof CreateDocumentItemClassification] | null;\n\n\nexport const CreateDocumentItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. Omit or null for regular line item, 'separator' for a visual section header.\nSeparator items only use name and description — all financial fields are ignored.\n * @nullable\n */\nexport type CreateDocumentItemType = typeof CreateDocumentItemType[keyof typeof CreateDocumentItemType] | null;\n\n\nexport const CreateDocumentItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Payment type/method\n */\nexport type CreateDocumentPaymentType = typeof CreateDocumentPaymentType[keyof typeof CreateDocumentPaymentType];\n\n\nexport const CreateDocumentPaymentType = {\n  cash: 'cash',\n  bank_transfer: 'bank_transfer',\n  card: 'card',\n  check: 'check',\n  paypal: 'paypal',\n  coupon: 'coupon',\n  other: 'other',\n  credit_note: 'credit_note',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateEntityBodyEnvironment = typeof CreateEntityBodyEnvironment[keyof typeof CreateEntityBodyEnvironment];\n\n\nexport const CreateEntityBodyEnvironment = {\n  live: 'live',\n  sandbox: 'sandbox',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Default PDF template for document rendering. Defaults to 'modern' if not set.\n * @nullable\n */\nexport type CreateEntityBodySettingsPdfTemplate = typeof CreateEntityBodySettingsPdfTemplate[keyof typeof CreateEntityBodySettingsPdfTemplate] | null;\n\n\nexport const CreateEntityBodySettingsPdfTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n  timeless_modern_full_data: 'timeless_modern_full_data',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CreateEstimateCalculationMode = typeof CreateEstimateCalculationMode[keyof typeof CreateEstimateCalculationMode] | null;\n\n\nexport const CreateEstimateCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Display name variant for the document. 'estimate' renders as 'Estimate' (Ponudba/Ponuda), 'proforma_invoice' renders as 'Proforma invoice' (Predračun).\n * @nullable\n */\nexport type CreateEstimateTitleType = typeof CreateEstimateTitleType[keyof typeof CreateEstimateTitleType] | null;\n\n\nexport const CreateEstimateTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type CreateIncomingPurchaseDocumentBodyTransactionType = typeof CreateIncomingPurchaseDocumentBodyTransactionType[keyof typeof CreateIncomingPurchaseDocumentBodyTransactionType] | null;\n\n\nexport const CreateIncomingPurchaseDocumentBodyTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateIncomingPurchaseDocumentBodyType = typeof CreateIncomingPurchaseDocumentBodyType[keyof typeof CreateIncomingPurchaseDocumentBodyType];\n\n\nexport const CreateIncomingPurchaseDocumentBodyType = {\n  invoice: 'invoice',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Payment type/method\n */\nexport type CreateIncomingPurchaseDocumentPaymentBodyType = typeof CreateIncomingPurchaseDocumentPaymentBodyType[keyof typeof CreateIncomingPurchaseDocumentPaymentBodyType];\n\n\nexport const CreateIncomingPurchaseDocumentPaymentBodyType = {\n  cash: 'cash',\n  bank_transfer: 'bank_transfer',\n  card: 'card',\n  check: 'check',\n  paypal: 'paypal',\n  coupon: 'coupon',\n  other: 'other',\n  credit_note: 'credit_note',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CreateInvoiceCalculationMode = typeof CreateInvoiceCalculationMode[keyof typeof CreateInvoiceCalculationMode] | null;\n\n\nexport const CreateInvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T item/service typing.\n * @nullable\n */\nexport type CreateItemBodyClassification = typeof CreateItemBodyClassification[keyof typeof CreateItemBodyClassification] | null;\n\n\nexport const CreateItemBodyClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Target environment\n */\nexport type CreateMigrationJobRequestEnvironment = typeof CreateMigrationJobRequestEnvironment[keyof typeof CreateMigrationJobRequestEnvironment];\n\n\nexport const CreateMigrationJobRequestEnvironment = {\n  live: 'live',\n  sandbox: 'sandbox',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Migration job status\n */\nexport type CreateMigrationJobResponseStatus = typeof CreateMigrationJobResponseStatus[keyof typeof CreateMigrationJobResponseStatus];\n\n\nexport const CreateMigrationJobResponseStatus = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order payment status\n */\nexport type CreateOrderBodyPaymentStatus = typeof CreateOrderBodyPaymentStatus[keyof typeof CreateOrderBodyPaymentStatus];\n\n\nexport const CreateOrderBodyPaymentStatus = {\n  unpaid: 'unpaid',\n  paid: 'paid',\n  partially_paid: 'partially_paid',\n  refunded: 'refunded',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order source platform\n */\nexport type CreateOrderBodySource = typeof CreateOrderBodySource[keyof typeof CreateOrderBodySource];\n\n\nexport const CreateOrderBodySource = {\n  shopify: 'shopify',\n  woocommerce: 'woocommerce',\n  manual: 'manual',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateOrderIntegrationBodySource = typeof CreateOrderIntegrationBodySource[keyof typeof CreateOrderIntegrationBodySource];\n\n\nexport const CreateOrderIntegrationBodySource = {\n  shopify: 'shopify',\n  woocommerce: 'woocommerce',\n  manual: 'manual',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Payment type/method\n */\nexport type CreatePaymentBodyType = typeof CreatePaymentBodyType[keyof typeof CreatePaymentBodyType];\n\n\nexport const CreatePaymentBodyType = {\n  cash: 'cash',\n  bank_transfer: 'bank_transfer',\n  card: 'card',\n  check: 'check',\n  paypal: 'paypal',\n  coupon: 'coupon',\n  other: 'other',\n  credit_note: 'credit_note',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Portugal fiscal document type tracked for ATCUD series numbering.\n */\nexport type CreatePtAtcudSeriesBodyDocumentType = typeof CreatePtAtcudSeriesBodyDocumentType[keyof typeof CreatePtAtcudSeriesBodyDocumentType];\n\n\nexport const CreatePtAtcudSeriesBodyDocumentType = {\n  invoice: 'invoice',\n  advance_invoice: 'advance_invoice',\n  credit_note: 'credit_note',\n  estimate: 'estimate',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateRecurringInvoiceBodyFrequency = typeof CreateRecurringInvoiceBodyFrequency[keyof typeof CreateRecurringInvoiceBodyFrequency];\n\n\nexport const CreateRecurringInvoiceBodyFrequency = {\n  daily: 'daily',\n  weekly: 'weekly',\n  monthly: 'monthly',\n  yearly: 'yearly',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CreateWebhookBodyEventsItem = typeof CreateWebhookBodyEventsItem[keyof typeof CreateWebhookBodyEventsItem];\n\n\nexport const CreateWebhookBodyEventsItem = {\n  invoicecreated: 'invoice.created',\n  invoiceupdated: 'invoice.updated',\n  invoicesent: 'invoice.sent',\n  invoicepaid: 'invoice.paid',\n  invoiceoverdue: 'invoice.overdue',\n  invoicecancelled: 'invoice.cancelled',\n  invoicedeleted: 'invoice.deleted',\n  invoicerestored: 'invoice.restored',\n  invoicevoided: 'invoice.voided',\n  invoicefinalized: 'invoice.finalized',\n  customercreated: 'customer.created',\n  customerupdated: 'customer.updated',\n  customerdeleted: 'customer.deleted',\n  customerrestored: 'customer.restored',\n  customerpermanently_deleted: 'customer.permanently_deleted',\n  paymentreceived: 'payment.received',\n  paymentfailed: 'payment.failed',\n  paymentdeleted: 'payment.deleted',\n  paymentrestored: 'payment.restored',\n  paymentpermanently_deleted: 'payment.permanently_deleted',\n  estimatecreated: 'estimate.created',\n  estimatesent: 'estimate.sent',\n  estimateaccepted: 'estimate.accepted',\n  estimaterejected: 'estimate.rejected',\n  estimatedeleted: 'estimate.deleted',\n  estimaterestored: 'estimate.restored',\n  credit_notecreated: 'credit_note.created',\n  credit_noteissued: 'credit_note.issued',\n  credit_notevoided: 'credit_note.voided',\n  credit_notedeleted: 'credit_note.deleted',\n  credit_noterestored: 'credit_note.restored',\n  advance_invoicecreated: 'advance_invoice.created',\n  advance_invoicepaid: 'advance_invoice.paid',\n  advance_invoiceapplied: 'advance_invoice.applied',\n  advance_invoicevoided: 'advance_invoice.voided',\n  advance_invoicedeleted: 'advance_invoice.deleted',\n  advance_invoicerestored: 'advance_invoice.restored',\n  itemcreated: 'item.created',\n  itemupdated: 'item.updated',\n  itemdeleted: 'item.deleted',\n  itemrestored: 'item.restored',\n  itempermanently_deleted: 'item.permanently_deleted',\n  taxcreated: 'tax.created',\n  taxupdated: 'tax.updated',\n  taxdeleted: 'tax.deleted',\n  taxrestored: 'tax.restored',\n  taxpermanently_deleted: 'tax.permanently_deleted',\n  recurring_invoicecreated: 'recurring_invoice.created',\n  recurring_invoiceupdated: 'recurring_invoice.updated',\n  recurring_invoicedeleted: 'recurring_invoice.deleted',\n  recurring_invoicerestored: 'recurring_invoice.restored',\n  recurring_invoicepermanently_deleted: 'recurring_invoice.permanently_deleted',\n  recurring_invoicepaused: 'recurring_invoice.paused',\n  recurring_invoiceresumed: 'recurring_invoice.resumed',\n  recurring_invoiceinvoice_generated: 'recurring_invoice.invoice_generated',\n  recurring_invoicegeneration_failed: 'recurring_invoice.generation_failed',\n  recurring_invoicecompleted: 'recurring_invoice.completed',\n  stripe_appconnected: 'stripe_app.connected',\n  stripe_appdisconnected: 'stripe_app.disconnected',\n  stripe_appsettings_updated: 'stripe_app.settings_updated',\n  ordercreated: 'order.created',\n  orderupdated: 'order.updated',\n  orderdeleted: 'order.deleted',\n  orderrestored: 'order.restored',\n  orderpermanently_deleted: 'order.permanently_deleted',\n  orderprocessed: 'order.processed',\n  ordercancelled: 'order.cancelled',\n  orderfailed: 'order.failed',\n  order_integrationcreated: 'order_integration.created',\n  order_integrationupdated: 'order_integration.updated',\n  order_integrationdeleted: 'order_integration.deleted',\n  delivery_notecreated: 'delivery_note.created',\n  delivery_notesent: 'delivery_note.sent',\n  delivery_notecancelled: 'delivery_note.cancelled',\n  delivery_notevoided: 'delivery_note.voided',\n  delivery_notedeleted: 'delivery_note.deleted',\n  delivery_noterestored: 'delivery_note.restored',\n  e_invoicingsubmissioncreated: 'e_invoicing.submission.created',\n  e_invoicingsubmissiondelivered: 'e_invoicing.submission.delivered',\n  e_invoicingsubmissionfailed: 'e_invoicing.submission.failed',\n  e_invoicingsupplieronboarded: 'e_invoicing.supplier.onboarded',\n  e_invoicingsupplierrejected: 'e_invoicing.supplier.rejected',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Internal origin of the create request. `standard` means a normal create endpoint calculated the totals. `custom` means the document was created through a `/custom` endpoint.\n */\nexport type CreationSource = typeof CreationSource[keyof typeof CreationSource];\n\n\nexport const CreationSource = {\n  standard: 'standard',\n  custom: 'custom',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for this document. Stored on the document so recalculation and rendering remain stable even if entity defaults change later.\n */\nexport type CreditNoteCalculationMode = typeof CreditNoteCalculationMode[keyof typeof CreditNoteCalculationMode];\n\n\nexport const CreditNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type CreditNoteItemClassification = typeof CreditNoteItemClassification[keyof typeof CreditNoteItemClassification] | null;\n\n\nexport const CreditNoteItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. null = regular line item, 'separator' = visual section header.\n * @nullable\n */\nexport type CreditNoteItemType = typeof CreditNoteItemType[keyof typeof CreditNoteItemType] | null;\n\n\nexport const CreditNoteItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes (domestic, intra_eu_b2b, intra_eu_b2c, export). Always determined based on issuer/customer countries.\n * @nullable\n */\nexport type CreditNoteTransactionType = typeof CreditNoteTransactionType[keyof typeof CreditNoteTransactionType] | null;\n\n\nexport const CreditNoteTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Billing provider used for this subscription\n */\nexport type CurrentSubscriptionPaymentProvider = typeof CurrentSubscriptionPaymentProvider[keyof typeof CurrentSubscriptionPaymentProvider];\n\n\nexport const CurrentSubscriptionPaymentProvider = {\n  stripe: 'stripe',\n  paypal: 'paypal',\n  bank: 'bank',\n  braintree: 'braintree',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CustomCreateAdvanceInvoiceCalculationMode = typeof CustomCreateAdvanceInvoiceCalculationMode[keyof typeof CustomCreateAdvanceInvoiceCalculationMode] | null;\n\n\nexport const CustomCreateAdvanceInvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CustomCreateCreditNoteCalculationMode = typeof CustomCreateCreditNoteCalculationMode[keyof typeof CustomCreateCreditNoteCalculationMode] | null;\n\n\nexport const CustomCreateCreditNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CustomCreateDeliveryNoteCalculationMode = typeof CustomCreateDeliveryNoteCalculationMode[keyof typeof CustomCreateDeliveryNoteCalculationMode] | null;\n\n\nexport const CustomCreateDeliveryNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CustomCreateEstimateCalculationMode = typeof CustomCreateEstimateCalculationMode[keyof typeof CustomCreateEstimateCalculationMode] | null;\n\n\nexport const CustomCreateEstimateCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type CustomCreateEstimateTitleType = typeof CustomCreateEstimateTitleType[keyof typeof CustomCreateEstimateTitleType] | null;\n\n\nexport const CustomCreateEstimateTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type CustomCreateIncomingPurchaseDocumentTransactionType = typeof CustomCreateIncomingPurchaseDocumentTransactionType[keyof typeof CustomCreateIncomingPurchaseDocumentTransactionType] | null;\n\n\nexport const CustomCreateIncomingPurchaseDocumentTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type CustomCreateIncomingPurchaseDocumentType = typeof CustomCreateIncomingPurchaseDocumentType[keyof typeof CustomCreateIncomingPurchaseDocumentType];\n\n\nexport const CustomCreateIncomingPurchaseDocumentType = {\n  invoice: 'invoice',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type CustomCreateInvoiceCalculationMode = typeof CustomCreateInvoiceCalculationMode[keyof typeof CustomCreateInvoiceCalculationMode] | null;\n\n\nexport const CustomCreateInvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type CustomDocumentItemClassification = typeof CustomDocumentItemClassification[keyof typeof CustomDocumentItemClassification] | null;\n\n\nexport const CustomDocumentItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. Omit or null for regular line item, 'separator' for a visual section header.\nSeparator items only use name and description — all financial fields are ignored.\n * @nullable\n */\nexport type CustomDocumentItemType = typeof CustomDocumentItemType[keyof typeof CustomDocumentItemType] | null;\n\n\nexport const CustomDocumentItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type DeleteDocumentType = typeof DeleteDocumentType[keyof typeof DeleteDocumentType];\n\n\nexport const DeleteDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for this document. Stored on the document so recalculation and rendering remain stable even if entity defaults change later.\n */\nexport type DeliveryNoteCalculationMode = typeof DeliveryNoteCalculationMode[keyof typeof DeliveryNoteCalculationMode];\n\n\nexport const DeliveryNoteCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type DeliveryNoteItemClassification = typeof DeliveryNoteItemClassification[keyof typeof DeliveryNoteItemClassification] | null;\n\n\nexport const DeliveryNoteItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. null = regular line item, 'separator' = visual section header.\n * @nullable\n */\nexport type DeliveryNoteItemType = typeof DeliveryNoteItemType[keyof typeof DeliveryNoteItemType] | null;\n\n\nexport const DeliveryNoteItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes (domestic, intra_eu_b2b, intra_eu_b2c, export). Always determined based on issuer/customer countries.\n * @nullable\n */\nexport type DeliveryNoteTransactionType = typeof DeliveryNoteTransactionType[keyof typeof DeliveryNoteTransactionType] | null;\n\n\nexport const DeliveryNoteTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for the preview after applying the request override or entity default.\n */\nexport type DocumentCalculationCalculationMode = typeof DocumentCalculationCalculationMode[keyof typeof DocumentCalculationCalculationMode];\n\n\nexport const DocumentCalculationCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes. Always determined based on issuer/customer countries, regardless of VIES settings.\n * @nullable\n */\nexport type DocumentCalculationTransactionType = typeof DocumentCalculationTransactionType[keyof typeof DocumentCalculationTransactionType] | null;\n\n\nexport const DocumentCalculationTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type DocumentRelationRelatedDocumentTitleType = typeof DocumentRelationRelatedDocumentTitleType[keyof typeof DocumentRelationRelatedDocumentTitleType] | null;\n\n\nexport const DocumentRelationRelatedDocumentTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of document\n */\nexport type DocumentRelationRelatedDocumentType = typeof DocumentRelationRelatedDocumentType[keyof typeof DocumentRelationRelatedDocumentType];\n\n\nexport const DocumentRelationRelatedDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of document\n */\nexport type DocumentRelationSourceType = typeof DocumentRelationSourceType[keyof typeof DocumentRelationSourceType];\n\n\nexport const DocumentRelationSourceType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of document\n */\nexport type DocumentRelationTargetType = typeof DocumentRelationTargetType[keyof typeof DocumentRelationTargetType];\n\n\nexport const DocumentRelationTargetType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of document\n */\nexport type DocumentVersionDocumentType = typeof DocumentVersionDocumentType[keyof typeof DocumentVersionDocumentType];\n\n\nexport const DocumentVersionDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Environment the key is valid for\n */\nexport type EntityApiKeyEnvironment = typeof EntityApiKeyEnvironment[keyof typeof EntityApiKeyEnvironment];\n\n\nexport const EntityApiKeyEnvironment = {\n  live: 'live',\n  sandbox: 'sandbox',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Account type determines which fields are used\n */\nexport type EntityBankAccountType = typeof EntityBankAccountType[keyof typeof EntityBankAccountType];\n\n\nexport const EntityBankAccountType = {\n  iban: 'iban',\n  us_domestic: 'us_domestic',\n  uk_domestic: 'uk_domestic',\n  other: 'other',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Entity environment\n */\nexport type EntityEnvironment = typeof EntityEnvironment[keyof typeof EntityEnvironment];\n\n\nexport const EntityEnvironment = {\n  live: 'live',\n  sandbox: 'sandbox',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * User role on the entity\n */\nexport type EntityInvitationRole = typeof EntityInvitationRole[keyof typeof EntityInvitationRole];\n\n\nexport const EntityInvitationRole = {\n  viewer: 'viewer',\n  editor: 'editor',\n  admin: 'admin',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Current status of the invitation\n */\nexport type EntityInvitationStatus = typeof EntityInvitationStatus[keyof typeof EntityInvitationStatus];\n\n\nexport const EntityInvitationStatus = {\n  pending: 'pending',\n  accepted: 'accepted',\n  expired: 'expired',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Default PDF template for document rendering. Defaults to 'modern' if not set.\n * @nullable\n */\nexport type EntitySettingsPdfTemplate = typeof EntitySettingsPdfTemplate[keyof typeof EntitySettingsPdfTemplate] | null;\n\n\nexport const EntitySettingsPdfTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n  timeless_modern_full_data: 'timeless_modern_full_data',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * User role on the entity\n */\nexport type EntityUserRole = typeof EntityUserRole[keyof typeof EntityUserRole];\n\n\nexport const EntityUserRole = {\n  viewer: 'viewer',\n  editor: 'editor',\n  admin: 'admin',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Document type to export as e-SLOG XML\n */\nexport type EslogExportByDateRangeTypesItem = typeof EslogExportByDateRangeTypesItem[keyof typeof EslogExportByDateRangeTypesItem];\n\n\nexport const EslogExportByDateRangeTypesItem = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for this document. Stored on the document so recalculation and rendering remain stable even if entity defaults change later.\n */\nexport type EstimateCalculationMode = typeof EstimateCalculationMode[keyof typeof EstimateCalculationMode];\n\n\nexport const EstimateCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type EstimateItemClassification = typeof EstimateItemClassification[keyof typeof EstimateItemClassification] | null;\n\n\nexport const EstimateItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. null = regular line item, 'separator' = visual section header.\n * @nullable\n */\nexport type EstimateItemType = typeof EstimateItemType[keyof typeof EstimateItemType] | null;\n\n\nexport const EstimateItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Display name variant for the document. 'estimate' renders as 'Estimate' (Ponudba/Ponuda), 'proforma_invoice' renders as 'Proforma invoice' (Predračun).\n * @nullable\n */\nexport type EstimateTitleType = typeof EstimateTitleType[keyof typeof EstimateTitleType] | null;\n\n\nexport const EstimateTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes (domestic, intra_eu_b2b, intra_eu_b2c, export). Always determined based on issuer/customer countries.\n * @nullable\n */\nexport type EstimateTransactionType = typeof EstimateTransactionType[keyof typeof EstimateTransactionType] | null;\n\n\nexport const EstimateTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ExportDocumentsFormat = typeof ExportDocumentsFormat[keyof typeof ExportDocumentsFormat];\n\n\nexport const ExportDocumentsFormat = {\n  xlsx: 'xlsx',\n  csv: 'csv',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ExportDocumentsLanguage = typeof ExportDocumentsLanguage[keyof typeof ExportDocumentsLanguage];\n\n\nexport const ExportDocumentsLanguage = {\n  en: 'en',\n  de: 'de',\n  sl: 'sl',\n  it: 'it',\n  fr: 'fr',\n  es: 'es',\n  pt: 'pt',\n  nl: 'nl',\n  pl: 'pl',\n  hr: 'hr',\n  sv: 'sv',\n  fi: 'fi',\n  et: 'et',\n  bg: 'bg',\n  cs: 'cs',\n  sk: 'sk',\n  nb: 'nb',\n  is: 'is',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ExportDocumentsType = typeof ExportDocumentsType[keyof typeof ExportDocumentsType];\n\n\nexport const ExportDocumentsType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ExportSalesPerItemFormat = typeof ExportSalesPerItemFormat[keyof typeof ExportSalesPerItemFormat];\n\n\nexport const ExportSalesPerItemFormat = {\n  xlsx: 'xlsx',\n  csv: 'csv',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ExportSalesPerItemLanguage = typeof ExportSalesPerItemLanguage[keyof typeof ExportSalesPerItemLanguage];\n\n\nexport const ExportSalesPerItemLanguage = {\n  en: 'en',\n  de: 'de',\n  sl: 'sl',\n  it: 'it',\n  fr: 'fr',\n  es: 'es',\n  pt: 'pt',\n  nl: 'nl',\n  pl: 'pl',\n  hr: 'hr',\n  sv: 'sv',\n  fi: 'fi',\n  et: 'et',\n  bg: 'bg',\n  cs: 'cs',\n  sk: 'sk',\n  nb: 'nb',\n  is: 'is',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type FinalizeDocumentType = typeof FinalizeDocumentType[keyof typeof FinalizeDocumentType];\n\n\nexport const FinalizeDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type FiscalizeDocumentType = typeof FiscalizeDocumentType[keyof typeof FiscalizeDocumentType];\n\n\nexport const FiscalizeDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * FURS environment used\n */\nexport type FursPremiseSuccessResponseEnvironment = typeof FursPremiseSuccessResponseEnvironment[keyof typeof FursPremiseSuccessResponseEnvironment];\n\n\nexport const FursPremiseSuccessResponseEnvironment = {\n  test: 'test',\n  production: 'production',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetActivePtAtcudSeriesDocumentType = typeof GetActivePtAtcudSeriesDocumentType[keyof typeof GetActivePtAtcudSeriesDocumentType];\n\n\nexport const GetActivePtAtcudSeriesDocumentType = {\n  invoice: 'invoice',\n  advance_invoice: 'advance_invoice',\n  credit_note: 'credit_note',\n  estimate: 'estimate',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Who/what triggered the activity\n */\nexport type GetActivities200DataItemActorType = typeof GetActivities200DataItemActorType[keyof typeof GetActivities200DataItemActorType];\n\n\nexport const GetActivities200DataItemActorType = {\n  user: 'user',\n  api_key: 'api_key',\n  system: 'system',\n  cron: 'cron',\n  webhook: 'webhook',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetEntitiesEnvironment = typeof GetEntitiesEnvironment[keyof typeof GetEntitiesEnvironment];\n\n\nexport const GetEntitiesEnvironment = {\n  live: 'live',\n  sandbox: 'sandbox',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Export job status\n */\nexport type GetEslogExportStatus200Status = typeof GetEslogExportStatus200Status[keyof typeof GetEslogExportStatus200Status];\n\n\nexport const GetEslogExportStatus200Status = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetFilesCategory = typeof GetFilesCategory[keyof typeof GetFilesCategory];\n\n\nexport const GetFilesCategory = {\n  logo: 'logo',\n  signature: 'signature',\n  attachment: 'attachment',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Certificate status\n */\nexport type GetFinaSettings200CertificateStatus = typeof GetFinaSettings200CertificateStatus[keyof typeof GetFinaSettings200CertificateStatus];\n\n\nexport const GetFinaSettings200CertificateStatus = {\n  valid: 'valid',\n  expiring_soon: 'expiring_soon',\n  expired: 'expired',\n  missing: 'missing',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering sequence: P (per premise) or N (per device)\n */\nexport type GetFinaSettings200NumberingSequence = typeof GetFinaSettings200NumberingSequence[keyof typeof GetFinaSettings200NumberingSequence];\n\n\nexport const GetFinaSettings200NumberingSequence = {\n  N: 'N',\n  P: 'P',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Certificate status\n */\nexport type GetFursSettings200CertificateStatus = typeof GetFursSettings200CertificateStatus[keyof typeof GetFursSettings200CertificateStatus];\n\n\nexport const GetFursSettings200CertificateStatus = {\n  valid: 'valid',\n  expiring_soon: 'expiring_soon',\n  expired: 'expired',\n  missing: 'missing',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering strategy\n */\nexport type GetFursSettings200NumberingStrategy = typeof GetFursSettings200NumberingStrategy[keyof typeof GetFursSettings200NumberingStrategy];\n\n\nexport const GetFursSettings200NumberingStrategy = {\n  B: 'B',\n  C: 'C',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetIncomingPurchaseDocumentsIsDraft = typeof GetIncomingPurchaseDocumentsIsDraft[keyof typeof GetIncomingPurchaseDocumentsIsDraft];\n\n\nexport const GetIncomingPurchaseDocumentsIsDraft = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetNextDocumentNumberType = typeof GetNextDocumentNumberType[keyof typeof GetNextDocumentNumberType];\n\n\nexport const GetNextDocumentNumberType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Export job status\n */\nexport type GetPdfExportStatus200Status = typeof GetPdfExportStatus200Status[keyof typeof GetPdfExportStatus200Status];\n\n\nexport const GetPdfExportStatus200Status = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableAdvanceInvoiceHtmlLanguage = typeof GetShareableAdvanceInvoiceHtmlLanguage[keyof typeof GetShareableAdvanceInvoiceHtmlLanguage];\n\n\nexport const GetShareableAdvanceInvoiceHtmlLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableAdvanceInvoiceHtmlLocale = typeof GetShareableAdvanceInvoiceHtmlLocale[keyof typeof GetShareableAdvanceInvoiceHtmlLocale];\n\n\nexport const GetShareableAdvanceInvoiceHtmlLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableAdvanceInvoicePdfLanguage = typeof GetShareableAdvanceInvoicePdfLanguage[keyof typeof GetShareableAdvanceInvoicePdfLanguage];\n\n\nexport const GetShareableAdvanceInvoicePdfLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableAdvanceInvoicePdfLocale = typeof GetShareableAdvanceInvoicePdfLocale[keyof typeof GetShareableAdvanceInvoicePdfLocale];\n\n\nexport const GetShareableAdvanceInvoicePdfLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableCreditNoteHtmlLanguage = typeof GetShareableCreditNoteHtmlLanguage[keyof typeof GetShareableCreditNoteHtmlLanguage];\n\n\nexport const GetShareableCreditNoteHtmlLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableCreditNoteHtmlLocale = typeof GetShareableCreditNoteHtmlLocale[keyof typeof GetShareableCreditNoteHtmlLocale];\n\n\nexport const GetShareableCreditNoteHtmlLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableCreditNotePdfLanguage = typeof GetShareableCreditNotePdfLanguage[keyof typeof GetShareableCreditNotePdfLanguage];\n\n\nexport const GetShareableCreditNotePdfLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableCreditNotePdfLocale = typeof GetShareableCreditNotePdfLocale[keyof typeof GetShareableCreditNotePdfLocale];\n\n\nexport const GetShareableCreditNotePdfLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableDeliveryNoteHtmlLanguage = typeof GetShareableDeliveryNoteHtmlLanguage[keyof typeof GetShareableDeliveryNoteHtmlLanguage];\n\n\nexport const GetShareableDeliveryNoteHtmlLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableDeliveryNoteHtmlLocale = typeof GetShareableDeliveryNoteHtmlLocale[keyof typeof GetShareableDeliveryNoteHtmlLocale];\n\n\nexport const GetShareableDeliveryNoteHtmlLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableDeliveryNotePdfLanguage = typeof GetShareableDeliveryNotePdfLanguage[keyof typeof GetShareableDeliveryNotePdfLanguage];\n\n\nexport const GetShareableDeliveryNotePdfLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableDeliveryNotePdfLocale = typeof GetShareableDeliveryNotePdfLocale[keyof typeof GetShareableDeliveryNotePdfLocale];\n\n\nexport const GetShareableDeliveryNotePdfLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableEstimateHtmlLanguage = typeof GetShareableEstimateHtmlLanguage[keyof typeof GetShareableEstimateHtmlLanguage];\n\n\nexport const GetShareableEstimateHtmlLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableEstimateHtmlLocale = typeof GetShareableEstimateHtmlLocale[keyof typeof GetShareableEstimateHtmlLocale];\n\n\nexport const GetShareableEstimateHtmlLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableEstimatePdfLanguage = typeof GetShareableEstimatePdfLanguage[keyof typeof GetShareableEstimatePdfLanguage];\n\n\nexport const GetShareableEstimatePdfLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableEstimatePdfLocale = typeof GetShareableEstimatePdfLocale[keyof typeof GetShareableEstimatePdfLocale];\n\n\nexport const GetShareableEstimatePdfLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableInvoiceHtmlLanguage = typeof GetShareableInvoiceHtmlLanguage[keyof typeof GetShareableInvoiceHtmlLanguage];\n\n\nexport const GetShareableInvoiceHtmlLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableInvoiceHtmlLocale = typeof GetShareableInvoiceHtmlLocale[keyof typeof GetShareableInvoiceHtmlLocale];\n\n\nexport const GetShareableInvoiceHtmlLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableInvoicePdfLanguage = typeof GetShareableInvoicePdfLanguage[keyof typeof GetShareableInvoicePdfLanguage];\n\n\nexport const GetShareableInvoicePdfLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetShareableInvoicePdfLocale = typeof GetShareableInvoicePdfLocale[keyof typeof GetShareableInvoicePdfLocale];\n\n\nexport const GetShareableInvoicePdfLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Preferred Slovenian accounting export format.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200AccountingExportsPreferredFormat = typeof GetSloveniaTaxProfile200AccountingExportsPreferredFormat[keyof typeof GetSloveniaTaxProfile200AccountingExportsPreferredFormat] | null;\n\n\nexport const GetSloveniaTaxProfile200AccountingExportsPreferredFormat = {\n  vod_xml: 'vod_xml',\n  vasco_xml: 'vasco_xml',\n  minimax_xml: 'minimax_xml',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200BusinessForm = typeof GetSloveniaTaxProfile200BusinessForm[keyof typeof GetSloveniaTaxProfile200BusinessForm] | null;\n\n\nexport const GetSloveniaTaxProfile200BusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type GetSloveniaTaxProfile200BusinessFormSource = typeof GetSloveniaTaxProfile200BusinessFormSource[keyof typeof GetSloveniaTaxProfile200BusinessFormSource];\n\n\nexport const GetSloveniaTaxProfile200BusinessFormSource = {\n  stored: 'stored',\n  registry: 'registry',\n  unknown: 'unknown',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Income tax regime used by the Slovenian entity.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200IncomeTaxRegime = typeof GetSloveniaTaxProfile200IncomeTaxRegime[keyof typeof GetSloveniaTaxProfile200IncomeTaxRegime] | null;\n\n\nexport const GetSloveniaTaxProfile200IncomeTaxRegime = {\n  normirani: 'normirani',\n  dejanski: 'dejanski',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200InferredBusinessForm = typeof GetSloveniaTaxProfile200InferredBusinessForm[keyof typeof GetSloveniaTaxProfile200InferredBusinessForm] | null;\n\n\nexport const GetSloveniaTaxProfile200InferredBusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Tax residency status for Slovenian yearly reporting.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200TaxResidency = typeof GetSloveniaTaxProfile200TaxResidency[keyof typeof GetSloveniaTaxProfile200TaxResidency] | null;\n\n\nexport const GetSloveniaTaxProfile200TaxResidency = {\n  resident: 'resident',\n  non_resident: 'non_resident',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Slovenia-specific VAT subject subtype.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200VatProfile = typeof GetSloveniaTaxProfile200VatProfile[keyof typeof GetSloveniaTaxProfile200VatProfile] | null;\n\n\nexport const GetSloveniaTaxProfile200VatProfile = {\n  standard: 'standard',\n  special_vat_identified: 'special_vat_identified',\n  non_vat_subject: 'non_vat_subject',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Accounting / records mode used in the filing.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200YearlyReportingAccountingType = typeof GetSloveniaTaxProfile200YearlyReportingAccountingType[keyof typeof GetSloveniaTaxProfile200YearlyReportingAccountingType] | null;\n\n\nexport const GetSloveniaTaxProfile200YearlyReportingAccountingType = {\n  records: 'records',\n  single_entry: 'single_entry',\n  double_entry: 'double_entry',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Insurance basis used by normirani rules.\n * @nullable\n */\nexport type GetSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis = typeof GetSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis[keyof typeof GetSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis] | null;\n\n\nexport const GetSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis = {\n  full_time_self_employed: 'full_time_self_employed',\n  other: 'other',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type IncomingPurchaseDocumentItemClassification = typeof IncomingPurchaseDocumentItemClassification[keyof typeof IncomingPurchaseDocumentItemClassification];\n\n\nexport const IncomingPurchaseDocumentItemClassification = {\n  product: 'product',\n  service: 'service',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type IncomingPurchaseDocumentSummaryClassification = typeof IncomingPurchaseDocumentSummaryClassification[keyof typeof IncomingPurchaseDocumentSummaryClassification] | null;\n\n\nexport const IncomingPurchaseDocumentSummaryClassification = {\n  goods: 'goods',\n  services: 'services',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type IncomingPurchaseDocumentType = typeof IncomingPurchaseDocumentType[keyof typeof IncomingPurchaseDocumentType];\n\n\nexport const IncomingPurchaseDocumentType = {\n  invoice: 'invoice',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Resolved calculation mode used for this document. Stored on the document so recalculation and rendering remain stable even if entity defaults change later.\n */\nexport type InvoiceCalculationMode = typeof InvoiceCalculationMode[keyof typeof InvoiceCalculationMode];\n\n\nexport const InvoiceCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type InvoiceItemClassification = typeof InvoiceItemClassification[keyof typeof InvoiceItemClassification] | null;\n\n\nexport const InvoiceItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item type. null = regular line item, 'separator' = visual section header.\n * @nullable\n */\nexport type InvoiceItemType = typeof InvoiceItemType[keyof typeof InvoiceItemType] | null;\n\n\nexport const InvoiceItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Transaction type for VAT purposes (domestic, intra_eu_b2b, intra_eu_b2c, export). Always determined based on issuer/customer countries.\n * @nullable\n */\nexport type InvoiceTransactionType = typeof InvoiceTransactionType[keyof typeof InvoiceTransactionType] | null;\n\n\nexport const InvoiceTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T product typing.\n * @nullable\n */\nexport type ItemClassification = typeof ItemClassification[keyof typeof ItemClassification] | null;\n\n\nexport const ItemClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Unsupported migration warning code\n */\nexport type LegacyAuthResponseOrganizationsItemUnsupportedItemCode = typeof LegacyAuthResponseOrganizationsItemUnsupportedItemCode[keyof typeof LegacyAuthResponseOrganizationsItemUnsupportedItemCode];\n\n\nexport const LegacyAuthResponseOrganizationsItemUnsupportedItemCode = {\n  fiscalization_series: 'fiscalization_series',\n  accounting_categories: 'accounting_categories',\n  inventory_and_pricing: 'inventory_and_pricing',\n  sales_integrations: 'sales_integrations',\n  webhooks: 'webhooks',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Discount type: 'percent' (default) or 'amount'\n */\nexport type LineDiscountType = typeof LineDiscountType[keyof typeof LineDiscountType];\n\n\nexport const LineDiscountType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ListPtAtcudSeriesDocumentType = typeof ListPtAtcudSeriesDocumentType[keyof typeof ListPtAtcudSeriesDocumentType];\n\n\nexport const ListPtAtcudSeriesDocumentType = {\n  invoice: 'invoice',\n  advance_invoice: 'advance_invoice',\n  credit_note: 'credit_note',\n  estimate: 'estimate',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Migration job status\n */\nexport type MigrationJobResponseStatus = typeof MigrationJobResponseStatus[keyof typeof MigrationJobResponseStatus];\n\n\nexport const MigrationJobResponseStatus = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order payment status\n */\nexport type OrderBasePaymentStatus = typeof OrderBasePaymentStatus[keyof typeof OrderBasePaymentStatus];\n\n\nexport const OrderBasePaymentStatus = {\n  unpaid: 'unpaid',\n  paid: 'paid',\n  partially_paid: 'partially_paid',\n  refunded: 'refunded',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order source platform\n */\nexport type OrderBaseSource = typeof OrderBaseSource[keyof typeof OrderBaseSource];\n\n\nexport const OrderBaseSource = {\n  shopify: 'shopify',\n  woocommerce: 'woocommerce',\n  manual: 'manual',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order processing status\n */\nexport type OrderBaseStatus = typeof OrderBaseStatus[keyof typeof OrderBaseStatus];\n\n\nexport const OrderBaseStatus = {\n  pending: 'pending',\n  processing: 'processing',\n  invoiced: 'invoiced',\n  cancelled: 'cancelled',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * When to automatically process orders into invoices\n */\nexport type OrderIntegrationBaseAutoProcessOn = typeof OrderIntegrationBaseAutoProcessOn[keyof typeof OrderIntegrationBaseAutoProcessOn];\n\n\nexport const OrderIntegrationBaseAutoProcessOn = {\n  created: 'created',\n  paid: 'paid',\n  fulfilled: 'fulfilled',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Integration source platform\n */\nexport type OrderIntegrationBaseSource = typeof OrderIntegrationBaseSource[keyof typeof OrderIntegrationBaseSource];\n\n\nexport const OrderIntegrationBaseSource = {\n  shopify: 'shopify',\n  woocommerce: 'woocommerce',\n  manual: 'manual',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type OrderItemKind = typeof OrderItemKind[keyof typeof OrderItemKind];\n\n\nexport const OrderItemKind = {\n  line_item: 'line_item',\n  shipping: 'shipping',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type PartialAdvanceInvoicePreviewCalculationMode = typeof PartialAdvanceInvoicePreviewCalculationMode[keyof typeof PartialAdvanceInvoicePreviewCalculationMode] | null;\n\n\nexport const PartialAdvanceInvoicePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialAdvanceInvoicePreviewItemsItemDiscountsItemType = typeof PartialAdvanceInvoicePreviewItemsItemDiscountsItemType[keyof typeof PartialAdvanceInvoicePreviewItemsItemDiscountsItemType];\n\n\nexport const PartialAdvanceInvoicePreviewItemsItemDiscountsItemType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialAdvanceInvoicePreviewItemsItemType = typeof PartialAdvanceInvoicePreviewItemsItemType[keyof typeof PartialAdvanceInvoicePreviewItemsItemType];\n\n\nexport const PartialAdvanceInvoicePreviewItemsItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type PartialCreditNotePreviewCalculationMode = typeof PartialCreditNotePreviewCalculationMode[keyof typeof PartialCreditNotePreviewCalculationMode] | null;\n\n\nexport const PartialCreditNotePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialCreditNotePreviewItemsItemDiscountsItemType = typeof PartialCreditNotePreviewItemsItemDiscountsItemType[keyof typeof PartialCreditNotePreviewItemsItemDiscountsItemType];\n\n\nexport const PartialCreditNotePreviewItemsItemDiscountsItemType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialCreditNotePreviewItemsItemType = typeof PartialCreditNotePreviewItemsItemType[keyof typeof PartialCreditNotePreviewItemsItemType];\n\n\nexport const PartialCreditNotePreviewItemsItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type PartialDeliveryNotePreviewCalculationMode = typeof PartialDeliveryNotePreviewCalculationMode[keyof typeof PartialDeliveryNotePreviewCalculationMode] | null;\n\n\nexport const PartialDeliveryNotePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialDeliveryNotePreviewItemsItemDiscountsItemType = typeof PartialDeliveryNotePreviewItemsItemDiscountsItemType[keyof typeof PartialDeliveryNotePreviewItemsItemDiscountsItemType];\n\n\nexport const PartialDeliveryNotePreviewItemsItemDiscountsItemType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialDeliveryNotePreviewItemsItemType = typeof PartialDeliveryNotePreviewItemsItemType[keyof typeof PartialDeliveryNotePreviewItemsItemType];\n\n\nexport const PartialDeliveryNotePreviewItemsItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type PartialEstimatePreviewCalculationMode = typeof PartialEstimatePreviewCalculationMode[keyof typeof PartialEstimatePreviewCalculationMode] | null;\n\n\nexport const PartialEstimatePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialEstimatePreviewItemsItemDiscountsItemType = typeof PartialEstimatePreviewItemsItemDiscountsItemType[keyof typeof PartialEstimatePreviewItemsItemDiscountsItemType];\n\n\nexport const PartialEstimatePreviewItemsItemDiscountsItemType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialEstimatePreviewItemsItemType = typeof PartialEstimatePreviewItemsItemType[keyof typeof PartialEstimatePreviewItemsItemType];\n\n\nexport const PartialEstimatePreviewItemsItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Display name variant for the document. 'estimate' renders as 'Estimate' (Ponudba/Ponuda), 'proforma_invoice' renders as 'Proforma invoice' (Predračun).\n * @nullable\n */\nexport type PartialEstimatePreviewTitleType = typeof PartialEstimatePreviewTitleType[keyof typeof PartialEstimatePreviewTitleType] | null;\n\n\nexport const PartialEstimatePreviewTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Optional calculation mode override. When omitted, the entity default is used and falls back to `b2b_standard`.\n * @nullable\n */\nexport type PartialInvoicePreviewCalculationMode = typeof PartialInvoicePreviewCalculationMode[keyof typeof PartialInvoicePreviewCalculationMode] | null;\n\n\nexport const PartialInvoicePreviewCalculationMode = {\n  b2b_standard: 'b2b_standard',\n  b2c_gross_discount: 'b2c_gross_discount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialInvoicePreviewItemsItemDiscountsItemType = typeof PartialInvoicePreviewItemsItemDiscountsItemType[keyof typeof PartialInvoicePreviewItemsItemDiscountsItemType];\n\n\nexport const PartialInvoicePreviewItemsItemDiscountsItemType = {\n  percent: 'percent',\n  amount: 'amount',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PartialInvoicePreviewItemsItemType = typeof PartialInvoicePreviewItemsItemType[keyof typeof PartialInvoicePreviewItemsItemType];\n\n\nexport const PartialInvoicePreviewItemsItemType = {\n  separator: 'separator',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Default PDF template for document rendering. Defaults to 'modern' if not set.\n * @nullable\n */\nexport type PatchEntityBodySettingsPdfTemplate = typeof PatchEntityBodySettingsPdfTemplate[keyof typeof PatchEntityBodySettingsPdfTemplate] | null;\n\n\nexport const PatchEntityBodySettingsPdfTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n  timeless_modern_full_data: 'timeless_modern_full_data',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Preferred UI language. When omitted or null, the current preference is left unchanged.\n * @nullable\n */\nexport type PatchMeBodyLocale = typeof PatchMeBodyLocale[keyof typeof PatchMeBodyLocale] | null;\n\n\nexport const PatchMeBodyLocale = {\n  en: 'en',\n  de: 'de',\n  sl: 'sl',\n  it: 'it',\n  fr: 'fr',\n  es: 'es',\n  pt: 'pt',\n  nl: 'nl',\n  pl: 'pl',\n  hr: 'hr',\n  sv: 'sv',\n  fi: 'fi',\n  et: 'et',\n  bg: 'bg',\n  cs: 'cs',\n  sk: 'sk',\n  nb: 'nb',\n  is: 'is',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Payment type/method\n */\nexport type PaymentType = typeof PaymentType[keyof typeof PaymentType];\n\n\nexport const PaymentType = {\n  cash: 'cash',\n  bank_transfer: 'bank_transfer',\n  card: 'card',\n  check: 'check',\n  paypal: 'paypal',\n  coupon: 'coupon',\n  other: 'other',\n  credit_note: 'credit_note',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override PDF label language. When omitted or null, defaults to the locale language, then entity locale.\n * @nullable\n */\nexport type PdfExportByDateRangeLanguage = typeof PdfExportByDateRangeLanguage[keyof typeof PdfExportByDateRangeLanguage] | null;\n\n\nexport const PdfExportByDateRangeLanguage = {\n  en: 'en',\n  de: 'de',\n  sl: 'sl',\n  it: 'it',\n  fr: 'fr',\n  es: 'es',\n  pt: 'pt',\n  nl: 'nl',\n  pl: 'pl',\n  hr: 'hr',\n  sv: 'sv',\n  fi: 'fi',\n  et: 'et',\n  bg: 'bg',\n  cs: 'cs',\n  sk: 'sk',\n  nb: 'nb',\n  is: 'is',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override PDF formatting locale. When omitted or null, defaults to the entity locale.\n * @nullable\n */\nexport type PdfExportByDateRangeLocale = typeof PdfExportByDateRangeLocale[keyof typeof PdfExportByDateRangeLocale] | null;\n\n\nexport const PdfExportByDateRangeLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Document type to export\n */\nexport type PdfExportByDateRangeTypesItem = typeof PdfExportByDateRangeTypesItem[keyof typeof PdfExportByDateRangeTypesItem];\n\n\nexport const PdfExportByDateRangeTypesItem = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override PDF label language. When omitted or null, defaults to the locale language, then entity locale.\n * @nullable\n */\nexport type PdfExportByDocumentIdsLanguage = typeof PdfExportByDocumentIdsLanguage[keyof typeof PdfExportByDocumentIdsLanguage] | null;\n\n\nexport const PdfExportByDocumentIdsLanguage = {\n  en: 'en',\n  de: 'de',\n  sl: 'sl',\n  it: 'it',\n  fr: 'fr',\n  es: 'es',\n  pt: 'pt',\n  nl: 'nl',\n  pl: 'pl',\n  hr: 'hr',\n  sv: 'sv',\n  fi: 'fi',\n  et: 'et',\n  bg: 'bg',\n  cs: 'cs',\n  sk: 'sk',\n  nb: 'nb',\n  is: 'is',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override PDF formatting locale. When omitted or null, defaults to the entity locale.\n * @nullable\n */\nexport type PdfExportByDocumentIdsLocale = typeof PdfExportByDocumentIdsLocale[keyof typeof PdfExportByDocumentIdsLocale] | null;\n\n\nexport const PdfExportByDocumentIdsLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type PermanentDeleteDocumentType = typeof PermanentDeleteDocumentType[keyof typeof PermanentDeleteDocumentType];\n\n\nexport const PermanentDeleteDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Portugal fiscal document type tracked for ATCUD series numbering.\n */\nexport type PtAtcudSeriesDocumentType = typeof PtAtcudSeriesDocumentType[keyof typeof PtAtcudSeriesDocumentType];\n\n\nexport const PtAtcudSeriesDocumentType = {\n  invoice: 'invoice',\n  advance_invoice: 'advance_invoice',\n  credit_note: 'credit_note',\n  estimate: 'estimate',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Recurrence frequency\n */\nexport type RecurringInvoiceBaseFrequency = typeof RecurringInvoiceBaseFrequency[keyof typeof RecurringInvoiceBaseFrequency];\n\n\nexport const RecurringInvoiceBaseFrequency = {\n  daily: 'daily',\n  weekly: 'weekly',\n  monthly: 'monthly',\n  yearly: 'yearly',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Recurring invoice schedule status\n */\nexport type RecurringInvoiceBaseStatus = typeof RecurringInvoiceBaseStatus[keyof typeof RecurringInvoiceBaseStatus];\n\n\nexport const RecurringInvoiceBaseStatus = {\n  active: 'active',\n  paused: 'paused',\n  completed: 'completed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Type of movable premise: A=vehicle, B=market stall, C=vending machine\n */\nexport type RegisterFursMovablePremiseBodyMovablePremisePremiseType = typeof RegisterFursMovablePremiseBodyMovablePremisePremiseType[keyof typeof RegisterFursMovablePremiseBodyMovablePremisePremiseType];\n\n\nexport const RegisterFursMovablePremiseBodyMovablePremisePremiseType = {\n  A: 'A',\n  B: 'B',\n  C: 'C',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderAdvanceInvoicePreviewEpcQrEnabled = typeof RenderAdvanceInvoicePreviewEpcQrEnabled[keyof typeof RenderAdvanceInvoicePreviewEpcQrEnabled];\n\n\nexport const RenderAdvanceInvoicePreviewEpcQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderAdvanceInvoicePreviewPartial = typeof RenderAdvanceInvoicePreviewPartial[keyof typeof RenderAdvanceInvoicePreviewPartial];\n\n\nexport const RenderAdvanceInvoicePreviewPartial = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderAdvanceInvoicePreviewTemplate = typeof RenderAdvanceInvoicePreviewTemplate[keyof typeof RenderAdvanceInvoicePreviewTemplate];\n\n\nexport const RenderAdvanceInvoicePreviewTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderAdvanceInvoicePreviewUpnQrDisplayMode = typeof RenderAdvanceInvoicePreviewUpnQrDisplayMode[keyof typeof RenderAdvanceInvoicePreviewUpnQrDisplayMode];\n\n\nexport const RenderAdvanceInvoicePreviewUpnQrDisplayMode = {\n  qr_only: 'qr_only',\n  full_slip: 'full_slip',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderAdvanceInvoicePreviewUpnQrEnabled = typeof RenderAdvanceInvoicePreviewUpnQrEnabled[keyof typeof RenderAdvanceInvoicePreviewUpnQrEnabled];\n\n\nexport const RenderAdvanceInvoicePreviewUpnQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderCreditNotePreviewEpcQrEnabled = typeof RenderCreditNotePreviewEpcQrEnabled[keyof typeof RenderCreditNotePreviewEpcQrEnabled];\n\n\nexport const RenderCreditNotePreviewEpcQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderCreditNotePreviewPartial = typeof RenderCreditNotePreviewPartial[keyof typeof RenderCreditNotePreviewPartial];\n\n\nexport const RenderCreditNotePreviewPartial = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderCreditNotePreviewTemplate = typeof RenderCreditNotePreviewTemplate[keyof typeof RenderCreditNotePreviewTemplate];\n\n\nexport const RenderCreditNotePreviewTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderCreditNotePreviewUpnQrDisplayMode = typeof RenderCreditNotePreviewUpnQrDisplayMode[keyof typeof RenderCreditNotePreviewUpnQrDisplayMode];\n\n\nexport const RenderCreditNotePreviewUpnQrDisplayMode = {\n  qr_only: 'qr_only',\n  full_slip: 'full_slip',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderCreditNotePreviewUpnQrEnabled = typeof RenderCreditNotePreviewUpnQrEnabled[keyof typeof RenderCreditNotePreviewUpnQrEnabled];\n\n\nexport const RenderCreditNotePreviewUpnQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDeliveryNotePreviewEpcQrEnabled = typeof RenderDeliveryNotePreviewEpcQrEnabled[keyof typeof RenderDeliveryNotePreviewEpcQrEnabled];\n\n\nexport const RenderDeliveryNotePreviewEpcQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDeliveryNotePreviewPartial = typeof RenderDeliveryNotePreviewPartial[keyof typeof RenderDeliveryNotePreviewPartial];\n\n\nexport const RenderDeliveryNotePreviewPartial = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDeliveryNotePreviewTemplate = typeof RenderDeliveryNotePreviewTemplate[keyof typeof RenderDeliveryNotePreviewTemplate];\n\n\nexport const RenderDeliveryNotePreviewTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDeliveryNotePreviewUpnQrDisplayMode = typeof RenderDeliveryNotePreviewUpnQrDisplayMode[keyof typeof RenderDeliveryNotePreviewUpnQrDisplayMode];\n\n\nexport const RenderDeliveryNotePreviewUpnQrDisplayMode = {\n  qr_only: 'qr_only',\n  full_slip: 'full_slip',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDeliveryNotePreviewUpnQrEnabled = typeof RenderDeliveryNotePreviewUpnQrEnabled[keyof typeof RenderDeliveryNotePreviewUpnQrEnabled];\n\n\nexport const RenderDeliveryNotePreviewUpnQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDocumentHtmlTemplate = typeof RenderDocumentHtmlTemplate[keyof typeof RenderDocumentHtmlTemplate];\n\n\nexport const RenderDocumentHtmlTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderDocumentPdfTemplate = typeof RenderDocumentPdfTemplate[keyof typeof RenderDocumentPdfTemplate];\n\n\nexport const RenderDocumentPdfTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderEstimatePreviewEpcQrEnabled = typeof RenderEstimatePreviewEpcQrEnabled[keyof typeof RenderEstimatePreviewEpcQrEnabled];\n\n\nexport const RenderEstimatePreviewEpcQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderEstimatePreviewPartial = typeof RenderEstimatePreviewPartial[keyof typeof RenderEstimatePreviewPartial];\n\n\nexport const RenderEstimatePreviewPartial = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderEstimatePreviewTemplate = typeof RenderEstimatePreviewTemplate[keyof typeof RenderEstimatePreviewTemplate];\n\n\nexport const RenderEstimatePreviewTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderEstimatePreviewUpnQrDisplayMode = typeof RenderEstimatePreviewUpnQrDisplayMode[keyof typeof RenderEstimatePreviewUpnQrDisplayMode];\n\n\nexport const RenderEstimatePreviewUpnQrDisplayMode = {\n  qr_only: 'qr_only',\n  full_slip: 'full_slip',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderEstimatePreviewUpnQrEnabled = typeof RenderEstimatePreviewUpnQrEnabled[keyof typeof RenderEstimatePreviewUpnQrEnabled];\n\n\nexport const RenderEstimatePreviewUpnQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderInvoicePreviewEpcQrEnabled = typeof RenderInvoicePreviewEpcQrEnabled[keyof typeof RenderInvoicePreviewEpcQrEnabled];\n\n\nexport const RenderInvoicePreviewEpcQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderInvoicePreviewPartial = typeof RenderInvoicePreviewPartial[keyof typeof RenderInvoicePreviewPartial];\n\n\nexport const RenderInvoicePreviewPartial = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderInvoicePreviewTemplate = typeof RenderInvoicePreviewTemplate[keyof typeof RenderInvoicePreviewTemplate];\n\n\nexport const RenderInvoicePreviewTemplate = {\n  modern: 'modern',\n  classic: 'classic',\n  condensed: 'condensed',\n  minimal: 'minimal',\n  fashion: 'fashion',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderInvoicePreviewUpnQrDisplayMode = typeof RenderInvoicePreviewUpnQrDisplayMode[keyof typeof RenderInvoicePreviewUpnQrDisplayMode];\n\n\nexport const RenderInvoicePreviewUpnQrDisplayMode = {\n  qr_only: 'qr_only',\n  full_slip: 'full_slip',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RenderInvoicePreviewUpnQrEnabled = typeof RenderInvoicePreviewUpnQrEnabled[keyof typeof RenderInvoicePreviewUpnQrEnabled];\n\n\nexport const RenderInvoicePreviewUpnQrEnabled = {\n  true: 'true',\n  false: 'false',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type RestoreDocumentType = typeof RestoreDocumentType[keyof typeof RestoreDocumentType];\n\n\nexport const RestoreDocumentType = {\n  invoice: 'invoice',\n  estimate: 'estimate',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n  delivery_note: 'delivery_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200FilingKind = typeof ReviewSloveniaYearlyNormiraniReport200FilingKind[keyof typeof ReviewSloveniaYearlyNormiraniReport200FilingKind];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200FilingKind = {\n  regular_annual: 'regular_annual',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemAffectedDocumentsItemType = typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemAffectedDocumentsItemType[keyof typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemAffectedDocumentsItemType];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemAffectedDocumentsItemType = {\n  invoice: 'invoice',\n  credit_note: 'credit_note',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemOfficialSourcesItemIssuer = typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemOfficialSourcesItemIssuer[keyof typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemOfficialSourcesItemIssuer];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemOfficialSourcesItemIssuer = {\n  FURS: 'FURS',\n  PISRS: 'PISRS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemSeverity = typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemSeverity[keyof typeof ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemSeverity];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200IssueDetailsItemSeverity = {\n  info: 'info',\n  warning: 'warning',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Preferred Slovenian accounting export format.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileAccountingExportsPreferredFormat = typeof ReviewSloveniaYearlyNormiraniReport200ProfileAccountingExportsPreferredFormat[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileAccountingExportsPreferredFormat] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileAccountingExportsPreferredFormat = {\n  vod_xml: 'vod_xml',\n  vasco_xml: 'vasco_xml',\n  minimax_xml: 'minimax_xml',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileBusinessForm = typeof ReviewSloveniaYearlyNormiraniReport200ProfileBusinessForm[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileBusinessForm] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileBusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileBusinessFormSource = typeof ReviewSloveniaYearlyNormiraniReport200ProfileBusinessFormSource[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileBusinessFormSource];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileBusinessFormSource = {\n  stored: 'stored',\n  registry: 'registry',\n  unknown: 'unknown',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Income tax regime used by the Slovenian entity.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileIncomeTaxRegime = typeof ReviewSloveniaYearlyNormiraniReport200ProfileIncomeTaxRegime[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileIncomeTaxRegime] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileIncomeTaxRegime = {\n  normirani: 'normirani',\n  dejanski: 'dejanski',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileInferredBusinessForm = typeof ReviewSloveniaYearlyNormiraniReport200ProfileInferredBusinessForm[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileInferredBusinessForm] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileInferredBusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Tax residency status for Slovenian yearly reporting.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileTaxResidency = typeof ReviewSloveniaYearlyNormiraniReport200ProfileTaxResidency[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileTaxResidency] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileTaxResidency = {\n  resident: 'resident',\n  non_resident: 'non_resident',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Slovenia-specific VAT subject subtype.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileVatProfile = typeof ReviewSloveniaYearlyNormiraniReport200ProfileVatProfile[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileVatProfile] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileVatProfile = {\n  standard: 'standard',\n  special_vat_identified: 'special_vat_identified',\n  non_vat_subject: 'non_vat_subject',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Accounting / records mode used in the filing.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingAccountingType = typeof ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingAccountingType[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingAccountingType] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingAccountingType = {\n  records: 'records',\n  single_entry: 'single_entry',\n  double_entry: 'double_entry',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Insurance basis used by normirani rules.\n * @nullable\n */\nexport type ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingNormiranecInsuranceBasis = typeof ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingNormiranecInsuranceBasis[keyof typeof ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingNormiranecInsuranceBasis] | null;\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200ProfileYearlyReportingNormiranecInsuranceBasis = {\n  full_time_self_employed: 'full_time_self_employed',\n  other: 'other',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type ReviewSloveniaYearlyNormiraniReport200WarningsItemSeverity = typeof ReviewSloveniaYearlyNormiraniReport200WarningsItemSeverity[keyof typeof ReviewSloveniaYearlyNormiraniReport200WarningsItemSeverity];\n\n\nexport const ReviewSloveniaYearlyNormiraniReport200WarningsItemSeverity = {\n  info: 'info',\n  warning: 'warning',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Email send status\n */\nexport type SendDocument200Status = typeof SendDocument200Status[keyof typeof SendDocument200Status];\n\n\nexport const SendDocument200Status = {\n  sent: 'sent',\n  queued: 'queued',\n  skipped: 'skipped',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Email send status\n */\nexport type SendEmail200Status = typeof SendEmail200Status[keyof typeof SendEmail200Status];\n\n\nexport const SendEmail200Status = {\n  sent: 'sent',\n  queued: 'queued',\n  skipped: 'skipped',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override the PDF and shareable-link label language. Defaults to the explicit locale or the entity's locale.\n */\nexport type SendEmailBodyLanguage = typeof SendEmailBodyLanguage[keyof typeof SendEmailBodyLanguage];\n\n\nexport const SendEmailBodyLanguage = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Override PDF and shareable-link formatting locale. When omitted or null, defaults to the entity's locale. Use this to change date and number formatting per request.\n * @nullable\n */\nexport type SendEmailBodyLocale = typeof SendEmailBodyLocale[keyof typeof SendEmailBodyLocale] | null;\n\n\nexport const SendEmailBodyLocale = {\n  'en-US': 'en-US',\n  'de-DE': 'de-DE',\n  'it-IT': 'it-IT',\n  'fr-FR': 'fr-FR',\n  'es-ES': 'es-ES',\n  'sl-SI': 'sl-SI',\n  'pt-PT': 'pt-PT',\n  'nl-NL': 'nl-NL',\n  'pl-PL': 'pl-PL',\n  'hr-HR': 'hr-HR',\n  'sv-SE': 'sv-SE',\n  'fi-FI': 'fi-FI',\n  'et-EE': 'et-EE',\n  'bg-BG': 'bg-BG',\n  'cs-CZ': 'cs-CZ',\n  'sk-SK': 'sk-SK',\n  'nb-NO': 'nb-NO',\n  'is-IS': 'is-IS',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Export job status\n */\nexport type StartEslogExport202Status = typeof StartEslogExport202Status[keyof typeof StartEslogExport202Status];\n\n\nexport const StartEslogExport202Status = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Export job status\n */\nexport type StartPdfExport202Status = typeof StartPdfExport202Status[keyof typeof StartPdfExport202Status];\n\n\nexport const StartPdfExport202Status = {\n  pending: 'pending',\n  processing: 'processing',\n  completed: 'completed',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Aggregation type\n */\nexport type StatsQueryRequestMetricsItemType = typeof StatsQueryRequestMetricsItemType[keyof typeof StatsQueryRequestMetricsItemType];\n\n\nexport const StatsQueryRequestMetricsItemType = {\n  count: 'count',\n  sum: 'sum',\n  avg: 'avg',\n  min: 'min',\n  max: 'max',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Sort direction\n */\nexport type StatsQueryRequestOrderByItemDirection = typeof StatsQueryRequestOrderByItemDirection[keyof typeof StatsQueryRequestOrderByItemDirection];\n\n\nexport const StatsQueryRequestOrderByItemDirection = {\n  asc: 'asc',\n  desc: 'desc',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Table to query\n */\nexport type StatsQueryRequestTable = typeof StatsQueryRequestTable[keyof typeof StatsQueryRequestTable];\n\n\nexport const StatsQueryRequestTable = {\n  invoices: 'invoices',\n  estimates: 'estimates',\n  credit_notes: 'credit_notes',\n  advance_invoices: 'advance_invoices',\n  payments: 'payments',\n  customers: 'customers',\n  items: 'items',\n  invoice_taxes: 'invoice_taxes',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type StripeAppEntityUpdateSettingsBodyAutoInvoiceEventsItem = typeof StripeAppEntityUpdateSettingsBodyAutoInvoiceEventsItem[keyof typeof StripeAppEntityUpdateSettingsBodyAutoInvoiceEventsItem];\n\n\nexport const StripeAppEntityUpdateSettingsBodyAutoInvoiceEventsItem = {\n  payment_intentsucceeded: 'payment_intent.succeeded',\n  invoicepaid: 'invoice.paid',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type StripeAppUpdateSettingsBodyAutoInvoiceEventsItem = typeof StripeAppUpdateSettingsBodyAutoInvoiceEventsItem[keyof typeof StripeAppUpdateSettingsBodyAutoInvoiceEventsItem];\n\n\nexport const StripeAppUpdateSettingsBodyAutoInvoiceEventsItem = {\n  payment_intentsucceeded: 'payment_intent.succeeded',\n  invoicepaid: 'invoice.paid',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Determined transaction type based on geography and tax status. 3w_b2b/3w_b2c = third-world (non-EU) B2B/B2C.\n * @nullable\n */\nexport type TransactionTypeCheckResponseTransactionType = typeof TransactionTypeCheckResponseTransactionType[keyof typeof TransactionTypeCheckResponseTransactionType] | null;\n\n\nexport const TransactionTypeCheckResponseTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateAccountWebhookBodyEventsItem = typeof UpdateAccountWebhookBodyEventsItem[keyof typeof UpdateAccountWebhookBodyEventsItem];\n\n\nexport const UpdateAccountWebhookBodyEventsItem = {\n  white_label_subscriptionsubscribed: 'white_label_subscription.subscribed',\n  white_label_subscriptionupgraded: 'white_label_subscription.upgraded',\n  white_label_subscriptiondowngrade_scheduled: 'white_label_subscription.downgrade_scheduled',\n  white_label_subscriptiondowngraded: 'white_label_subscription.downgraded',\n  white_label_subscriptioncancellation_scheduled: 'white_label_subscription.cancellation_scheduled',\n  white_label_subscriptioncancelled: 'white_label_subscription.cancelled',\n  white_label_subscriptionrenewed: 'white_label_subscription.renewed',\n  white_label_subscriptionexpired: 'white_label_subscription.expired',\n  white_label_subscriptionpayment_failed: 'white_label_subscription.payment_failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * New role to assign to the user\n */\nexport type UpdateEntityUserRoleBodyRole = typeof UpdateEntityUserRoleBodyRole[keyof typeof UpdateEntityUserRoleBodyRole];\n\n\nexport const UpdateEntityUserRoleBodyRole = {\n  viewer: 'viewer',\n  editor: 'editor',\n  admin: 'admin',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Document title type. \"estimate\" or \"proforma_invoice\".\n */\nexport type UpdateEstimateTitleType = typeof UpdateEstimateTitleType[keyof typeof UpdateEstimateTitleType];\n\n\nexport const UpdateEstimateTitleType = {\n  estimate: 'estimate',\n  proforma_invoice: 'proforma_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Certificate status\n */\nexport type UpdateFinaSettings200CertificateStatus = typeof UpdateFinaSettings200CertificateStatus[keyof typeof UpdateFinaSettings200CertificateStatus];\n\n\nexport const UpdateFinaSettings200CertificateStatus = {\n  valid: 'valid',\n  expiring_soon: 'expiring_soon',\n  expired: 'expired',\n  missing: 'missing',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering sequence: P (per premise) or N (per device)\n */\nexport type UpdateFinaSettings200NumberingSequence = typeof UpdateFinaSettings200NumberingSequence[keyof typeof UpdateFinaSettings200NumberingSequence];\n\n\nexport const UpdateFinaSettings200NumberingSequence = {\n  N: 'N',\n  P: 'P',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering sequence: P (per premise) or N (per device)\n */\nexport type UpdateFinaSettingsBodyNumberingSequence = typeof UpdateFinaSettingsBodyNumberingSequence[keyof typeof UpdateFinaSettingsBodyNumberingSequence];\n\n\nexport const UpdateFinaSettingsBodyNumberingSequence = {\n  N: 'N',\n  P: 'P',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Certificate status\n */\nexport type UpdateFursSettings200CertificateStatus = typeof UpdateFursSettings200CertificateStatus[keyof typeof UpdateFursSettings200CertificateStatus];\n\n\nexport const UpdateFursSettings200CertificateStatus = {\n  valid: 'valid',\n  expiring_soon: 'expiring_soon',\n  expired: 'expired',\n  missing: 'missing',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering strategy\n */\nexport type UpdateFursSettings200NumberingStrategy = typeof UpdateFursSettings200NumberingStrategy[keyof typeof UpdateFursSettings200NumberingStrategy];\n\n\nexport const UpdateFursSettings200NumberingStrategy = {\n  B: 'B',\n  C: 'C',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Numbering strategy: B (device-level) or C (centralized)\n */\nexport type UpdateFursSettingsBodyNumberingStrategy = typeof UpdateFursSettingsBodyNumberingStrategy[keyof typeof UpdateFursSettingsBodyNumberingStrategy];\n\n\nexport const UpdateFursSettingsBodyNumberingStrategy = {\n  B: 'B',\n  C: 'C',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * @nullable\n */\nexport type UpdateIncomingPurchaseDocumentBodyTransactionType = typeof UpdateIncomingPurchaseDocumentBodyTransactionType[keyof typeof UpdateIncomingPurchaseDocumentBodyTransactionType] | null;\n\n\nexport const UpdateIncomingPurchaseDocumentBodyTransactionType = {\n  domestic: 'domestic',\n  intra_eu_b2b: 'intra_eu_b2b',\n  intra_eu_b2c: 'intra_eu_b2c',\n  '3w_b2b': '3w_b2b',\n  '3w_b2c': '3w_b2c',\n  export: 'export',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateIncomingPurchaseDocumentBodyType = typeof UpdateIncomingPurchaseDocumentBodyType[keyof typeof UpdateIncomingPurchaseDocumentBodyType];\n\n\nexport const UpdateIncomingPurchaseDocumentBodyType = {\n  invoice: 'invoice',\n  credit_note: 'credit_note',\n  advance_invoice: 'advance_invoice',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Item classification used for Portugal SAF-T item/service typing.\n * @nullable\n */\nexport type UpdateItemBodyClassification = typeof UpdateItemBodyClassification[keyof typeof UpdateItemBodyClassification] | null;\n\n\nexport const UpdateItemBodyClassification = {\n  product: 'product',\n  service: 'service',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Order payment status\n */\nexport type UpdateOrderBodyPaymentStatus = typeof UpdateOrderBodyPaymentStatus[keyof typeof UpdateOrderBodyPaymentStatus];\n\n\nexport const UpdateOrderBodyPaymentStatus = {\n  unpaid: 'unpaid',\n  paid: 'paid',\n  partially_paid: 'partially_paid',\n  refunded: 'refunded',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateOrderIntegrationBodyAutoProcessOn = typeof UpdateOrderIntegrationBodyAutoProcessOn[keyof typeof UpdateOrderIntegrationBodyAutoProcessOn];\n\n\nexport const UpdateOrderIntegrationBodyAutoProcessOn = {\n  created: 'created',\n  paid: 'paid',\n  fulfilled: 'fulfilled',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Payment type/method\n */\nexport type UpdatePaymentBodyType = typeof UpdatePaymentBodyType[keyof typeof UpdatePaymentBodyType];\n\n\nexport const UpdatePaymentBodyType = {\n  cash: 'cash',\n  bank_transfer: 'bank_transfer',\n  card: 'card',\n  check: 'check',\n  paypal: 'paypal',\n  coupon: 'coupon',\n  other: 'other',\n  credit_note: 'credit_note',\n  advance: 'advance',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateRecurringInvoiceBodyFrequency = typeof UpdateRecurringInvoiceBodyFrequency[keyof typeof UpdateRecurringInvoiceBodyFrequency];\n\n\nexport const UpdateRecurringInvoiceBodyFrequency = {\n  daily: 'daily',\n  weekly: 'weekly',\n  monthly: 'monthly',\n  yearly: 'yearly',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Preferred Slovenian accounting export format.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200AccountingExportsPreferredFormat = typeof UpdateSloveniaTaxProfile200AccountingExportsPreferredFormat[keyof typeof UpdateSloveniaTaxProfile200AccountingExportsPreferredFormat] | null;\n\n\nexport const UpdateSloveniaTaxProfile200AccountingExportsPreferredFormat = {\n  vod_xml: 'vod_xml',\n  vasco_xml: 'vasco_xml',\n  minimax_xml: 'minimax_xml',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200BusinessForm = typeof UpdateSloveniaTaxProfile200BusinessForm[keyof typeof UpdateSloveniaTaxProfile200BusinessForm] | null;\n\n\nexport const UpdateSloveniaTaxProfile200BusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateSloveniaTaxProfile200BusinessFormSource = typeof UpdateSloveniaTaxProfile200BusinessFormSource[keyof typeof UpdateSloveniaTaxProfile200BusinessFormSource];\n\n\nexport const UpdateSloveniaTaxProfile200BusinessFormSource = {\n  stored: 'stored',\n  registry: 'registry',\n  unknown: 'unknown',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Income tax regime used by the Slovenian entity.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200IncomeTaxRegime = typeof UpdateSloveniaTaxProfile200IncomeTaxRegime[keyof typeof UpdateSloveniaTaxProfile200IncomeTaxRegime] | null;\n\n\nexport const UpdateSloveniaTaxProfile200IncomeTaxRegime = {\n  normirani: 'normirani',\n  dejanski: 'dejanski',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200InferredBusinessForm = typeof UpdateSloveniaTaxProfile200InferredBusinessForm[keyof typeof UpdateSloveniaTaxProfile200InferredBusinessForm] | null;\n\n\nexport const UpdateSloveniaTaxProfile200InferredBusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Tax residency status for Slovenian yearly reporting.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200TaxResidency = typeof UpdateSloveniaTaxProfile200TaxResidency[keyof typeof UpdateSloveniaTaxProfile200TaxResidency] | null;\n\n\nexport const UpdateSloveniaTaxProfile200TaxResidency = {\n  resident: 'resident',\n  non_resident: 'non_resident',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Slovenia-specific VAT subject subtype.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200VatProfile = typeof UpdateSloveniaTaxProfile200VatProfile[keyof typeof UpdateSloveniaTaxProfile200VatProfile] | null;\n\n\nexport const UpdateSloveniaTaxProfile200VatProfile = {\n  standard: 'standard',\n  special_vat_identified: 'special_vat_identified',\n  non_vat_subject: 'non_vat_subject',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Accounting / records mode used in the filing.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200YearlyReportingAccountingType = typeof UpdateSloveniaTaxProfile200YearlyReportingAccountingType[keyof typeof UpdateSloveniaTaxProfile200YearlyReportingAccountingType] | null;\n\n\nexport const UpdateSloveniaTaxProfile200YearlyReportingAccountingType = {\n  records: 'records',\n  single_entry: 'single_entry',\n  double_entry: 'double_entry',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Insurance basis used by normirani rules.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis = typeof UpdateSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis[keyof typeof UpdateSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis] | null;\n\n\nexport const UpdateSloveniaTaxProfile200YearlyReportingNormiranecInsuranceBasis = {\n  full_time_self_employed: 'full_time_self_employed',\n  other: 'other',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Stored preferred export format for Slovenian accounting handoff.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyAccountingExportsPreferredFormat = typeof UpdateSloveniaTaxProfileBodyAccountingExportsPreferredFormat[keyof typeof UpdateSloveniaTaxProfileBodyAccountingExportsPreferredFormat] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyAccountingExportsPreferredFormat = {\n  vod_xml: 'vod_xml',\n  vasco_xml: 'vasco_xml',\n  minimax_xml: 'minimax_xml',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Canonical Slovenian legal form for the entity.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyBusinessForm = typeof UpdateSloveniaTaxProfileBodyBusinessForm[keyof typeof UpdateSloveniaTaxProfileBodyBusinessForm] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyBusinessForm = {\n  sp: 'sp',\n  doo: 'doo',\n  dno: 'dno',\n  club: 'club',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Income tax regime used by the Slovenian entity.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyIncomeTaxRegime = typeof UpdateSloveniaTaxProfileBodyIncomeTaxRegime[keyof typeof UpdateSloveniaTaxProfileBodyIncomeTaxRegime] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyIncomeTaxRegime = {\n  normirani: 'normirani',\n  dejanski: 'dejanski',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Tax residency status for Slovenian yearly reporting.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyTaxResidency = typeof UpdateSloveniaTaxProfileBodyTaxResidency[keyof typeof UpdateSloveniaTaxProfileBodyTaxResidency] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyTaxResidency = {\n  resident: 'resident',\n  non_resident: 'non_resident',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Slovenia-specific VAT subject subtype.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyVatProfile = typeof UpdateSloveniaTaxProfileBodyVatProfile[keyof typeof UpdateSloveniaTaxProfileBodyVatProfile] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyVatProfile = {\n  standard: 'standard',\n  special_vat_identified: 'special_vat_identified',\n  non_vat_subject: 'non_vat_subject',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Accounting or records mode used for the yearly filing.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyYearlyReportingAccountingType = typeof UpdateSloveniaTaxProfileBodyYearlyReportingAccountingType[keyof typeof UpdateSloveniaTaxProfileBodyYearlyReportingAccountingType] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyYearlyReportingAccountingType = {\n  records: 'records',\n  single_entry: 'single_entry',\n  double_entry: 'double_entry',\n} as const;\n",
    "/**\n * Generated by orval v8.2.0 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * Insurance basis used to determine the applicable normirani rules.\n * @nullable\n */\nexport type UpdateSloveniaTaxProfileBodyYearlyReportingNormiranecInsuranceBasis = typeof UpdateSloveniaTaxProfileBodyYearlyReportingNormiranecInsuranceBasis[keyof typeof UpdateSloveniaTaxProfileBodyYearlyReportingNormiranecInsuranceBasis] | null;\n\n\nexport const UpdateSloveniaTaxProfileBodyYearlyReportingNormiranecInsuranceBasis = {\n  full_time_self_employed: 'full_time_self_employed',\n  other: 'other',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type UpdateWebhookBodyEventsItem = typeof UpdateWebhookBodyEventsItem[keyof typeof UpdateWebhookBodyEventsItem];\n\n\nexport const UpdateWebhookBodyEventsItem = {\n  invoicecreated: 'invoice.created',\n  invoiceupdated: 'invoice.updated',\n  invoicesent: 'invoice.sent',\n  invoicepaid: 'invoice.paid',\n  invoiceoverdue: 'invoice.overdue',\n  invoicecancelled: 'invoice.cancelled',\n  invoicedeleted: 'invoice.deleted',\n  invoicerestored: 'invoice.restored',\n  invoicevoided: 'invoice.voided',\n  invoicefinalized: 'invoice.finalized',\n  customercreated: 'customer.created',\n  customerupdated: 'customer.updated',\n  customerdeleted: 'customer.deleted',\n  customerrestored: 'customer.restored',\n  customerpermanently_deleted: 'customer.permanently_deleted',\n  paymentreceived: 'payment.received',\n  paymentfailed: 'payment.failed',\n  paymentdeleted: 'payment.deleted',\n  paymentrestored: 'payment.restored',\n  paymentpermanently_deleted: 'payment.permanently_deleted',\n  estimatecreated: 'estimate.created',\n  estimatesent: 'estimate.sent',\n  estimateaccepted: 'estimate.accepted',\n  estimaterejected: 'estimate.rejected',\n  estimatedeleted: 'estimate.deleted',\n  estimaterestored: 'estimate.restored',\n  credit_notecreated: 'credit_note.created',\n  credit_noteissued: 'credit_note.issued',\n  credit_notevoided: 'credit_note.voided',\n  credit_notedeleted: 'credit_note.deleted',\n  credit_noterestored: 'credit_note.restored',\n  advance_invoicecreated: 'advance_invoice.created',\n  advance_invoicepaid: 'advance_invoice.paid',\n  advance_invoiceapplied: 'advance_invoice.applied',\n  advance_invoicevoided: 'advance_invoice.voided',\n  advance_invoicedeleted: 'advance_invoice.deleted',\n  advance_invoicerestored: 'advance_invoice.restored',\n  itemcreated: 'item.created',\n  itemupdated: 'item.updated',\n  itemdeleted: 'item.deleted',\n  itemrestored: 'item.restored',\n  itempermanently_deleted: 'item.permanently_deleted',\n  taxcreated: 'tax.created',\n  taxupdated: 'tax.updated',\n  taxdeleted: 'tax.deleted',\n  taxrestored: 'tax.restored',\n  taxpermanently_deleted: 'tax.permanently_deleted',\n  recurring_invoicecreated: 'recurring_invoice.created',\n  recurring_invoiceupdated: 'recurring_invoice.updated',\n  recurring_invoicedeleted: 'recurring_invoice.deleted',\n  recurring_invoicerestored: 'recurring_invoice.restored',\n  recurring_invoicepermanently_deleted: 'recurring_invoice.permanently_deleted',\n  recurring_invoicepaused: 'recurring_invoice.paused',\n  recurring_invoiceresumed: 'recurring_invoice.resumed',\n  recurring_invoiceinvoice_generated: 'recurring_invoice.invoice_generated',\n  recurring_invoicegeneration_failed: 'recurring_invoice.generation_failed',\n  recurring_invoicecompleted: 'recurring_invoice.completed',\n  stripe_appconnected: 'stripe_app.connected',\n  stripe_appdisconnected: 'stripe_app.disconnected',\n  stripe_appsettings_updated: 'stripe_app.settings_updated',\n  ordercreated: 'order.created',\n  orderupdated: 'order.updated',\n  orderdeleted: 'order.deleted',\n  orderrestored: 'order.restored',\n  orderpermanently_deleted: 'order.permanently_deleted',\n  orderprocessed: 'order.processed',\n  ordercancelled: 'order.cancelled',\n  orderfailed: 'order.failed',\n  order_integrationcreated: 'order_integration.created',\n  order_integrationupdated: 'order_integration.updated',\n  order_integrationdeleted: 'order_integration.deleted',\n  delivery_notecreated: 'delivery_note.created',\n  delivery_notesent: 'delivery_note.sent',\n  delivery_notecancelled: 'delivery_note.cancelled',\n  delivery_notevoided: 'delivery_note.voided',\n  delivery_notedeleted: 'delivery_note.deleted',\n  delivery_noterestored: 'delivery_note.restored',\n  e_invoicingsubmissioncreated: 'e_invoicing.submission.created',\n  e_invoicingsubmissiondelivered: 'e_invoicing.submission.delivered',\n  e_invoicingsubmissionfailed: 'e_invoicing.submission.failed',\n  e_invoicingsupplieronboarded: 'e_invoicing.supplier.onboarded',\n  e_invoicingsupplierrejected: 'e_invoicing.supplier.rejected',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\n/**\n * File category (logo, signature, or attachment)\n */\nexport type UploadFileBodyCategory = typeof UploadFileBodyCategory[keyof typeof UploadFileBodyCategory];\n\n\nexport const UploadFileBodyCategory = {\n  logo: 'logo',\n  signature: 'signature',\n  attachment: 'attachment',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WebhookDeliveryStatus = typeof WebhookDeliveryStatus[keyof typeof WebhookDeliveryStatus];\n\n\nexport const WebhookDeliveryStatus = {\n  pending: 'pending',\n  success: 'success',\n  failed: 'failed',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WebhookResponseEventsItem = typeof WebhookResponseEventsItem[keyof typeof WebhookResponseEventsItem];\n\n\nexport const WebhookResponseEventsItem = {\n  invoicecreated: 'invoice.created',\n  invoiceupdated: 'invoice.updated',\n  invoicesent: 'invoice.sent',\n  invoicepaid: 'invoice.paid',\n  invoiceoverdue: 'invoice.overdue',\n  invoicecancelled: 'invoice.cancelled',\n  invoicedeleted: 'invoice.deleted',\n  invoicerestored: 'invoice.restored',\n  invoicevoided: 'invoice.voided',\n  invoicefinalized: 'invoice.finalized',\n  customercreated: 'customer.created',\n  customerupdated: 'customer.updated',\n  customerdeleted: 'customer.deleted',\n  customerrestored: 'customer.restored',\n  customerpermanently_deleted: 'customer.permanently_deleted',\n  paymentreceived: 'payment.received',\n  paymentfailed: 'payment.failed',\n  paymentdeleted: 'payment.deleted',\n  paymentrestored: 'payment.restored',\n  paymentpermanently_deleted: 'payment.permanently_deleted',\n  estimatecreated: 'estimate.created',\n  estimatesent: 'estimate.sent',\n  estimateaccepted: 'estimate.accepted',\n  estimaterejected: 'estimate.rejected',\n  estimatedeleted: 'estimate.deleted',\n  estimaterestored: 'estimate.restored',\n  credit_notecreated: 'credit_note.created',\n  credit_noteissued: 'credit_note.issued',\n  credit_notevoided: 'credit_note.voided',\n  credit_notedeleted: 'credit_note.deleted',\n  credit_noterestored: 'credit_note.restored',\n  advance_invoicecreated: 'advance_invoice.created',\n  advance_invoicepaid: 'advance_invoice.paid',\n  advance_invoiceapplied: 'advance_invoice.applied',\n  advance_invoicevoided: 'advance_invoice.voided',\n  advance_invoicedeleted: 'advance_invoice.deleted',\n  advance_invoicerestored: 'advance_invoice.restored',\n  itemcreated: 'item.created',\n  itemupdated: 'item.updated',\n  itemdeleted: 'item.deleted',\n  itemrestored: 'item.restored',\n  itempermanently_deleted: 'item.permanently_deleted',\n  taxcreated: 'tax.created',\n  taxupdated: 'tax.updated',\n  taxdeleted: 'tax.deleted',\n  taxrestored: 'tax.restored',\n  taxpermanently_deleted: 'tax.permanently_deleted',\n  recurring_invoicecreated: 'recurring_invoice.created',\n  recurring_invoiceupdated: 'recurring_invoice.updated',\n  recurring_invoicedeleted: 'recurring_invoice.deleted',\n  recurring_invoicerestored: 'recurring_invoice.restored',\n  recurring_invoicepermanently_deleted: 'recurring_invoice.permanently_deleted',\n  recurring_invoicepaused: 'recurring_invoice.paused',\n  recurring_invoiceresumed: 'recurring_invoice.resumed',\n  recurring_invoiceinvoice_generated: 'recurring_invoice.invoice_generated',\n  recurring_invoicegeneration_failed: 'recurring_invoice.generation_failed',\n  recurring_invoicecompleted: 'recurring_invoice.completed',\n  stripe_appconnected: 'stripe_app.connected',\n  stripe_appdisconnected: 'stripe_app.disconnected',\n  stripe_appsettings_updated: 'stripe_app.settings_updated',\n  ordercreated: 'order.created',\n  orderupdated: 'order.updated',\n  orderdeleted: 'order.deleted',\n  orderrestored: 'order.restored',\n  orderpermanently_deleted: 'order.permanently_deleted',\n  orderprocessed: 'order.processed',\n  ordercancelled: 'order.cancelled',\n  orderfailed: 'order.failed',\n  order_integrationcreated: 'order_integration.created',\n  order_integrationupdated: 'order_integration.updated',\n  order_integrationdeleted: 'order_integration.deleted',\n  delivery_notecreated: 'delivery_note.created',\n  delivery_notesent: 'delivery_note.sent',\n  delivery_notecancelled: 'delivery_note.cancelled',\n  delivery_notevoided: 'delivery_note.voided',\n  delivery_notedeleted: 'delivery_note.deleted',\n  delivery_noterestored: 'delivery_note.restored',\n  e_invoicingsubmissioncreated: 'e_invoicing.submission.created',\n  e_invoicingsubmissiondelivered: 'e_invoicing.submission.delivered',\n  e_invoicingsubmissionfailed: 'e_invoicing.submission.failed',\n  e_invoicingsupplieronboarded: 'e_invoicing.supplier.onboarded',\n  e_invoicingsupplierrejected: 'e_invoicing.supplier.rejected',\n} as const;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\n\nexport type WebhookWithSecretEventsItem = typeof WebhookWithSecretEventsItem[keyof typeof WebhookWithSecretEventsItem];\n\n\nexport const WebhookWithSecretEventsItem = {\n  invoicecreated: 'invoice.created',\n  invoiceupdated: 'invoice.updated',\n  invoicesent: 'invoice.sent',\n  invoicepaid: 'invoice.paid',\n  invoiceoverdue: 'invoice.overdue',\n  invoicecancelled: 'invoice.cancelled',\n  invoicedeleted: 'invoice.deleted',\n  invoicerestored: 'invoice.restored',\n  invoicevoided: 'invoice.voided',\n  invoicefinalized: 'invoice.finalized',\n  customercreated: 'customer.created',\n  customerupdated: 'customer.updated',\n  customerdeleted: 'customer.deleted',\n  customerrestored: 'customer.restored',\n  customerpermanently_deleted: 'customer.permanently_deleted',\n  paymentreceived: 'payment.received',\n  paymentfailed: 'payment.failed',\n  paymentdeleted: 'payment.deleted',\n  paymentrestored: 'payment.restored',\n  paymentpermanently_deleted: 'payment.permanently_deleted',\n  estimatecreated: 'estimate.created',\n  estimatesent: 'estimate.sent',\n  estimateaccepted: 'estimate.accepted',\n  estimaterejected: 'estimate.rejected',\n  estimatedeleted: 'estimate.deleted',\n  estimaterestored: 'estimate.restored',\n  credit_notecreated: 'credit_note.created',\n  credit_noteissued: 'credit_note.issued',\n  credit_notevoided: 'credit_note.voided',\n  credit_notedeleted: 'credit_note.deleted',\n  credit_noterestored: 'credit_note.restored',\n  advance_invoicecreated: 'advance_invoice.created',\n  advance_invoicepaid: 'advance_invoice.paid',\n  advance_invoiceapplied: 'advance_invoice.applied',\n  advance_invoicevoided: 'advance_invoice.voided',\n  advance_invoicedeleted: 'advance_invoice.deleted',\n  advance_invoicerestored: 'advance_invoice.restored',\n  itemcreated: 'item.created',\n  itemupdated: 'item.updated',\n  itemdeleted: 'item.deleted',\n  itemrestored: 'item.restored',\n  itempermanently_deleted: 'item.permanently_deleted',\n  taxcreated: 'tax.created',\n  taxupdated: 'tax.updated',\n  taxdeleted: 'tax.deleted',\n  taxrestored: 'tax.restored',\n  taxpermanently_deleted: 'tax.permanently_deleted',\n  recurring_invoicecreated: 'recurring_invoice.created',\n  recurring_invoiceupdated: 'recurring_invoice.updated',\n  recurring_invoicedeleted: 'recurring_invoice.deleted',\n  recurring_invoicerestored: 'recurring_invoice.restored',\n  recurring_invoicepermanently_deleted: 'recurring_invoice.permanently_deleted',\n  recurring_invoicepaused: 'recurring_invoice.paused',\n  recurring_invoiceresumed: 'recurring_invoice.resumed',\n  recurring_invoiceinvoice_generated: 'recurring_invoice.invoice_generated',\n  recurring_invoicegeneration_failed: 'recurring_invoice.generation_failed',\n  recurring_invoicecompleted: 'recurring_invoice.completed',\n  stripe_appconnected: 'stripe_app.connected',\n  stripe_appdisconnected: 'stripe_app.disconnected',\n  stripe_appsettings_updated: 'stripe_app.settings_updated',\n  ordercreated: 'order.created',\n  orderupdated: 'order.updated',\n  orderdeleted: 'order.deleted',\n  orderrestored: 'order.restored',\n  orderpermanently_deleted: 'order.permanently_deleted',\n  orderprocessed: 'order.processed',\n  ordercancelled: 'order.cancelled',\n  orderfailed: 'order.failed',\n  order_integrationcreated: 'order_integration.created',\n  order_integrationupdated: 'order_integration.updated',\n  order_integrationdeleted: 'order_integration.deleted',\n  delivery_notecreated: 'delivery_note.created',\n  delivery_notesent: 'delivery_note.sent',\n  delivery_notecancelled: 'delivery_note.cancelled',\n  delivery_notevoided: 'delivery_note.voided',\n  delivery_notedeleted: 'delivery_note.deleted',\n  delivery_noterestored: 'delivery_note.restored',\n  e_invoicingsubmissioncreated: 'e_invoicing.submission.created',\n  e_invoicingsubmissiondelivered: 'e_invoicing.submission.delivered',\n  e_invoicingsubmissionfailed: 'e_invoicing.submission.failed',\n  e_invoicingsupplieronboarded: 'e_invoicing.supplier.onboarded',\n  e_invoicingsupplierrejected: 'e_invoicing.supplier.rejected',\n} as const;\n",
    "export const CLIENT_HEADER_NAME = \"x-spaceinvoices-client\";\n\nexport function getClientHeaders(clientName: string): Record<string, string> {\n  return { [CLIENT_HEADER_NAME]: clientName };\n}\n",
    "/**\n * Custom fetch mutator for Orval-generated code.\n * Handles:\n * - Base URL configuration\n * - Authentication token injection\n * - Response parsing (JSON, Blob, Text)\n *\n * Entity ID is passed via headers in individual requests:\n * sdk.invoices.createInvoice(data, { headers: { 'x-entity-id': 'entity-123' } })\n */\n\nimport { getClientHeaders } from \"../client-headers\";\n\nexport interface FetchConfig {\n  baseUrl: string;\n  getAccessToken: () => string | Promise<string>;\n  clientName?: string;\n  onUnauthorized?: (response: Response) => void;\n}\n\n// Global config - set by SDK initialization\nlet globalConfig: FetchConfig | null = null;\n\n// Global account ID for multi-account support\nlet globalAccountId: string | null = null;\nconst ACTIVE_ACCOUNT_COOKIE = \"l.account\";\n\nexport function setFetchConfig(config: FetchConfig): void {\n  globalConfig = config;\n}\n\n/**\n * Set the global account ID for multi-account support.\n * When set, x-account-id header is automatically added to all SDK requests.\n */\nexport function setAccountId(id: string | null): void {\n  globalAccountId = id;\n}\n\nexport function getAccountId(): string | null {\n  return globalAccountId;\n}\n\nexport function getFetchConfig(): FetchConfig {\n  if (!globalConfig) {\n    throw new Error(\"SDK not initialized. Call new SpaceInvoices() first.\");\n  }\n  return globalConfig;\n}\n\nfunction getBrowserCookie(name: string): string | null {\n  if (typeof document === \"undefined\") return null;\n\n  const match = document.cookie.match(new RegExp(`(?:^|; )${name}=([^;]+)`));\n  if (!match) return null;\n\n  return decodeURIComponent(match[1]);\n}\n\n/**\n * SDK Error class for API errors\n */\nexport class SDKError extends Error {\n  constructor(\n    public status: number,\n    public statusText: string,\n    public body: unknown,\n  ) {\n    super(`${status} ${statusText}`);\n    this.name = \"SDKError\";\n  }\n}\n\n/**\n * Convert HeadersInit to a plain object for merging.\n */\nfunction normalizeHeaders(headers?: HeadersInit): Record<string, string> {\n  if (!headers) return {};\n\n  if (headers instanceof Headers) {\n    const obj: Record<string, string> = {};\n    headers.forEach((value, key) => {\n      obj[key] = value;\n    });\n    return obj;\n  }\n\n  if (Array.isArray(headers)) {\n    const obj: Record<string, string> = {};\n    for (const [key, value] of headers) {\n      obj[key] = value;\n    }\n    return obj;\n  }\n\n  return headers as Record<string, string>;\n}\n\n/**\n * Custom fetch implementation used by all generated API functions.\n * This is the mutator function that Orval will use for all API calls.\n *\n * Returns an object with { data, status, headers } to match the expected response type.\n */\nexport async function customFetch<T>(url: string, options: RequestInit): Promise<T> {\n  const config = getFetchConfig();\n\n  // Resolve access token (may be async)\n  const token = await Promise.resolve(config.getAccessToken());\n\n  // Build full URL\n  const fullUrl = `${config.baseUrl}${url}`;\n\n  // Merge headers - normalize incoming headers first\n  const incomingHeaders = normalizeHeaders(options.headers);\n  const headers: Record<string, string> = {\n    ...incomingHeaders,\n  };\n\n  if (config.clientName) {\n    Object.assign(headers, getClientHeaders(config.clientName));\n  }\n\n  // Add authorization\n  if (token) {\n    headers.Authorization = `Bearer ${token}`;\n  }\n\n  // Add account ID for multi-account support. Fall back to the browser cookie\n  // when the in-memory selection has not been restored yet.\n  const resolvedAccountId =\n    headers[\"x-account-id\"] || headers[\"X-Account-Id\"] || globalAccountId || getBrowserCookie(ACTIVE_ACCOUNT_COOKIE);\n\n  if (resolvedAccountId && !headers[\"x-account-id\"] && !headers[\"X-Account-Id\"]) {\n    headers[\"x-account-id\"] = resolvedAccountId;\n  }\n\n  // Execute request\n  const response = await fetch(fullUrl, {\n    ...options,\n    headers,\n  });\n\n  // Handle unauthorized\n  if (response.status === 401 && config.onUnauthorized) {\n    config.onUnauthorized(response);\n  }\n\n  // Parse response body based on content type\n  let data: unknown;\n\n  const contentLength = response.headers.get(\"content-length\");\n  const contentType = response.headers.get(\"content-type\");\n\n  if (contentLength === \"0\" || response.status === 204) {\n    // Empty response\n    data = undefined;\n  } else if (\n    contentType?.includes(\"application/pdf\") ||\n    contentType?.includes(\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\") ||\n    contentType?.includes(\"application/octet-stream\") ||\n    contentType?.includes(\"application/zip\") ||\n    contentType?.includes(\"application/x-zip-compressed\") ||\n    contentType?.includes(\"image/\")\n  ) {\n    // Binary responses (PDF, ZIP, images, generic binary from CDN redirects)\n    data = await response.blob();\n  } else if (contentType?.includes(\"application/xml\") || contentType?.includes(\"text/xml\")) {\n    // XML responses (e.g. e-SLOG downloads)\n    data = await response.text();\n  } else if (contentType?.includes(\"text/html\")) {\n    // HTML responses (previews)\n    data = await response.text();\n  } else {\n    // Default: JSON (handle errors gracefully)\n    try {\n      data = await response.json();\n    } catch {\n      data = undefined;\n    }\n  }\n\n  // Return in the format expected by generated code\n  return {\n    data,\n    status: response.status,\n    headers: response.headers,\n  } as T;\n}\n\nexport default customFetch;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AccountWebhookDelivery,\n  AccountWebhookResponse,\n  AccountWebhookWithSecret,\n  CreateAccountWebhookBody,\n  DeleteAccountWebhook200,\n  Error,\n  GetAccountWebhookDeliveries200,\n  GetAccountWebhookDeliveriesParams,\n  GetAccountWebhooks200,\n  GetAccountWebhooksParams,\n  UpdateAccountWebhookBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * @summary Create a new account webhook\n */\nexport type createAccountWebhookResponse201 = {\n  data: AccountWebhookWithSecret\n  status: 201\n}\n\nexport type createAccountWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createAccountWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createAccountWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createAccountWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createAccountWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createAccountWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createAccountWebhookResponseSuccess = (createAccountWebhookResponse201) & {\n  headers: Headers;\n};\nexport type createAccountWebhookResponseError = (createAccountWebhookResponse400 | createAccountWebhookResponse401 | createAccountWebhookResponse403 | createAccountWebhookResponse404 | createAccountWebhookResponse422 | createAccountWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type createAccountWebhookResponse = (createAccountWebhookResponseSuccess | createAccountWebhookResponseError)\n\nexport const getCreateAccountWebhookUrl = () => {\n\n\n  \n\n  return `/account-webhooks`\n}\n\nexport const createAccountWebhook = async (createAccountWebhookBody: CreateAccountWebhookBody, options?: RequestInit): Promise<createAccountWebhookResponse> => {\n  \n  return customFetch<createAccountWebhookResponse>(getCreateAccountWebhookUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createAccountWebhookBody,)\n  }\n);}\n  \n\n/**\n * @summary List all account webhooks\n */\nexport type getAccountWebhooksResponse200 = {\n  data: GetAccountWebhooks200\n  status: 200\n}\n\nexport type getAccountWebhooksResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getAccountWebhooksResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAccountWebhooksResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAccountWebhooksResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAccountWebhooksResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAccountWebhooksResponseSuccess = (getAccountWebhooksResponse200) & {\n  headers: Headers;\n};\nexport type getAccountWebhooksResponseError = (getAccountWebhooksResponse400 | getAccountWebhooksResponse401 | getAccountWebhooksResponse403 | getAccountWebhooksResponse404 | getAccountWebhooksResponse500) & {\n  headers: Headers;\n};\n\nexport type getAccountWebhooksResponse = (getAccountWebhooksResponseSuccess | getAccountWebhooksResponseError)\n\nexport const getGetAccountWebhooksUrl = (params?: GetAccountWebhooksParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/account-webhooks?${stringifiedParams}` : `/account-webhooks`\n}\n\nexport const getAccountWebhooks = async (params?: GetAccountWebhooksParams, options?: RequestInit): Promise<getAccountWebhooksResponse> => {\n  \n  return customFetch<getAccountWebhooksResponse>(getGetAccountWebhooksUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Get an account webhook by ID\n */\nexport type getAccountWebhookByIdResponse200 = {\n  data: AccountWebhookResponse\n  status: 200\n}\n\nexport type getAccountWebhookByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAccountWebhookByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAccountWebhookByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAccountWebhookByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAccountWebhookByIdResponseSuccess = (getAccountWebhookByIdResponse200) & {\n  headers: Headers;\n};\nexport type getAccountWebhookByIdResponseError = (getAccountWebhookByIdResponse401 | getAccountWebhookByIdResponse403 | getAccountWebhookByIdResponse404 | getAccountWebhookByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getAccountWebhookByIdResponse = (getAccountWebhookByIdResponseSuccess | getAccountWebhookByIdResponseError)\n\nexport const getGetAccountWebhookByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/account-webhooks/${id}`\n}\n\nexport const getAccountWebhookById = async (id: string, options?: RequestInit): Promise<getAccountWebhookByIdResponse> => {\n  \n  return customFetch<getAccountWebhookByIdResponse>(getGetAccountWebhookByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Update an account webhook\n */\nexport type updateAccountWebhookResponse200 = {\n  data: AccountWebhookResponse\n  status: 200\n}\n\nexport type updateAccountWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateAccountWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateAccountWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateAccountWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateAccountWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateAccountWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateAccountWebhookResponseSuccess = (updateAccountWebhookResponse200) & {\n  headers: Headers;\n};\nexport type updateAccountWebhookResponseError = (updateAccountWebhookResponse400 | updateAccountWebhookResponse401 | updateAccountWebhookResponse403 | updateAccountWebhookResponse404 | updateAccountWebhookResponse422 | updateAccountWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type updateAccountWebhookResponse = (updateAccountWebhookResponseSuccess | updateAccountWebhookResponseError)\n\nexport const getUpdateAccountWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/account-webhooks/${id}`\n}\n\nexport const updateAccountWebhook = async (id: string,\n    updateAccountWebhookBody: UpdateAccountWebhookBody, options?: RequestInit): Promise<updateAccountWebhookResponse> => {\n  \n  return customFetch<updateAccountWebhookResponse>(getUpdateAccountWebhookUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateAccountWebhookBody,)\n  }\n);}\n  \n\n/**\n * @summary Delete an account webhook\n */\nexport type deleteAccountWebhookResponse200 = {\n  data: DeleteAccountWebhook200\n  status: 200\n}\n\nexport type deleteAccountWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteAccountWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteAccountWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteAccountWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteAccountWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteAccountWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteAccountWebhookResponseSuccess = (deleteAccountWebhookResponse200) & {\n  headers: Headers;\n};\nexport type deleteAccountWebhookResponseError = (deleteAccountWebhookResponse400 | deleteAccountWebhookResponse401 | deleteAccountWebhookResponse403 | deleteAccountWebhookResponse404 | deleteAccountWebhookResponse422 | deleteAccountWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteAccountWebhookResponse = (deleteAccountWebhookResponseSuccess | deleteAccountWebhookResponseError)\n\nexport const getDeleteAccountWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/account-webhooks/${id}`\n}\n\nexport const deleteAccountWebhook = async (id: string, options?: RequestInit): Promise<deleteAccountWebhookResponse> => {\n  \n  return customFetch<deleteAccountWebhookResponse>(getDeleteAccountWebhookUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Test an account webhook\n */\nexport type testAccountWebhookResponse200 = {\n  data: AccountWebhookDelivery\n  status: 200\n}\n\nexport type testAccountWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type testAccountWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type testAccountWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type testAccountWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type testAccountWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type testAccountWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type testAccountWebhookResponseSuccess = (testAccountWebhookResponse200) & {\n  headers: Headers;\n};\nexport type testAccountWebhookResponseError = (testAccountWebhookResponse400 | testAccountWebhookResponse401 | testAccountWebhookResponse403 | testAccountWebhookResponse404 | testAccountWebhookResponse422 | testAccountWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type testAccountWebhookResponse = (testAccountWebhookResponseSuccess | testAccountWebhookResponseError)\n\nexport const getTestAccountWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/account-webhooks/${id}/test`\n}\n\nexport const testAccountWebhook = async (id: string, options?: RequestInit): Promise<testAccountWebhookResponse> => {\n  \n  return customFetch<testAccountWebhookResponse>(getTestAccountWebhookUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary List account webhook deliveries\n */\nexport type getAccountWebhookDeliveriesResponse200 = {\n  data: GetAccountWebhookDeliveries200\n  status: 200\n}\n\nexport type getAccountWebhookDeliveriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getAccountWebhookDeliveriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAccountWebhookDeliveriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAccountWebhookDeliveriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAccountWebhookDeliveriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAccountWebhookDeliveriesResponseSuccess = (getAccountWebhookDeliveriesResponse200) & {\n  headers: Headers;\n};\nexport type getAccountWebhookDeliveriesResponseError = (getAccountWebhookDeliveriesResponse400 | getAccountWebhookDeliveriesResponse401 | getAccountWebhookDeliveriesResponse403 | getAccountWebhookDeliveriesResponse404 | getAccountWebhookDeliveriesResponse500) & {\n  headers: Headers;\n};\n\nexport type getAccountWebhookDeliveriesResponse = (getAccountWebhookDeliveriesResponseSuccess | getAccountWebhookDeliveriesResponseError)\n\nexport const getGetAccountWebhookDeliveriesUrl = (id: string,\n    params?: GetAccountWebhookDeliveriesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/account-webhooks/${id}/deliveries?${stringifiedParams}` : `/account-webhooks/${id}/deliveries`\n}\n\nexport const getAccountWebhookDeliveries = async (id: string,\n    params?: GetAccountWebhookDeliveriesParams, options?: RequestInit): Promise<getAccountWebhookDeliveriesResponse> => {\n  \n  return customFetch<getAccountWebhookDeliveriesResponse>(getGetAccountWebhookDeliveriesUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Rotate account webhook secret\n */\nexport type rotateAccountWebhookSecretResponse200 = {\n  data: AccountWebhookWithSecret\n  status: 200\n}\n\nexport type rotateAccountWebhookSecretResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type rotateAccountWebhookSecretResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type rotateAccountWebhookSecretResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type rotateAccountWebhookSecretResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type rotateAccountWebhookSecretResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type rotateAccountWebhookSecretResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type rotateAccountWebhookSecretResponseSuccess = (rotateAccountWebhookSecretResponse200) & {\n  headers: Headers;\n};\nexport type rotateAccountWebhookSecretResponseError = (rotateAccountWebhookSecretResponse400 | rotateAccountWebhookSecretResponse401 | rotateAccountWebhookSecretResponse403 | rotateAccountWebhookSecretResponse404 | rotateAccountWebhookSecretResponse422 | rotateAccountWebhookSecretResponse500) & {\n  headers: Headers;\n};\n\nexport type rotateAccountWebhookSecretResponse = (rotateAccountWebhookSecretResponseSuccess | rotateAccountWebhookSecretResponseError)\n\nexport const getRotateAccountWebhookSecretUrl = (id: string,) => {\n\n\n  \n\n  return `/account-webhooks/${id}/rotate-secret`\n}\n\nexport const rotateAccountWebhookSecret = async (id: string, options?: RequestInit): Promise<rotateAccountWebhookSecretResponse> => {\n  \n  return customFetch<rotateAccountWebhookSecretResponse>(getRotateAccountWebhookSecretUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * SDK utilities - Auto-generated.\n * @generated\n */\n\nimport type { SDKMethodOptions } from \"./types\";\n\ntype WrappedMethodResponse = { status: number; data: unknown; headers?: Headers };\ntype WrappedMethod = (...args: unknown[]) => Promise<WrappedMethodResponse>;\n\nasync function invokeWrappedMethod(fn: WrappedMethod, args: unknown[]) {\n  return fn(...args);\n}\n\n/**\n * Build RequestInit from SDK options.\n */\nfunction buildRequestInit(options?: SDKMethodOptions): RequestInit | undefined {\n  if (!options?.entity_id && !options?.account_id && !options?.signal) return undefined;\n\n  const init: RequestInit = {};\n  if (options.entity_id || options.account_id) {\n    init.headers = {\n      ...(options.entity_id ? { \"x-entity-id\": options.entity_id } : {}),\n      ...(options.account_id ? { \"x-account-id\": options.account_id } : {}),\n    };\n  }\n  if (options.signal) {\n    init.signal = options.signal;\n  }\n  return init;\n}\n\n/**\n * Extract success data type from Orval response union.\n * Orval generates: Promise<(SuccessResponse | ErrorResponse)>\n * where SuccessResponse = { data: T, status: 200|201|204 } & { headers: Headers }\n */\ntype ExtractSuccessData<T> = T extends { status: 200 | 201 | 204; data: infer D } ? D : never;\n\n/**\n * Wrap a generated method to add SDK options support and unwrap response.\n * Types are preserved through TypeScript inference.\n */\nexport function wrapMethod<TFn extends (...args: any[]) => Promise<{ status: number; data: any; headers?: Headers }>>(\n  fn: TFn,\n) {\n  type ResponseUnion = Awaited<ReturnType<TFn>>;\n  type SuccessData = ExtractSuccessData<ResponseUnion>;\n\n  return async (\n    ...args: [...(Parameters<TFn> extends [...infer Rest, RequestInit?] ? Rest : Parameters<TFn>), SDKMethodOptions?]\n  ): Promise<SuccessData> => {\n    // Check if last arg is SDK options\n    const lastArg = args[args.length - 1];\n    const isSDKOptions =\n      lastArg &&\n      typeof lastArg === \"object\" &&\n      (\"entity_id\" in lastArg || \"account_id\" in lastArg || \"signal\" in lastArg || Object.keys(lastArg).length === 0);\n\n    let fnArgs: unknown[];\n    let requestInit: RequestInit | undefined;\n\n    if (isSDKOptions) {\n      fnArgs = args.slice(0, -1);\n      requestInit = buildRequestInit(lastArg as SDKMethodOptions);\n    } else {\n      fnArgs = [...args];\n    }\n\n    // Add requestInit to args\n    fnArgs.push(requestInit);\n\n    const response = await invokeWrappedMethod(fn as WrappedMethod, fnArgs);\n\n    if (response.status >= 200 && response.status < 300) {\n      return response.data as SuccessData;\n    }\n\n    const error = new Error(`API error: ${response.status}`);\n    (error as any).status = response.status;\n    (error as any).data = response.data;\n    throw error;\n  };\n}\n\n/**\n * Wrap a list method with pagination options support.\n * Preserves the original function's params type for module-specific fields.\n */\nexport function wrapListMethod<\n  TFn extends (params?: any, options?: RequestInit) => Promise<{ status: number; data: any; headers?: Headers }>,\n>(fn: TFn) {\n  type ResponseUnion = Awaited<ReturnType<TFn>>;\n  type SuccessData = ExtractSuccessData<ResponseUnion>;\n  type OriginalParams = Parameters<TFn>[0];\n  // Relax order_by to accept generic single-field or composite sort values.\n  type ListParams = Omit<NonNullable<OriginalParams>, \"order_by\"> & { order_by?: string | string[] } & SDKMethodOptions;\n\n  return async (options?: ListParams): Promise<SuccessData> => {\n    const { entity_id, account_id, signal, ...params } = (options || {}) as ListParams;\n    const requestInit = buildRequestInit({ entity_id, account_id, signal });\n\n    const response = await fn(params, requestInit);\n\n    if (response.status === 200) {\n      return response.data as SuccessData;\n    }\n\n    const error = new Error(`API error: ${response.status}`);\n    (error as any).status = response.status;\n    (error as any).data = response.data;\n    throw error;\n  };\n}\n",
    "/**\n * AccountWebhooks API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createAccountWebhook,\n  deleteAccountWebhook,\n  getAccountWebhookById,\n  getAccountWebhooks,\n  rotateAccountWebhookSecret,\n  testAccountWebhook,\n  updateAccountWebhook,\n} from \"../generated/account-webhooks/account-webhooks\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const accountWebhooks = {\n  /** @see createAccountWebhook */\n  create: wrapMethod(createAccountWebhook),\n\n  /** @see getAccountWebhooks */\n  list: wrapListMethod(getAccountWebhooks),\n\n  /** @see getAccountWebhookById */\n  get: wrapMethod(getAccountWebhookById),\n\n  /** @see updateAccountWebhook */\n  update: wrapMethod(updateAccountWebhook),\n\n  /** @see deleteAccountWebhook */\n  delete: wrapMethod(deleteAccountWebhook),\n\n  /** @see testAccountWebhook */\n  testAccountWebhook: wrapMethod(testAccountWebhook),\n\n  /** @see rotateAccountWebhookSecret */\n  rotateAccountWebhookSecret: wrapMethod(rotateAccountWebhookSecret),\n} as const;\n\nexport type AccountWebhooksApi = typeof accountWebhooks;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GetActivities200,\n  GetActivitiesParams\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve a paginated list of activities for the entity. Supports filtering by resource_type, resource_id, and action. Activities are ordered by created_at descending by default.\n * @summary List activities\n */\nexport type getActivitiesResponse200 = {\n  data: GetActivities200\n  status: 200\n}\n\nexport type getActivitiesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getActivitiesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getActivitiesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getActivitiesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getActivitiesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getActivitiesResponseSuccess = (getActivitiesResponse200) & {\n  headers: Headers;\n};\nexport type getActivitiesResponseError = (getActivitiesResponse400 | getActivitiesResponse401 | getActivitiesResponse403 | getActivitiesResponse404 | getActivitiesResponse500) & {\n  headers: Headers;\n};\n\nexport type getActivitiesResponse = (getActivitiesResponseSuccess | getActivitiesResponseError)\n\nexport const getGetActivitiesUrl = (params?: GetActivitiesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/activities?${stringifiedParams}` : `/activities`\n}\n\nexport const getActivities = async (params?: GetActivitiesParams, options?: RequestInit): Promise<getActivitiesResponse> => {\n  \n  return customFetch<getActivitiesResponse>(getGetActivitiesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Activities API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getActivities } from \"../generated/activities/activities\";\n\nimport { wrapListMethod } from \"./utils\";\n\nexport const activities = {\n  /** @see getActivities */\n  list: wrapListMethod(getActivities),\n} as const;\n\nexport type ActivitiesApi = typeof activities;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AdvanceInvoice,\n  AdvanceInvoiceList,\n  CompleteAdvanceInvoicePreview,\n  CreateAdvanceInvoice,\n  CustomCreateAdvanceInvoice,\n  DocumentVersion,\n  DocumentVersionList,\n  Error,\n  GetAdvanceInvoiceByIdParams,\n  GetAdvanceInvoicesParams,\n  GetShareableAdvanceInvoiceHtmlParams,\n  GetShareableAdvanceInvoicePdfParams,\n  PartialAdvanceInvoicePreview,\n  RenderAdvanceInvoicePreviewParams,\n  UpdateAdvanceInvoice,\n  ValidationError,\n  VoidAdvanceInvoiceBody\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve advance invoice data using a shareable token. No authentication required. Returns full advance invoice data for rendering.\n * @summary View shareable advance invoice\n */\nexport type getShareableAdvanceInvoiceResponse200 = {\n  data: AdvanceInvoice\n  status: 200\n}\n\nexport type getShareableAdvanceInvoiceResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableAdvanceInvoiceResponseSuccess = (getShareableAdvanceInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type getShareableAdvanceInvoiceResponseError = (getShareableAdvanceInvoiceResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableAdvanceInvoiceResponse = (getShareableAdvanceInvoiceResponseSuccess | getShareableAdvanceInvoiceResponseError)\n\nexport const getGetShareableAdvanceInvoiceUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/advance-invoices/shareable/${shareableId}`\n}\n\nexport const getShareableAdvanceInvoice = async (shareableId: string, options?: RequestInit): Promise<getShareableAdvanceInvoiceResponse> => {\n  \n  return customFetch<getShareableAdvanceInvoiceResponse>(getGetShareableAdvanceInvoiceUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get advance invoice as HTML preview using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Get shareable advance invoice as HTML\n */\nexport type getShareableAdvanceInvoiceHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableAdvanceInvoiceHtmlResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableAdvanceInvoiceHtmlResponseSuccess = (getShareableAdvanceInvoiceHtmlResponse200) & {\n  headers: Headers;\n};\nexport type getShareableAdvanceInvoiceHtmlResponseError = (getShareableAdvanceInvoiceHtmlResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableAdvanceInvoiceHtmlResponse = (getShareableAdvanceInvoiceHtmlResponseSuccess | getShareableAdvanceInvoiceHtmlResponseError)\n\nexport const getGetShareableAdvanceInvoiceHtmlUrl = (shareableId: string,\n    params?: GetShareableAdvanceInvoiceHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/advance-invoices/shareable/${shareableId}/html?${stringifiedParams}` : `/advance-invoices/shareable/${shareableId}/html`\n}\n\nexport const getShareableAdvanceInvoiceHtml = async (shareableId: string,\n    params?: GetShareableAdvanceInvoiceHtmlParams, options?: RequestInit): Promise<getShareableAdvanceInvoiceHtmlResponse> => {\n  \n  return customFetch<getShareableAdvanceInvoiceHtmlResponse>(getGetShareableAdvanceInvoiceHtmlUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download advance invoice as PDF using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Download shareable advance invoice as PDF\n */\nexport type getShareableAdvanceInvoicePdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type getShareableAdvanceInvoicePdfResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableAdvanceInvoicePdfResponseSuccess = (getShareableAdvanceInvoicePdfResponse200) & {\n  headers: Headers;\n};\nexport type getShareableAdvanceInvoicePdfResponseError = (getShareableAdvanceInvoicePdfResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableAdvanceInvoicePdfResponse = (getShareableAdvanceInvoicePdfResponseSuccess | getShareableAdvanceInvoicePdfResponseError)\n\nexport const getGetShareableAdvanceInvoicePdfUrl = (shareableId: string,\n    params?: GetShareableAdvanceInvoicePdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/advance-invoices/shareable/${shareableId}/pdf?${stringifiedParams}` : `/advance-invoices/shareable/${shareableId}/pdf`\n}\n\nexport const getShareableAdvanceInvoicePdf = async (shareableId: string,\n    params?: GetShareableAdvanceInvoicePdfParams, options?: RequestInit): Promise<getShareableAdvanceInvoicePdfResponse> => {\n  \n  return customFetch<getShareableAdvanceInvoicePdfResponse>(getGetShareableAdvanceInvoicePdfUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new advance invoice with line items. Advance invoices are issued before goods/services are delivered to collect prepayment. When payment is received, the advance can be linked to a final invoice to apply the prepaid amount.\n * @summary Create a new advance invoice\n */\nexport type createAdvanceInvoiceResponse201 = {\n  data: AdvanceInvoice\n  status: 201\n}\n\nexport type createAdvanceInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createAdvanceInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createAdvanceInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createAdvanceInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createAdvanceInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createAdvanceInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createAdvanceInvoiceResponseSuccess = (createAdvanceInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type createAdvanceInvoiceResponseError = (createAdvanceInvoiceResponse400 | createAdvanceInvoiceResponse401 | createAdvanceInvoiceResponse403 | createAdvanceInvoiceResponse404 | createAdvanceInvoiceResponse422 | createAdvanceInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type createAdvanceInvoiceResponse = (createAdvanceInvoiceResponseSuccess | createAdvanceInvoiceResponseError)\n\nexport const getCreateAdvanceInvoiceUrl = () => {\n\n\n  \n\n  return `/advance-invoices`\n}\n\nexport const createAdvanceInvoice = async (createAdvanceInvoice: CreateAdvanceInvoice, options?: RequestInit): Promise<createAdvanceInvoiceResponse> => {\n  \n  return customFetch<createAdvanceInvoiceResponse>(getCreateAdvanceInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createAdvanceInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of advance invoices with optional filtering and sorting. Supports cursor-based pagination, JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all advance invoices\n */\nexport type getAdvanceInvoicesResponse200 = {\n  data: AdvanceInvoiceList\n  status: 200\n}\n\nexport type getAdvanceInvoicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getAdvanceInvoicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAdvanceInvoicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAdvanceInvoicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAdvanceInvoicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAdvanceInvoicesResponseSuccess = (getAdvanceInvoicesResponse200) & {\n  headers: Headers;\n};\nexport type getAdvanceInvoicesResponseError = (getAdvanceInvoicesResponse400 | getAdvanceInvoicesResponse401 | getAdvanceInvoicesResponse403 | getAdvanceInvoicesResponse404 | getAdvanceInvoicesResponse500) & {\n  headers: Headers;\n};\n\nexport type getAdvanceInvoicesResponse = (getAdvanceInvoicesResponseSuccess | getAdvanceInvoicesResponseError)\n\nexport const getGetAdvanceInvoicesUrl = (params?: GetAdvanceInvoicesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/advance-invoices?${stringifiedParams}` : `/advance-invoices`\n}\n\nexport const getAdvanceInvoices = async (params?: GetAdvanceInvoicesParams, options?: RequestInit): Promise<getAdvanceInvoicesResponse> => {\n  \n  return customFetch<getAdvanceInvoicesResponse>(getGetAdvanceInvoicesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create an advance invoice with pre-calculated totals from an external system.\nThe caller provides `total`, `total_with_tax`, `total_discount`, and `taxes` at the document level, and `total`/`total_with_tax` on each line item.\nWhen `calculation_mode` is omitted, Space Invoices preserves pass-through behavior and accepts the supplied totals as-is.\nWhen `calculation_mode` is provided, Space Invoices validates the supplied totals against that calculation mode before creating the document.\nAll other logic (numbering, fiscalization, customer handling, payments, lifecycle hooks) is identical to the standard create endpoint.\n * @summary Create advance invoice with pre-calculated totals\n */\nexport type createCustomAdvanceInvoiceResponse201 = {\n  data: AdvanceInvoice\n  status: 201\n}\n\nexport type createCustomAdvanceInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomAdvanceInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomAdvanceInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomAdvanceInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomAdvanceInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomAdvanceInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomAdvanceInvoiceResponseSuccess = (createCustomAdvanceInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type createCustomAdvanceInvoiceResponseError = (createCustomAdvanceInvoiceResponse400 | createCustomAdvanceInvoiceResponse401 | createCustomAdvanceInvoiceResponse403 | createCustomAdvanceInvoiceResponse404 | createCustomAdvanceInvoiceResponse422 | createCustomAdvanceInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomAdvanceInvoiceResponse = (createCustomAdvanceInvoiceResponseSuccess | createCustomAdvanceInvoiceResponseError)\n\nexport const getCreateCustomAdvanceInvoiceUrl = () => {\n\n\n  \n\n  return `/advance-invoices/custom`\n}\n\nexport const createCustomAdvanceInvoice = async (customCreateAdvanceInvoice: CustomCreateAdvanceInvoice, options?: RequestInit): Promise<createCustomAdvanceInvoiceResponse> => {\n  \n  return customFetch<createCustomAdvanceInvoiceResponse>(getCreateCustomAdvanceInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateAdvanceInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve a single advance invoice by its unique identifier. Returns the complete advance invoice details including all line items, customer information, and calculated totals.\n * @summary Get advance invoice by ID\n */\nexport type getAdvanceInvoiceByIdResponse200 = {\n  data: AdvanceInvoice\n  status: 200\n}\n\nexport type getAdvanceInvoiceByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAdvanceInvoiceByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAdvanceInvoiceByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAdvanceInvoiceByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAdvanceInvoiceByIdResponseSuccess = (getAdvanceInvoiceByIdResponse200) & {\n  headers: Headers;\n};\nexport type getAdvanceInvoiceByIdResponseError = (getAdvanceInvoiceByIdResponse401 | getAdvanceInvoiceByIdResponse403 | getAdvanceInvoiceByIdResponse404 | getAdvanceInvoiceByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getAdvanceInvoiceByIdResponse = (getAdvanceInvoiceByIdResponseSuccess | getAdvanceInvoiceByIdResponseError)\n\nexport const getGetAdvanceInvoiceByIdUrl = (id: string,\n    params?: GetAdvanceInvoiceByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/advance-invoices/${id}?${stringifiedParams}` : `/advance-invoices/${id}`\n}\n\nexport const getAdvanceInvoiceById = async (id: string,\n    params?: GetAdvanceInvoiceByIdParams, options?: RequestInit): Promise<getAdvanceInvoiceByIdResponse> => {\n  \n  return customFetch<getAdvanceInvoiceByIdResponse>(getGetAdvanceInvoiceByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing advance invoice.\nCreates a version snapshot before applying changes.\nCannot update voided or FURS-fiscalized advance invoices.\nIf items are provided, they replace all existing items.\n * @summary Update an advance invoice\n */\nexport type updateAdvanceInvoiceResponse200 = {\n  data: AdvanceInvoice\n  status: 200\n}\n\nexport type updateAdvanceInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateAdvanceInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateAdvanceInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateAdvanceInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateAdvanceInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateAdvanceInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateAdvanceInvoiceResponseSuccess = (updateAdvanceInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type updateAdvanceInvoiceResponseError = (updateAdvanceInvoiceResponse400 | updateAdvanceInvoiceResponse401 | updateAdvanceInvoiceResponse403 | updateAdvanceInvoiceResponse404 | updateAdvanceInvoiceResponse422 | updateAdvanceInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type updateAdvanceInvoiceResponse = (updateAdvanceInvoiceResponseSuccess | updateAdvanceInvoiceResponseError)\n\nexport const getUpdateAdvanceInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/advance-invoices/${id}`\n}\n\nexport const updateAdvanceInvoice = async (id: string,\n    updateAdvanceInvoice: UpdateAdvanceInvoice, options?: RequestInit): Promise<updateAdvanceInvoiceResponse> => {\n  \n  return customFetch<updateAdvanceInvoiceResponse>(getUpdateAdvanceInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateAdvanceInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve the version history for an advance invoice. Each version represents the document state before an update was applied.\n * @summary Get advance invoice version history\n */\nexport type getAdvanceInvoiceVersionsResponse200 = {\n  data: DocumentVersionList\n  status: 200\n}\n\nexport type getAdvanceInvoiceVersionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAdvanceInvoiceVersionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAdvanceInvoiceVersionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAdvanceInvoiceVersionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAdvanceInvoiceVersionsResponseSuccess = (getAdvanceInvoiceVersionsResponse200) & {\n  headers: Headers;\n};\nexport type getAdvanceInvoiceVersionsResponseError = (getAdvanceInvoiceVersionsResponse401 | getAdvanceInvoiceVersionsResponse403 | getAdvanceInvoiceVersionsResponse404 | getAdvanceInvoiceVersionsResponse500) & {\n  headers: Headers;\n};\n\nexport type getAdvanceInvoiceVersionsResponse = (getAdvanceInvoiceVersionsResponseSuccess | getAdvanceInvoiceVersionsResponseError)\n\nexport const getGetAdvanceInvoiceVersionsUrl = (id: string,) => {\n\n\n  \n\n  return `/advance-invoices/${id}/versions`\n}\n\nexport const getAdvanceInvoiceVersions = async (id: string, options?: RequestInit): Promise<getAdvanceInvoiceVersionsResponse> => {\n  \n  return customFetch<getAdvanceInvoiceVersionsResponse>(getGetAdvanceInvoiceVersionsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a specific version snapshot of an advance invoice.\n * @summary Get specific advance invoice version\n */\nexport type getAdvanceInvoiceVersionResponse200 = {\n  data: DocumentVersion\n  status: 200\n}\n\nexport type getAdvanceInvoiceVersionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getAdvanceInvoiceVersionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getAdvanceInvoiceVersionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getAdvanceInvoiceVersionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getAdvanceInvoiceVersionResponseSuccess = (getAdvanceInvoiceVersionResponse200) & {\n  headers: Headers;\n};\nexport type getAdvanceInvoiceVersionResponseError = (getAdvanceInvoiceVersionResponse401 | getAdvanceInvoiceVersionResponse403 | getAdvanceInvoiceVersionResponse404 | getAdvanceInvoiceVersionResponse500) & {\n  headers: Headers;\n};\n\nexport type getAdvanceInvoiceVersionResponse = (getAdvanceInvoiceVersionResponseSuccess | getAdvanceInvoiceVersionResponseError)\n\nexport const getGetAdvanceInvoiceVersionUrl = (id: string,\n    version: number,) => {\n\n\n  \n\n  return `/advance-invoices/${id}/versions/${version}`\n}\n\nexport const getAdvanceInvoiceVersion = async (id: string,\n    version: number, options?: RequestInit): Promise<getAdvanceInvoiceVersionResponse> => {\n  \n  return customFetch<getAdvanceInvoiceVersionResponse>(getGetAdvanceInvoiceVersionUrl(id,version),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render an HTML preview of an advance invoice without saving to the database. Perfect for displaying live previews in advance invoice creation/edit forms. Supports both partial mode (allows incomplete data for drafts) and complete mode (validates all required fields).\n * @summary Render advance invoice preview\n */\nexport type renderAdvanceInvoicePreviewResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderAdvanceInvoicePreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type renderAdvanceInvoicePreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderAdvanceInvoicePreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderAdvanceInvoicePreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderAdvanceInvoicePreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type renderAdvanceInvoicePreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderAdvanceInvoicePreviewResponseSuccess = (renderAdvanceInvoicePreviewResponse200) & {\n  headers: Headers;\n};\nexport type renderAdvanceInvoicePreviewResponseError = (renderAdvanceInvoicePreviewResponse400 | renderAdvanceInvoicePreviewResponse401 | renderAdvanceInvoicePreviewResponse403 | renderAdvanceInvoicePreviewResponse404 | renderAdvanceInvoicePreviewResponse422 | renderAdvanceInvoicePreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type renderAdvanceInvoicePreviewResponse = (renderAdvanceInvoicePreviewResponseSuccess | renderAdvanceInvoicePreviewResponseError)\n\nexport const getRenderAdvanceInvoicePreviewUrl = (params?: RenderAdvanceInvoicePreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/advance-invoices/render?${stringifiedParams}` : `/advance-invoices/render`\n}\n\nexport const renderAdvanceInvoicePreview = async (partialAdvanceInvoicePreviewCompleteAdvanceInvoicePreview: PartialAdvanceInvoicePreview | CompleteAdvanceInvoicePreview,\n    params?: RenderAdvanceInvoicePreviewParams, options?: RequestInit): Promise<renderAdvanceInvoicePreviewResponse> => {\n  \n  return customFetch<renderAdvanceInvoicePreviewResponse>(getRenderAdvanceInvoicePreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      partialAdvanceInvoicePreviewCompleteAdvanceInvoicePreview,)\n  }\n);}\n  \n\n/**\n * Void an advance invoice for technical reasons (duplicate, error, etc.). For FURS-fiscalized advance invoices, automatically submits technical cancellation to FURS. All linked payments are soft-deleted, reversing their effect on invoice totals.\n * @summary Void an advance invoice\n */\nexport type voidAdvanceInvoiceResponse200 = {\n  data: AdvanceInvoice\n  status: 200\n}\n\nexport type voidAdvanceInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type voidAdvanceInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type voidAdvanceInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type voidAdvanceInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type voidAdvanceInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type voidAdvanceInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type voidAdvanceInvoiceResponseSuccess = (voidAdvanceInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type voidAdvanceInvoiceResponseError = (voidAdvanceInvoiceResponse400 | voidAdvanceInvoiceResponse401 | voidAdvanceInvoiceResponse403 | voidAdvanceInvoiceResponse404 | voidAdvanceInvoiceResponse422 | voidAdvanceInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type voidAdvanceInvoiceResponse = (voidAdvanceInvoiceResponseSuccess | voidAdvanceInvoiceResponseError)\n\nexport const getVoidAdvanceInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/advance-invoices/${id}/void`\n}\n\nexport const voidAdvanceInvoice = async (id: string,\n    voidAdvanceInvoiceBody: VoidAdvanceInvoiceBody, options?: RequestInit): Promise<voidAdvanceInvoiceResponse> => {\n  \n  return customFetch<voidAdvanceInvoiceResponse>(getVoidAdvanceInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      voidAdvanceInvoiceBody,)\n  }\n);}\n  \n\n",
    "/**\n * AdvanceInvoices API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createAdvanceInvoice,\n  createCustomAdvanceInvoice,\n  getAdvanceInvoiceById,\n  getAdvanceInvoices,\n  getAdvanceInvoiceVersion,\n  getAdvanceInvoiceVersions,\n  getShareableAdvanceInvoice,\n  getShareableAdvanceInvoiceHtml,\n  getShareableAdvanceInvoicePdf,\n  renderAdvanceInvoicePreview,\n  updateAdvanceInvoice,\n  voidAdvanceInvoice,\n} from \"../generated/advance-invoices/advance-invoices\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const advanceInvoices = {\n  /** @see getShareableAdvanceInvoice */\n  getShareableAdvanceInvoice: wrapMethod(getShareableAdvanceInvoice),\n\n  /** @see getShareableAdvanceInvoiceHtml */\n  getShareableAdvanceInvoiceHtml: wrapMethod(getShareableAdvanceInvoiceHtml),\n\n  /** @see getShareableAdvanceInvoicePdf */\n  getShareableAdvanceInvoicePdf: wrapMethod(getShareableAdvanceInvoicePdf),\n\n  /** @see createAdvanceInvoice */\n  create: wrapMethod(createAdvanceInvoice),\n\n  /** @see getAdvanceInvoices */\n  list: wrapListMethod(getAdvanceInvoices),\n\n  /** @see createCustomAdvanceInvoice */\n  createCustom: wrapMethod(createCustomAdvanceInvoice),\n\n  /** @see getAdvanceInvoiceById */\n  get: wrapMethod(getAdvanceInvoiceById),\n\n  /** @see updateAdvanceInvoice */\n  update: wrapMethod(updateAdvanceInvoice),\n\n  /** @see getAdvanceInvoiceVersions */\n  getVersions: wrapMethod(getAdvanceInvoiceVersions),\n\n  /** @see getAdvanceInvoiceVersion */\n  getVersion: wrapMethod(getAdvanceInvoiceVersion),\n\n  /** @see renderAdvanceInvoicePreview */\n  renderAdvanceInvoicePreview: wrapMethod(renderAdvanceInvoicePreview),\n\n  /** @see voidAdvanceInvoice */\n  void: wrapMethod(voidAdvanceInvoice),\n} as const;\n\nexport type AdvanceInvoicesApi = typeof advanceInvoices;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CompanyRegistrySearchResponse,\n  Error,\n  SearchCompanyRegistryParams,\n  SupportedCountriesResponse\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Search public company registries for autocomplete. Returns matching companies from government data sources like AJPES (Slovenia). Use this to auto-fill customer details when creating invoices.\n * @summary Search company registry\n */\nexport type searchCompanyRegistryResponse200 = {\n  data: CompanyRegistrySearchResponse\n  status: 200\n}\n\nexport type searchCompanyRegistryResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type searchCompanyRegistryResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type searchCompanyRegistryResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type searchCompanyRegistryResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type searchCompanyRegistryResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type searchCompanyRegistryResponseSuccess = (searchCompanyRegistryResponse200) & {\n  headers: Headers;\n};\nexport type searchCompanyRegistryResponseError = (searchCompanyRegistryResponse400 | searchCompanyRegistryResponse401 | searchCompanyRegistryResponse403 | searchCompanyRegistryResponse404 | searchCompanyRegistryResponse500) & {\n  headers: Headers;\n};\n\nexport type searchCompanyRegistryResponse = (searchCompanyRegistryResponseSuccess | searchCompanyRegistryResponseError)\n\nexport const getSearchCompanyRegistryUrl = (params: SearchCompanyRegistryParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/company-registry/search?${stringifiedParams}` : `/company-registry/search`\n}\n\nexport const searchCompanyRegistry = async (params: SearchCompanyRegistryParams, options?: RequestInit): Promise<searchCompanyRegistryResponse> => {\n  \n  return customFetch<searchCompanyRegistryResponse>(getSearchCompanyRegistryUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Returns a list of country codes for which company registry data is available. Use this to conditionally show the company autocomplete feature based on entity's country.\n * @summary Get supported countries\n */\nexport type getSupportedCountriesResponse200 = {\n  data: SupportedCountriesResponse\n  status: 200\n}\n\nexport type getSupportedCountriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getSupportedCountriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getSupportedCountriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getSupportedCountriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getSupportedCountriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getSupportedCountriesResponseSuccess = (getSupportedCountriesResponse200) & {\n  headers: Headers;\n};\nexport type getSupportedCountriesResponseError = (getSupportedCountriesResponse400 | getSupportedCountriesResponse401 | getSupportedCountriesResponse403 | getSupportedCountriesResponse404 | getSupportedCountriesResponse500) & {\n  headers: Headers;\n};\n\nexport type getSupportedCountriesResponse = (getSupportedCountriesResponseSuccess | getSupportedCountriesResponseError)\n\nexport const getGetSupportedCountriesUrl = () => {\n\n\n  \n\n  return `/company-registry/countries`\n}\n\nexport const getSupportedCountries = async ( options?: RequestInit): Promise<getSupportedCountriesResponse> => {\n  \n  return customFetch<getSupportedCountriesResponse>(getGetSupportedCountriesUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * CompanyRegistry API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getSupportedCountries, searchCompanyRegistry } from \"../generated/company-registry/company-registry\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const companyRegistry = {\n  /** @see searchCompanyRegistry */\n  searchCompanyRegistry: wrapMethod(searchCompanyRegistry),\n\n  /** @see getSupportedCountries */\n  list: wrapMethod(getSupportedCountries),\n} as const;\n\nexport type CompanyRegistryApi = typeof companyRegistry;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CompleteCreditNotePreview,\n  CreateCreditNote,\n  CreditNote,\n  CreditNoteList,\n  CustomCreateCreditNote,\n  DocumentVersion,\n  DocumentVersionList,\n  Error,\n  GetCreditNoteByIdParams,\n  GetCreditNotesParams,\n  GetShareableCreditNoteHtmlParams,\n  GetShareableCreditNotePdfParams,\n  PartialCreditNotePreview,\n  RenderCreditNotePreviewParams,\n  UpdateCreditNote,\n  ValidationError,\n  VoidCreditNoteBody\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve credit note data using a shareable token. No authentication required. Returns full credit note data for rendering.\n * @summary View shareable credit note\n */\nexport type getShareableCreditNoteResponse200 = {\n  data: CreditNote\n  status: 200\n}\n\nexport type getShareableCreditNoteResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableCreditNoteResponseSuccess = (getShareableCreditNoteResponse200) & {\n  headers: Headers;\n};\nexport type getShareableCreditNoteResponseError = (getShareableCreditNoteResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableCreditNoteResponse = (getShareableCreditNoteResponseSuccess | getShareableCreditNoteResponseError)\n\nexport const getGetShareableCreditNoteUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/credit-notes/shareable/${shareableId}`\n}\n\nexport const getShareableCreditNote = async (shareableId: string, options?: RequestInit): Promise<getShareableCreditNoteResponse> => {\n  \n  return customFetch<getShareableCreditNoteResponse>(getGetShareableCreditNoteUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get credit note as HTML preview using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Get shareable credit note as HTML\n */\nexport type getShareableCreditNoteHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableCreditNoteHtmlResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableCreditNoteHtmlResponseSuccess = (getShareableCreditNoteHtmlResponse200) & {\n  headers: Headers;\n};\nexport type getShareableCreditNoteHtmlResponseError = (getShareableCreditNoteHtmlResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableCreditNoteHtmlResponse = (getShareableCreditNoteHtmlResponseSuccess | getShareableCreditNoteHtmlResponseError)\n\nexport const getGetShareableCreditNoteHtmlUrl = (shareableId: string,\n    params?: GetShareableCreditNoteHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/credit-notes/shareable/${shareableId}/html?${stringifiedParams}` : `/credit-notes/shareable/${shareableId}/html`\n}\n\nexport const getShareableCreditNoteHtml = async (shareableId: string,\n    params?: GetShareableCreditNoteHtmlParams, options?: RequestInit): Promise<getShareableCreditNoteHtmlResponse> => {\n  \n  return customFetch<getShareableCreditNoteHtmlResponse>(getGetShareableCreditNoteHtmlUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download credit note as PDF using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Download shareable credit note as PDF\n */\nexport type getShareableCreditNotePdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type getShareableCreditNotePdfResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableCreditNotePdfResponseSuccess = (getShareableCreditNotePdfResponse200) & {\n  headers: Headers;\n};\nexport type getShareableCreditNotePdfResponseError = (getShareableCreditNotePdfResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableCreditNotePdfResponse = (getShareableCreditNotePdfResponseSuccess | getShareableCreditNotePdfResponseError)\n\nexport const getGetShareableCreditNotePdfUrl = (shareableId: string,\n    params?: GetShareableCreditNotePdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/credit-notes/shareable/${shareableId}/pdf?${stringifiedParams}` : `/credit-notes/shareable/${shareableId}/pdf`\n}\n\nexport const getShareableCreditNotePdf = async (shareableId: string,\n    params?: GetShareableCreditNotePdfParams, options?: RequestInit): Promise<getShareableCreditNotePdfResponse> => {\n  \n  return customFetch<getShareableCreditNotePdfResponse>(getGetShareableCreditNotePdfUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download credit note as e-SLOG 2.0 XML (Slovenian electronic invoice format) using a shareable token. No authentication required. Only available for Slovenian entities with valid e-SLOG validation.\n * @summary Download shareable credit note as e-SLOG XML\n */\nexport type getShareableCreditNoteEslogResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableCreditNoteEslogResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableCreditNoteEslogResponseSuccess = (getShareableCreditNoteEslogResponse200) & {\n  headers: Headers;\n};\nexport type getShareableCreditNoteEslogResponseError = (getShareableCreditNoteEslogResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableCreditNoteEslogResponse = (getShareableCreditNoteEslogResponseSuccess | getShareableCreditNoteEslogResponseError)\n\nexport const getGetShareableCreditNoteEslogUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/credit-notes/shareable/${shareableId}/eslog`\n}\n\nexport const getShareableCreditNoteEslog = async (shareableId: string, options?: RequestInit): Promise<getShareableCreditNoteEslogResponse> => {\n  \n  return customFetch<getShareableCreditNoteEslogResponse>(getGetShareableCreditNoteEslogUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new credit note with line items.\nCustomer is optional - can be omitted for retail/convenience store sales where customer information isn't needed, or added inline without referencing a customer_id.\nThe credit note number is auto-generated based on the entity's number format settings.\nTaxes are calculated automatically based on the tax rates provided.\n * @summary Create a new credit note\n */\nexport type createCreditNoteResponse201 = {\n  data: CreditNote\n  status: 201\n}\n\nexport type createCreditNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCreditNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCreditNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCreditNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCreditNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCreditNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCreditNoteResponseSuccess = (createCreditNoteResponse201) & {\n  headers: Headers;\n};\nexport type createCreditNoteResponseError = (createCreditNoteResponse400 | createCreditNoteResponse401 | createCreditNoteResponse403 | createCreditNoteResponse404 | createCreditNoteResponse422 | createCreditNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type createCreditNoteResponse = (createCreditNoteResponseSuccess | createCreditNoteResponseError)\n\nexport const getCreateCreditNoteUrl = () => {\n\n\n  \n\n  return `/credit-notes`\n}\n\nexport const createCreditNote = async (createCreditNote: CreateCreditNote, options?: RequestInit): Promise<createCreditNoteResponse> => {\n  \n  return customFetch<createCreditNoteResponse>(getCreateCreditNoteUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createCreditNote,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of credit notes with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all credit notes\n */\nexport type getCreditNotesResponse200 = {\n  data: CreditNoteList\n  status: 200\n}\n\nexport type getCreditNotesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getCreditNotesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCreditNotesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCreditNotesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCreditNotesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCreditNotesResponseSuccess = (getCreditNotesResponse200) & {\n  headers: Headers;\n};\nexport type getCreditNotesResponseError = (getCreditNotesResponse400 | getCreditNotesResponse401 | getCreditNotesResponse403 | getCreditNotesResponse404 | getCreditNotesResponse500) & {\n  headers: Headers;\n};\n\nexport type getCreditNotesResponse = (getCreditNotesResponseSuccess | getCreditNotesResponseError)\n\nexport const getGetCreditNotesUrl = (params?: GetCreditNotesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/credit-notes?${stringifiedParams}` : `/credit-notes`\n}\n\nexport const getCreditNotes = async (params?: GetCreditNotesParams, options?: RequestInit): Promise<getCreditNotesResponse> => {\n  \n  return customFetch<getCreditNotesResponse>(getGetCreditNotesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a credit note with pre-calculated totals from an external system.\nThe caller provides `total`, `total_with_tax`, `total_discount`, and `taxes` at the document level, and `total`/`total_with_tax` on each line item.\nWhen `calculation_mode` is omitted, Space Invoices preserves pass-through behavior and accepts the supplied totals as-is.\nWhen `calculation_mode` is provided, Space Invoices validates the supplied totals against that calculation mode before creating the document.\nAll other logic (numbering, fiscalization, customer handling, payments, lifecycle hooks) is identical to the standard create endpoint.\n * @summary Create credit note with pre-calculated totals\n */\nexport type createCustomCreditNoteResponse201 = {\n  data: CreditNote\n  status: 201\n}\n\nexport type createCustomCreditNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomCreditNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomCreditNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomCreditNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomCreditNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomCreditNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomCreditNoteResponseSuccess = (createCustomCreditNoteResponse201) & {\n  headers: Headers;\n};\nexport type createCustomCreditNoteResponseError = (createCustomCreditNoteResponse400 | createCustomCreditNoteResponse401 | createCustomCreditNoteResponse403 | createCustomCreditNoteResponse404 | createCustomCreditNoteResponse422 | createCustomCreditNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomCreditNoteResponse = (createCustomCreditNoteResponseSuccess | createCustomCreditNoteResponseError)\n\nexport const getCreateCustomCreditNoteUrl = () => {\n\n\n  \n\n  return `/credit-notes/custom`\n}\n\nexport const createCustomCreditNote = async (customCreateCreditNote: CustomCreateCreditNote, options?: RequestInit): Promise<createCustomCreditNoteResponse> => {\n  \n  return customFetch<createCustomCreditNoteResponse>(getCreateCustomCreditNoteUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateCreditNote,)\n  }\n);}\n  \n\n/**\n * Retrieve a single credit note by its unique identifier. Returns the complete credit note details including all line items, customer information, and calculated totals.\n * @summary Get credit note by ID\n */\nexport type getCreditNoteByIdResponse200 = {\n  data: CreditNote\n  status: 200\n}\n\nexport type getCreditNoteByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCreditNoteByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCreditNoteByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCreditNoteByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCreditNoteByIdResponseSuccess = (getCreditNoteByIdResponse200) & {\n  headers: Headers;\n};\nexport type getCreditNoteByIdResponseError = (getCreditNoteByIdResponse401 | getCreditNoteByIdResponse403 | getCreditNoteByIdResponse404 | getCreditNoteByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getCreditNoteByIdResponse = (getCreditNoteByIdResponseSuccess | getCreditNoteByIdResponseError)\n\nexport const getGetCreditNoteByIdUrl = (id: string,\n    params?: GetCreditNoteByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/credit-notes/${id}?${stringifiedParams}` : `/credit-notes/${id}`\n}\n\nexport const getCreditNoteById = async (id: string,\n    params?: GetCreditNoteByIdParams, options?: RequestInit): Promise<getCreditNoteByIdResponse> => {\n  \n  return customFetch<getCreditNoteByIdResponse>(getGetCreditNoteByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing credit note.\nCreates a version snapshot before applying changes.\nCannot update voided or FURS-fiscalized credit notes.\nIf items are provided, they replace all existing items.\n * @summary Update a credit note\n */\nexport type updateCreditNoteResponse200 = {\n  data: CreditNote\n  status: 200\n}\n\nexport type updateCreditNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateCreditNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateCreditNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateCreditNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateCreditNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateCreditNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateCreditNoteResponseSuccess = (updateCreditNoteResponse200) & {\n  headers: Headers;\n};\nexport type updateCreditNoteResponseError = (updateCreditNoteResponse400 | updateCreditNoteResponse401 | updateCreditNoteResponse403 | updateCreditNoteResponse404 | updateCreditNoteResponse422 | updateCreditNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type updateCreditNoteResponse = (updateCreditNoteResponseSuccess | updateCreditNoteResponseError)\n\nexport const getUpdateCreditNoteUrl = (id: string,) => {\n\n\n  \n\n  return `/credit-notes/${id}`\n}\n\nexport const updateCreditNote = async (id: string,\n    updateCreditNote: UpdateCreditNote, options?: RequestInit): Promise<updateCreditNoteResponse> => {\n  \n  return customFetch<updateCreditNoteResponse>(getUpdateCreditNoteUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateCreditNote,)\n  }\n);}\n  \n\n/**\n * Retrieve the version history for a credit note. Each version represents the document state before an update was applied.\n * @summary Get credit note version history\n */\nexport type getCreditNoteVersionsResponse200 = {\n  data: DocumentVersionList\n  status: 200\n}\n\nexport type getCreditNoteVersionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCreditNoteVersionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCreditNoteVersionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCreditNoteVersionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCreditNoteVersionsResponseSuccess = (getCreditNoteVersionsResponse200) & {\n  headers: Headers;\n};\nexport type getCreditNoteVersionsResponseError = (getCreditNoteVersionsResponse401 | getCreditNoteVersionsResponse403 | getCreditNoteVersionsResponse404 | getCreditNoteVersionsResponse500) & {\n  headers: Headers;\n};\n\nexport type getCreditNoteVersionsResponse = (getCreditNoteVersionsResponseSuccess | getCreditNoteVersionsResponseError)\n\nexport const getGetCreditNoteVersionsUrl = (id: string,) => {\n\n\n  \n\n  return `/credit-notes/${id}/versions`\n}\n\nexport const getCreditNoteVersions = async (id: string, options?: RequestInit): Promise<getCreditNoteVersionsResponse> => {\n  \n  return customFetch<getCreditNoteVersionsResponse>(getGetCreditNoteVersionsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a specific version snapshot of a credit note.\n * @summary Get specific credit note version\n */\nexport type getCreditNoteVersionResponse200 = {\n  data: DocumentVersion\n  status: 200\n}\n\nexport type getCreditNoteVersionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCreditNoteVersionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCreditNoteVersionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCreditNoteVersionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCreditNoteVersionResponseSuccess = (getCreditNoteVersionResponse200) & {\n  headers: Headers;\n};\nexport type getCreditNoteVersionResponseError = (getCreditNoteVersionResponse401 | getCreditNoteVersionResponse403 | getCreditNoteVersionResponse404 | getCreditNoteVersionResponse500) & {\n  headers: Headers;\n};\n\nexport type getCreditNoteVersionResponse = (getCreditNoteVersionResponseSuccess | getCreditNoteVersionResponseError)\n\nexport const getGetCreditNoteVersionUrl = (id: string,\n    version: number,) => {\n\n\n  \n\n  return `/credit-notes/${id}/versions/${version}`\n}\n\nexport const getCreditNoteVersion = async (id: string,\n    version: number, options?: RequestInit): Promise<getCreditNoteVersionResponse> => {\n  \n  return customFetch<getCreditNoteVersionResponse>(getGetCreditNoteVersionUrl(id,version),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render an HTML preview of a credit note without saving to the database. Perfect for displaying live previews in credit note creation/edit forms. Supports both partial mode (allows incomplete data for drafts) and complete mode (validates all required fields).\n * @summary Render credit note preview\n */\nexport type renderCreditNotePreviewResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderCreditNotePreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type renderCreditNotePreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderCreditNotePreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderCreditNotePreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderCreditNotePreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type renderCreditNotePreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderCreditNotePreviewResponseSuccess = (renderCreditNotePreviewResponse200) & {\n  headers: Headers;\n};\nexport type renderCreditNotePreviewResponseError = (renderCreditNotePreviewResponse400 | renderCreditNotePreviewResponse401 | renderCreditNotePreviewResponse403 | renderCreditNotePreviewResponse404 | renderCreditNotePreviewResponse422 | renderCreditNotePreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type renderCreditNotePreviewResponse = (renderCreditNotePreviewResponseSuccess | renderCreditNotePreviewResponseError)\n\nexport const getRenderCreditNotePreviewUrl = (params?: RenderCreditNotePreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/credit-notes/render?${stringifiedParams}` : `/credit-notes/render`\n}\n\nexport const renderCreditNotePreview = async (partialCreditNotePreviewCompleteCreditNotePreview: PartialCreditNotePreview | CompleteCreditNotePreview,\n    params?: RenderCreditNotePreviewParams, options?: RequestInit): Promise<renderCreditNotePreviewResponse> => {\n  \n  return customFetch<renderCreditNotePreviewResponse>(getRenderCreditNotePreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      partialCreditNotePreviewCompleteCreditNotePreview,)\n  }\n);}\n  \n\n/**\n * Void a credit note for technical reasons (duplicate, error, etc.). For FURS-fiscalized credit notes, automatically submits technical cancellation to FURS. All linked payments are soft-deleted, reversing their effect on invoice totals.\n * @summary Void a credit note\n */\nexport type voidCreditNoteResponse200 = {\n  data: CreditNote\n  status: 200\n}\n\nexport type voidCreditNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type voidCreditNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type voidCreditNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type voidCreditNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type voidCreditNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type voidCreditNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type voidCreditNoteResponseSuccess = (voidCreditNoteResponse200) & {\n  headers: Headers;\n};\nexport type voidCreditNoteResponseError = (voidCreditNoteResponse400 | voidCreditNoteResponse401 | voidCreditNoteResponse403 | voidCreditNoteResponse404 | voidCreditNoteResponse422 | voidCreditNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type voidCreditNoteResponse = (voidCreditNoteResponseSuccess | voidCreditNoteResponseError)\n\nexport const getVoidCreditNoteUrl = (id: string,) => {\n\n\n  \n\n  return `/credit-notes/${id}/void`\n}\n\nexport const voidCreditNote = async (id: string,\n    voidCreditNoteBody: VoidCreditNoteBody, options?: RequestInit): Promise<voidCreditNoteResponse> => {\n  \n  return customFetch<voidCreditNoteResponse>(getVoidCreditNoteUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      voidCreditNoteBody,)\n  }\n);}\n  \n\n",
    "/**\n * CreditNotes API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCreditNote,\n  createCustomCreditNote,\n  getCreditNoteById,\n  getCreditNotes,\n  getCreditNoteVersion,\n  getCreditNoteVersions,\n  getShareableCreditNote,\n  getShareableCreditNoteEslog,\n  getShareableCreditNoteHtml,\n  getShareableCreditNotePdf,\n  renderCreditNotePreview,\n  updateCreditNote,\n  voidCreditNote,\n} from \"../generated/credit-notes/credit-notes\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const creditNotes = {\n  /** @see getShareableCreditNote */\n  getShareableCreditNote: wrapMethod(getShareableCreditNote),\n\n  /** @see getShareableCreditNoteHtml */\n  getShareableCreditNoteHtml: wrapMethod(getShareableCreditNoteHtml),\n\n  /** @see getShareableCreditNotePdf */\n  getShareableCreditNotePdf: wrapMethod(getShareableCreditNotePdf),\n\n  /** @see getShareableCreditNoteEslog */\n  getShareableCreditNoteEslog: wrapMethod(getShareableCreditNoteEslog),\n\n  /** @see createCreditNote */\n  create: wrapMethod(createCreditNote),\n\n  /** @see getCreditNotes */\n  list: wrapListMethod(getCreditNotes),\n\n  /** @see createCustomCreditNote */\n  createCustom: wrapMethod(createCustomCreditNote),\n\n  /** @see getCreditNoteById */\n  get: wrapMethod(getCreditNoteById),\n\n  /** @see updateCreditNote */\n  update: wrapMethod(updateCreditNote),\n\n  /** @see getCreditNoteVersions */\n  getVersions: wrapMethod(getCreditNoteVersions),\n\n  /** @see getCreditNoteVersion */\n  getVersion: wrapMethod(getCreditNoteVersion),\n\n  /** @see renderCreditNotePreview */\n  renderCreditNotePreview: wrapMethod(renderCreditNotePreview),\n\n  /** @see voidCreditNote */\n  void: wrapMethod(voidCreditNote),\n} as const;\n\nexport type CreditNotesApi = typeof creditNotes;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateCustomerBody,\n  Customer,\n  Error,\n  GetCustomers200,\n  GetCustomersParams,\n  UpdateCustomerBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new customer for use in invoices.\nStore customer details including name, address, and tax information.\nAll fields except name are optional.\n * @summary Create a new customer\n */\nexport type createCustomerResponse201 = {\n  data: Customer\n  status: 201\n}\n\nexport type createCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomerResponseSuccess = (createCustomerResponse201) & {\n  headers: Headers;\n};\nexport type createCustomerResponseError = (createCustomerResponse400 | createCustomerResponse401 | createCustomerResponse403 | createCustomerResponse404 | createCustomerResponse422 | createCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomerResponse = (createCustomerResponseSuccess | createCustomerResponseError)\n\nexport const getCreateCustomerUrl = () => {\n\n\n  \n\n  return `/customers`\n}\n\nexport const createCustomer = async (createCustomerBody: CreateCustomerBody, options?: RequestInit): Promise<createCustomerResponse> => {\n  \n  return customFetch<createCustomerResponse>(getCreateCustomerUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createCustomerBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of customers with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all customers\n */\nexport type getCustomersResponse200 = {\n  data: GetCustomers200\n  status: 200\n}\n\nexport type getCustomersResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getCustomersResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCustomersResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCustomersResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCustomersResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCustomersResponseSuccess = (getCustomersResponse200) & {\n  headers: Headers;\n};\nexport type getCustomersResponseError = (getCustomersResponse400 | getCustomersResponse401 | getCustomersResponse403 | getCustomersResponse404 | getCustomersResponse500) & {\n  headers: Headers;\n};\n\nexport type getCustomersResponse = (getCustomersResponseSuccess | getCustomersResponseError)\n\nexport const getGetCustomersUrl = (params?: GetCustomersParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/customers?${stringifiedParams}` : `/customers`\n}\n\nexport const getCustomers = async (params?: GetCustomersParams, options?: RequestInit): Promise<getCustomersResponse> => {\n  \n  return customFetch<getCustomersResponse>(getGetCustomersUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single customer by its unique identifier.\nReturns the complete customer details including name, address, and tax information.\n * @summary Get customer by ID\n */\nexport type getCustomerByIdResponse200 = {\n  data: Customer\n  status: 200\n}\n\nexport type getCustomerByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getCustomerByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getCustomerByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getCustomerByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getCustomerByIdResponseSuccess = (getCustomerByIdResponse200) & {\n  headers: Headers;\n};\nexport type getCustomerByIdResponseError = (getCustomerByIdResponse401 | getCustomerByIdResponse403 | getCustomerByIdResponse404 | getCustomerByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getCustomerByIdResponse = (getCustomerByIdResponseSuccess | getCustomerByIdResponseError)\n\nexport const getGetCustomerByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/customers/${id}`\n}\n\nexport const getCustomerById = async (id: string, options?: RequestInit): Promise<getCustomerByIdResponse> => {\n  \n  return customFetch<getCustomerByIdResponse>(getGetCustomerByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing customer.\nOnly the provided fields will be updated.\nAll fields are optional for partial updates.\n * @summary Update a customer\n */\nexport type updateCustomerResponse200 = {\n  data: Customer\n  status: 200\n}\n\nexport type updateCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateCustomerResponseSuccess = (updateCustomerResponse200) & {\n  headers: Headers;\n};\nexport type updateCustomerResponseError = (updateCustomerResponse400 | updateCustomerResponse401 | updateCustomerResponse403 | updateCustomerResponse404 | updateCustomerResponse422 | updateCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type updateCustomerResponse = (updateCustomerResponseSuccess | updateCustomerResponseError)\n\nexport const getUpdateCustomerUrl = (id: string,) => {\n\n\n  \n\n  return `/customers/${id}`\n}\n\nexport const updateCustomer = async (id: string,\n    updateCustomerBody: UpdateCustomerBody, options?: RequestInit): Promise<updateCustomerResponse> => {\n  \n  return customFetch<updateCustomerResponse>(getUpdateCustomerUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateCustomerBody,)\n  }\n);}\n  \n\n/**\n * Soft delete a customer by its unique identifier. The customer is moved to the trash and can be restored.\n * @summary Delete a customer\n */\nexport type deleteCustomerResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteCustomerResponseSuccess = (deleteCustomerResponse204) & {\n  headers: Headers;\n};\nexport type deleteCustomerResponseError = (deleteCustomerResponse400 | deleteCustomerResponse401 | deleteCustomerResponse403 | deleteCustomerResponse404 | deleteCustomerResponse422 | deleteCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteCustomerResponse = (deleteCustomerResponseSuccess | deleteCustomerResponseError)\n\nexport const getDeleteCustomerUrl = (id: string,) => {\n\n\n  \n\n  return `/customers/${id}`\n}\n\nexport const deleteCustomer = async (id: string, options?: RequestInit): Promise<deleteCustomerResponse> => {\n  \n  return customFetch<deleteCustomerResponse>(getDeleteCustomerUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted customer from the trash.\n * @summary Restore a deleted customer\n */\nexport type restoreCustomerResponse200 = {\n  data: Customer\n  status: 200\n}\n\nexport type restoreCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restoreCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restoreCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restoreCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restoreCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restoreCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restoreCustomerResponseSuccess = (restoreCustomerResponse200) & {\n  headers: Headers;\n};\nexport type restoreCustomerResponseError = (restoreCustomerResponse400 | restoreCustomerResponse401 | restoreCustomerResponse403 | restoreCustomerResponse404 | restoreCustomerResponse422 | restoreCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type restoreCustomerResponse = (restoreCustomerResponseSuccess | restoreCustomerResponseError)\n\nexport const getRestoreCustomerUrl = (id: string,) => {\n\n\n  \n\n  return `/customers/${id}/restore`\n}\n\nexport const restoreCustomer = async (id: string, options?: RequestInit): Promise<restoreCustomerResponse> => {\n  \n  return customFetch<restoreCustomerResponse>(getRestoreCustomerUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted customer. Only customers in the trash can be permanently deleted.\n * @summary Permanently delete a customer\n */\nexport type permanentDeleteCustomerResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeleteCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type permanentDeleteCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeleteCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeleteCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeleteCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type permanentDeleteCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeleteCustomerResponseSuccess = (permanentDeleteCustomerResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeleteCustomerResponseError = (permanentDeleteCustomerResponse400 | permanentDeleteCustomerResponse401 | permanentDeleteCustomerResponse403 | permanentDeleteCustomerResponse404 | permanentDeleteCustomerResponse422 | permanentDeleteCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeleteCustomerResponse = (permanentDeleteCustomerResponseSuccess | permanentDeleteCustomerResponseError)\n\nexport const getPermanentDeleteCustomerUrl = (id: string,) => {\n\n\n  \n\n  return `/customers/${id}/permanent`\n}\n\nexport const permanentDeleteCustomer = async (id: string, options?: RequestInit): Promise<permanentDeleteCustomerResponse> => {\n  \n  return customFetch<permanentDeleteCustomerResponse>(getPermanentDeleteCustomerUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Customers API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCustomer,\n  deleteCustomer,\n  getCustomerById,\n  getCustomers,\n  permanentDeleteCustomer,\n  restoreCustomer,\n  updateCustomer,\n} from \"../generated/customers/customers\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const customers = {\n  /** @see createCustomer */\n  create: wrapMethod(createCustomer),\n\n  /** @see getCustomers */\n  list: wrapListMethod(getCustomers),\n\n  /** @see getCustomerById */\n  get: wrapMethod(getCustomerById),\n\n  /** @see updateCustomer */\n  update: wrapMethod(updateCustomer),\n\n  /** @see deleteCustomer */\n  delete: wrapMethod(deleteCustomer),\n\n  /** @see restoreCustomer */\n  restoreCustomer: wrapMethod(restoreCustomer),\n\n  /** @see permanentDeleteCustomer */\n  permanentDeleteCustomer: wrapMethod(permanentDeleteCustomer),\n} as const;\n\nexport type CustomersApi = typeof customers;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CompleteDeliveryNotePreview,\n  CreateDeliveryNote,\n  CustomCreateDeliveryNote,\n  DeliveryNote,\n  DeliveryNoteList,\n  DocumentVersion,\n  DocumentVersionList,\n  Error,\n  GetDeliveryNoteByIdParams,\n  GetDeliveryNotesParams,\n  GetShareableDeliveryNoteHtmlParams,\n  GetShareableDeliveryNotePdfParams,\n  PartialDeliveryNotePreview,\n  RenderDeliveryNotePreviewParams,\n  UpdateDeliveryNote,\n  ValidationError,\n  VoidDeliveryNoteBody\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve delivery note data using a shareable token. No authentication required. Returns full delivery note data for rendering.\n * @summary View shareable delivery note\n */\nexport type getShareableDeliveryNoteResponse200 = {\n  data: DeliveryNote\n  status: 200\n}\n\nexport type getShareableDeliveryNoteResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableDeliveryNoteResponseSuccess = (getShareableDeliveryNoteResponse200) & {\n  headers: Headers;\n};\nexport type getShareableDeliveryNoteResponseError = (getShareableDeliveryNoteResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableDeliveryNoteResponse = (getShareableDeliveryNoteResponseSuccess | getShareableDeliveryNoteResponseError)\n\nexport const getGetShareableDeliveryNoteUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/delivery-notes/shareable/${shareableId}`\n}\n\nexport const getShareableDeliveryNote = async (shareableId: string, options?: RequestInit): Promise<getShareableDeliveryNoteResponse> => {\n  \n  return customFetch<getShareableDeliveryNoteResponse>(getGetShareableDeliveryNoteUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get delivery note as HTML preview using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Get shareable delivery note as HTML\n */\nexport type getShareableDeliveryNoteHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableDeliveryNoteHtmlResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableDeliveryNoteHtmlResponseSuccess = (getShareableDeliveryNoteHtmlResponse200) & {\n  headers: Headers;\n};\nexport type getShareableDeliveryNoteHtmlResponseError = (getShareableDeliveryNoteHtmlResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableDeliveryNoteHtmlResponse = (getShareableDeliveryNoteHtmlResponseSuccess | getShareableDeliveryNoteHtmlResponseError)\n\nexport const getGetShareableDeliveryNoteHtmlUrl = (shareableId: string,\n    params?: GetShareableDeliveryNoteHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/delivery-notes/shareable/${shareableId}/html?${stringifiedParams}` : `/delivery-notes/shareable/${shareableId}/html`\n}\n\nexport const getShareableDeliveryNoteHtml = async (shareableId: string,\n    params?: GetShareableDeliveryNoteHtmlParams, options?: RequestInit): Promise<getShareableDeliveryNoteHtmlResponse> => {\n  \n  return customFetch<getShareableDeliveryNoteHtmlResponse>(getGetShareableDeliveryNoteHtmlUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download delivery note as PDF using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Download shareable delivery note as PDF\n */\nexport type getShareableDeliveryNotePdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type getShareableDeliveryNotePdfResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableDeliveryNotePdfResponseSuccess = (getShareableDeliveryNotePdfResponse200) & {\n  headers: Headers;\n};\nexport type getShareableDeliveryNotePdfResponseError = (getShareableDeliveryNotePdfResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableDeliveryNotePdfResponse = (getShareableDeliveryNotePdfResponseSuccess | getShareableDeliveryNotePdfResponseError)\n\nexport const getGetShareableDeliveryNotePdfUrl = (shareableId: string,\n    params?: GetShareableDeliveryNotePdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/delivery-notes/shareable/${shareableId}/pdf?${stringifiedParams}` : `/delivery-notes/shareable/${shareableId}/pdf`\n}\n\nexport const getShareableDeliveryNotePdf = async (shareableId: string,\n    params?: GetShareableDeliveryNotePdfParams, options?: RequestInit): Promise<getShareableDeliveryNotePdfResponse> => {\n  \n  return customFetch<getShareableDeliveryNotePdfResponse>(getGetShareableDeliveryNotePdfUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new delivery note with line items.\nCustomer is optional - can be omitted or added inline without referencing a customer_id.\nThe delivery note number is auto-generated based on the entity's number format settings.\nTaxes are calculated automatically based on the tax rates provided.\nSet hide_prices=true to create a packing list without prices.\n * @summary Create a new delivery note\n */\nexport type createDeliveryNoteResponse201 = {\n  data: DeliveryNote\n  status: 201\n}\n\nexport type createDeliveryNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createDeliveryNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createDeliveryNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createDeliveryNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createDeliveryNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createDeliveryNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createDeliveryNoteResponseSuccess = (createDeliveryNoteResponse201) & {\n  headers: Headers;\n};\nexport type createDeliveryNoteResponseError = (createDeliveryNoteResponse400 | createDeliveryNoteResponse401 | createDeliveryNoteResponse403 | createDeliveryNoteResponse404 | createDeliveryNoteResponse422 | createDeliveryNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type createDeliveryNoteResponse = (createDeliveryNoteResponseSuccess | createDeliveryNoteResponseError)\n\nexport const getCreateDeliveryNoteUrl = () => {\n\n\n  \n\n  return `/delivery-notes`\n}\n\nexport const createDeliveryNote = async (createDeliveryNote: CreateDeliveryNote, options?: RequestInit): Promise<createDeliveryNoteResponse> => {\n  \n  return customFetch<createDeliveryNoteResponse>(getCreateDeliveryNoteUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createDeliveryNote,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of delivery notes with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all delivery notes\n */\nexport type getDeliveryNotesResponse200 = {\n  data: DeliveryNoteList\n  status: 200\n}\n\nexport type getDeliveryNotesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getDeliveryNotesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getDeliveryNotesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getDeliveryNotesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getDeliveryNotesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getDeliveryNotesResponseSuccess = (getDeliveryNotesResponse200) & {\n  headers: Headers;\n};\nexport type getDeliveryNotesResponseError = (getDeliveryNotesResponse400 | getDeliveryNotesResponse401 | getDeliveryNotesResponse403 | getDeliveryNotesResponse404 | getDeliveryNotesResponse500) & {\n  headers: Headers;\n};\n\nexport type getDeliveryNotesResponse = (getDeliveryNotesResponseSuccess | getDeliveryNotesResponseError)\n\nexport const getGetDeliveryNotesUrl = (params?: GetDeliveryNotesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/delivery-notes?${stringifiedParams}` : `/delivery-notes`\n}\n\nexport const getDeliveryNotes = async (params?: GetDeliveryNotesParams, options?: RequestInit): Promise<getDeliveryNotesResponse> => {\n  \n  return customFetch<getDeliveryNotesResponse>(getGetDeliveryNotesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a delivery note with pre-calculated totals from an external system.\nThe caller provides `total`, `total_with_tax`, `total_discount`, and `taxes` at the document level, and `total`/`total_with_tax` on each line item.\nWhen `calculation_mode` is omitted, Space Invoices preserves pass-through behavior and accepts the supplied totals as-is.\nWhen `calculation_mode` is provided, Space Invoices validates the supplied totals against that calculation mode before creating the document.\nAll other logic (numbering, customer handling, lifecycle hooks) is identical to the standard create endpoint.\n * @summary Create delivery note with pre-calculated totals\n */\nexport type createCustomDeliveryNoteResponse201 = {\n  data: DeliveryNote\n  status: 201\n}\n\nexport type createCustomDeliveryNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomDeliveryNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomDeliveryNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomDeliveryNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomDeliveryNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomDeliveryNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomDeliveryNoteResponseSuccess = (createCustomDeliveryNoteResponse201) & {\n  headers: Headers;\n};\nexport type createCustomDeliveryNoteResponseError = (createCustomDeliveryNoteResponse400 | createCustomDeliveryNoteResponse401 | createCustomDeliveryNoteResponse403 | createCustomDeliveryNoteResponse404 | createCustomDeliveryNoteResponse422 | createCustomDeliveryNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomDeliveryNoteResponse = (createCustomDeliveryNoteResponseSuccess | createCustomDeliveryNoteResponseError)\n\nexport const getCreateCustomDeliveryNoteUrl = () => {\n\n\n  \n\n  return `/delivery-notes/custom`\n}\n\nexport const createCustomDeliveryNote = async (customCreateDeliveryNote: CustomCreateDeliveryNote, options?: RequestInit): Promise<createCustomDeliveryNoteResponse> => {\n  \n  return customFetch<createCustomDeliveryNoteResponse>(getCreateCustomDeliveryNoteUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateDeliveryNote,)\n  }\n);}\n  \n\n/**\n * Retrieve a single delivery note by its unique identifier. Returns the complete delivery note details including all line items, customer information, and calculated totals.\n * @summary Get delivery note by ID\n */\nexport type getDeliveryNoteByIdResponse200 = {\n  data: DeliveryNote\n  status: 200\n}\n\nexport type getDeliveryNoteByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getDeliveryNoteByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getDeliveryNoteByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getDeliveryNoteByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getDeliveryNoteByIdResponseSuccess = (getDeliveryNoteByIdResponse200) & {\n  headers: Headers;\n};\nexport type getDeliveryNoteByIdResponseError = (getDeliveryNoteByIdResponse401 | getDeliveryNoteByIdResponse403 | getDeliveryNoteByIdResponse404 | getDeliveryNoteByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getDeliveryNoteByIdResponse = (getDeliveryNoteByIdResponseSuccess | getDeliveryNoteByIdResponseError)\n\nexport const getGetDeliveryNoteByIdUrl = (id: string,\n    params?: GetDeliveryNoteByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/delivery-notes/${id}?${stringifiedParams}` : `/delivery-notes/${id}`\n}\n\nexport const getDeliveryNoteById = async (id: string,\n    params?: GetDeliveryNoteByIdParams, options?: RequestInit): Promise<getDeliveryNoteByIdResponse> => {\n  \n  return customFetch<getDeliveryNoteByIdResponse>(getGetDeliveryNoteByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing delivery note.\nCreates a version snapshot before applying changes.\nCannot update voided delivery notes.\nIf items are provided, they replace all existing items.\n * @summary Update a delivery note\n */\nexport type updateDeliveryNoteResponse200 = {\n  data: DeliveryNote\n  status: 200\n}\n\nexport type updateDeliveryNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateDeliveryNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateDeliveryNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateDeliveryNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateDeliveryNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateDeliveryNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateDeliveryNoteResponseSuccess = (updateDeliveryNoteResponse200) & {\n  headers: Headers;\n};\nexport type updateDeliveryNoteResponseError = (updateDeliveryNoteResponse400 | updateDeliveryNoteResponse401 | updateDeliveryNoteResponse403 | updateDeliveryNoteResponse404 | updateDeliveryNoteResponse422 | updateDeliveryNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type updateDeliveryNoteResponse = (updateDeliveryNoteResponseSuccess | updateDeliveryNoteResponseError)\n\nexport const getUpdateDeliveryNoteUrl = (id: string,) => {\n\n\n  \n\n  return `/delivery-notes/${id}`\n}\n\nexport const updateDeliveryNote = async (id: string,\n    updateDeliveryNote: UpdateDeliveryNote, options?: RequestInit): Promise<updateDeliveryNoteResponse> => {\n  \n  return customFetch<updateDeliveryNoteResponse>(getUpdateDeliveryNoteUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateDeliveryNote,)\n  }\n);}\n  \n\n/**\n * Retrieve the version history for a delivery note. Each version represents the document state before an update was applied.\n * @summary Get delivery note version history\n */\nexport type getDeliveryNoteVersionsResponse200 = {\n  data: DocumentVersionList\n  status: 200\n}\n\nexport type getDeliveryNoteVersionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getDeliveryNoteVersionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getDeliveryNoteVersionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getDeliveryNoteVersionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getDeliveryNoteVersionsResponseSuccess = (getDeliveryNoteVersionsResponse200) & {\n  headers: Headers;\n};\nexport type getDeliveryNoteVersionsResponseError = (getDeliveryNoteVersionsResponse401 | getDeliveryNoteVersionsResponse403 | getDeliveryNoteVersionsResponse404 | getDeliveryNoteVersionsResponse500) & {\n  headers: Headers;\n};\n\nexport type getDeliveryNoteVersionsResponse = (getDeliveryNoteVersionsResponseSuccess | getDeliveryNoteVersionsResponseError)\n\nexport const getGetDeliveryNoteVersionsUrl = (id: string,) => {\n\n\n  \n\n  return `/delivery-notes/${id}/versions`\n}\n\nexport const getDeliveryNoteVersions = async (id: string, options?: RequestInit): Promise<getDeliveryNoteVersionsResponse> => {\n  \n  return customFetch<getDeliveryNoteVersionsResponse>(getGetDeliveryNoteVersionsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a specific version snapshot of a delivery note.\n * @summary Get specific delivery note version\n */\nexport type getDeliveryNoteVersionResponse200 = {\n  data: DocumentVersion\n  status: 200\n}\n\nexport type getDeliveryNoteVersionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getDeliveryNoteVersionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getDeliveryNoteVersionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getDeliveryNoteVersionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getDeliveryNoteVersionResponseSuccess = (getDeliveryNoteVersionResponse200) & {\n  headers: Headers;\n};\nexport type getDeliveryNoteVersionResponseError = (getDeliveryNoteVersionResponse401 | getDeliveryNoteVersionResponse403 | getDeliveryNoteVersionResponse404 | getDeliveryNoteVersionResponse500) & {\n  headers: Headers;\n};\n\nexport type getDeliveryNoteVersionResponse = (getDeliveryNoteVersionResponseSuccess | getDeliveryNoteVersionResponseError)\n\nexport const getGetDeliveryNoteVersionUrl = (id: string,\n    version: number,) => {\n\n\n  \n\n  return `/delivery-notes/${id}/versions/${version}`\n}\n\nexport const getDeliveryNoteVersion = async (id: string,\n    version: number, options?: RequestInit): Promise<getDeliveryNoteVersionResponse> => {\n  \n  return customFetch<getDeliveryNoteVersionResponse>(getGetDeliveryNoteVersionUrl(id,version),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render an HTML preview of a delivery note without saving to the database. Perfect for displaying live previews in delivery note creation/edit forms. Supports both partial mode (allows incomplete data for drafts) and complete mode (validates all required fields).\n * @summary Render delivery note preview\n */\nexport type renderDeliveryNotePreviewResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderDeliveryNotePreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type renderDeliveryNotePreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderDeliveryNotePreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderDeliveryNotePreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderDeliveryNotePreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type renderDeliveryNotePreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderDeliveryNotePreviewResponseSuccess = (renderDeliveryNotePreviewResponse200) & {\n  headers: Headers;\n};\nexport type renderDeliveryNotePreviewResponseError = (renderDeliveryNotePreviewResponse400 | renderDeliveryNotePreviewResponse401 | renderDeliveryNotePreviewResponse403 | renderDeliveryNotePreviewResponse404 | renderDeliveryNotePreviewResponse422 | renderDeliveryNotePreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type renderDeliveryNotePreviewResponse = (renderDeliveryNotePreviewResponseSuccess | renderDeliveryNotePreviewResponseError)\n\nexport const getRenderDeliveryNotePreviewUrl = (params?: RenderDeliveryNotePreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/delivery-notes/render?${stringifiedParams}` : `/delivery-notes/render`\n}\n\nexport const renderDeliveryNotePreview = async (partialDeliveryNotePreviewCompleteDeliveryNotePreview: PartialDeliveryNotePreview | CompleteDeliveryNotePreview,\n    params?: RenderDeliveryNotePreviewParams, options?: RequestInit): Promise<renderDeliveryNotePreviewResponse> => {\n  \n  return customFetch<renderDeliveryNotePreviewResponse>(getRenderDeliveryNotePreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      partialDeliveryNotePreviewCompleteDeliveryNotePreview,)\n  }\n);}\n  \n\n/**\n * Void a delivery note for technical reasons (duplicate, error, etc.). Voiding marks the delivery note as invalid and prevents further modifications.\n * @summary Void a delivery note\n */\nexport type voidDeliveryNoteResponse200 = {\n  data: DeliveryNote\n  status: 200\n}\n\nexport type voidDeliveryNoteResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type voidDeliveryNoteResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type voidDeliveryNoteResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type voidDeliveryNoteResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type voidDeliveryNoteResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type voidDeliveryNoteResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type voidDeliveryNoteResponseSuccess = (voidDeliveryNoteResponse200) & {\n  headers: Headers;\n};\nexport type voidDeliveryNoteResponseError = (voidDeliveryNoteResponse400 | voidDeliveryNoteResponse401 | voidDeliveryNoteResponse403 | voidDeliveryNoteResponse404 | voidDeliveryNoteResponse422 | voidDeliveryNoteResponse500) & {\n  headers: Headers;\n};\n\nexport type voidDeliveryNoteResponse = (voidDeliveryNoteResponseSuccess | voidDeliveryNoteResponseError)\n\nexport const getVoidDeliveryNoteUrl = (id: string,) => {\n\n\n  \n\n  return `/delivery-notes/${id}/void`\n}\n\nexport const voidDeliveryNote = async (id: string,\n    voidDeliveryNoteBody: VoidDeliveryNoteBody, options?: RequestInit): Promise<voidDeliveryNoteResponse> => {\n  \n  return customFetch<voidDeliveryNoteResponse>(getVoidDeliveryNoteUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      voidDeliveryNoteBody,)\n  }\n);}\n  \n\n",
    "/**\n * DeliveryNotes API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCustomDeliveryNote,\n  createDeliveryNote,\n  getDeliveryNoteById,\n  getDeliveryNotes,\n  getDeliveryNoteVersion,\n  getDeliveryNoteVersions,\n  getShareableDeliveryNote,\n  getShareableDeliveryNoteHtml,\n  getShareableDeliveryNotePdf,\n  renderDeliveryNotePreview,\n  updateDeliveryNote,\n  voidDeliveryNote,\n} from \"../generated/delivery-notes/delivery-notes\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const deliveryNotes = {\n  /** @see getShareableDeliveryNote */\n  getShareableDeliveryNote: wrapMethod(getShareableDeliveryNote),\n\n  /** @see getShareableDeliveryNoteHtml */\n  getShareableDeliveryNoteHtml: wrapMethod(getShareableDeliveryNoteHtml),\n\n  /** @see getShareableDeliveryNotePdf */\n  getShareableDeliveryNotePdf: wrapMethod(getShareableDeliveryNotePdf),\n\n  /** @see createDeliveryNote */\n  create: wrapMethod(createDeliveryNote),\n\n  /** @see getDeliveryNotes */\n  list: wrapListMethod(getDeliveryNotes),\n\n  /** @see createCustomDeliveryNote */\n  createCustom: wrapMethod(createCustomDeliveryNote),\n\n  /** @see getDeliveryNoteById */\n  get: wrapMethod(getDeliveryNoteById),\n\n  /** @see updateDeliveryNote */\n  update: wrapMethod(updateDeliveryNote),\n\n  /** @see getDeliveryNoteVersions */\n  getVersions: wrapMethod(getDeliveryNoteVersions),\n\n  /** @see getDeliveryNoteVersion */\n  getVersion: wrapMethod(getDeliveryNoteVersion),\n\n  /** @see renderDeliveryNotePreview */\n  renderDeliveryNotePreview: wrapMethod(renderDeliveryNotePreview),\n\n  /** @see voidDeliveryNote */\n  void: wrapMethod(voidDeliveryNote),\n} as const;\n\nexport type DeliveryNotesApi = typeof deliveryNotes;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CalculateDocumentPreview,\n  CalculateDocumentPreviewParams,\n  DeleteDocumentParams,\n  DocumentCalculation,\n  Error,\n  FinalizeDocumentBody,\n  FinalizeDocumentParams,\n  FiscalizeDocumentParams,\n  GenericDocument,\n  GetNextDocumentNumberParams,\n  NextDocumentNumber,\n  PermanentDeleteDocumentParams,\n  RestoreDocumentParams,\n  SendDocument200,\n  SendDocumentBody,\n  ShareableId,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Preview the next auto-generated document number for the specified type without incrementing the sequence. Useful for showing users what number will be assigned before creating a document.\n * @summary Preview next document number\n */\nexport type getNextDocumentNumberResponse200 = {\n  data: NextDocumentNumber\n  status: 200\n}\n\nexport type getNextDocumentNumberResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getNextDocumentNumberResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getNextDocumentNumberResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getNextDocumentNumberResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getNextDocumentNumberResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getNextDocumentNumberResponseSuccess = (getNextDocumentNumberResponse200) & {\n  headers: Headers;\n};\nexport type getNextDocumentNumberResponseError = (getNextDocumentNumberResponse400 | getNextDocumentNumberResponse401 | getNextDocumentNumberResponse403 | getNextDocumentNumberResponse404 | getNextDocumentNumberResponse500) & {\n  headers: Headers;\n};\n\nexport type getNextDocumentNumberResponse = (getNextDocumentNumberResponseSuccess | getNextDocumentNumberResponseError)\n\nexport const getGetNextDocumentNumberUrl = (params: GetNextDocumentNumberParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/next-number?${stringifiedParams}` : `/documents/next-number`\n}\n\nexport const getNextDocumentNumber = async (params: GetNextDocumentNumberParams, options?: RequestInit): Promise<getNextDocumentNumberResponse> => {\n  \n  return customFetch<getNextDocumentNumberResponse>(getGetNextDocumentNumberUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Calculate document totals, taxes, and transaction type without creating the document. Useful for showing live totals in forms or validating data before submission.\n * @summary Preview document calculation\n */\nexport type calculateDocumentPreviewResponse200 = {\n  data: DocumentCalculation\n  status: 200\n}\n\nexport type calculateDocumentPreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type calculateDocumentPreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type calculateDocumentPreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type calculateDocumentPreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type calculateDocumentPreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type calculateDocumentPreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type calculateDocumentPreviewResponseSuccess = (calculateDocumentPreviewResponse200) & {\n  headers: Headers;\n};\nexport type calculateDocumentPreviewResponseError = (calculateDocumentPreviewResponse400 | calculateDocumentPreviewResponse401 | calculateDocumentPreviewResponse403 | calculateDocumentPreviewResponse404 | calculateDocumentPreviewResponse422 | calculateDocumentPreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type calculateDocumentPreviewResponse = (calculateDocumentPreviewResponseSuccess | calculateDocumentPreviewResponseError)\n\nexport const getCalculateDocumentPreviewUrl = (params: CalculateDocumentPreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/calculate?${stringifiedParams}` : `/documents/calculate`\n}\n\nexport const calculateDocumentPreview = async (calculateDocumentPreview: CalculateDocumentPreview,\n    params: CalculateDocumentPreviewParams, options?: RequestInit): Promise<calculateDocumentPreviewResponse> => {\n  \n  return customFetch<calculateDocumentPreviewResponse>(getCalculateDocumentPreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      calculateDocumentPreview,)\n  }\n);}\n  \n\n/**\n * Finalize a draft document by assigning a document number and running fiscalization (if applicable). Only draft documents can be finalized. After finalization, the document cannot be deleted.\n * @summary Finalize a draft document\n */\nexport type finalizeDocumentResponse200 = {\n  data: GenericDocument\n  status: 200\n}\n\nexport type finalizeDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type finalizeDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type finalizeDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type finalizeDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type finalizeDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type finalizeDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type finalizeDocumentResponseSuccess = (finalizeDocumentResponse200) & {\n  headers: Headers;\n};\nexport type finalizeDocumentResponseError = (finalizeDocumentResponse400 | finalizeDocumentResponse401 | finalizeDocumentResponse403 | finalizeDocumentResponse404 | finalizeDocumentResponse422 | finalizeDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type finalizeDocumentResponse = (finalizeDocumentResponseSuccess | finalizeDocumentResponseError)\n\nexport const getFinalizeDocumentUrl = (id: string,\n    params?: FinalizeDocumentParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/finalize?${stringifiedParams}` : `/documents/${id}/finalize`\n}\n\nexport const finalizeDocument = async (id: string,\n    finalizeDocumentBody?: FinalizeDocumentBody,\n    params?: FinalizeDocumentParams, options?: RequestInit): Promise<finalizeDocumentResponse> => {\n  \n  return customFetch<finalizeDocumentResponse>(getFinalizeDocumentUrl(id,params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      finalizeDocumentBody,)\n  }\n);}\n  \n\n/**\n * Manually retry fiscalization for a document that has a failed fiscalization status. Only documents with failed FURS or FINA fiscalization can be retried.\n * @summary Retry document fiscalization\n */\nexport type fiscalizeDocumentResponse200 = {\n  data: GenericDocument\n  status: 200\n}\n\nexport type fiscalizeDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type fiscalizeDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type fiscalizeDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type fiscalizeDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type fiscalizeDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type fiscalizeDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type fiscalizeDocumentResponseSuccess = (fiscalizeDocumentResponse200) & {\n  headers: Headers;\n};\nexport type fiscalizeDocumentResponseError = (fiscalizeDocumentResponse400 | fiscalizeDocumentResponse401 | fiscalizeDocumentResponse403 | fiscalizeDocumentResponse404 | fiscalizeDocumentResponse422 | fiscalizeDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type fiscalizeDocumentResponse = (fiscalizeDocumentResponseSuccess | fiscalizeDocumentResponseError)\n\nexport const getFiscalizeDocumentUrl = (id: string,\n    params?: FiscalizeDocumentParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/fiscalize?${stringifiedParams}` : `/documents/${id}/fiscalize`\n}\n\nexport const fiscalizeDocument = async (id: string,\n    params?: FiscalizeDocumentParams, options?: RequestInit): Promise<fiscalizeDocumentResponse> => {\n  \n  return customFetch<fiscalizeDocumentResponse>(getFiscalizeDocumentUrl(id,params),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Delete a draft document. Only draft documents can be deleted. Finalized documents cannot be deleted - use void instead.\n * @summary Delete a draft document\n */\nexport type deleteDocumentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteDocumentResponseSuccess = (deleteDocumentResponse204) & {\n  headers: Headers;\n};\nexport type deleteDocumentResponseError = (deleteDocumentResponse401 | deleteDocumentResponse403 | deleteDocumentResponse404 | deleteDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteDocumentResponse = (deleteDocumentResponseSuccess | deleteDocumentResponseError)\n\nexport const getDeleteDocumentUrl = (id: string,\n    params?: DeleteDocumentParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}?${stringifiedParams}` : `/documents/${id}`\n}\n\nexport const deleteDocument = async (id: string,\n    params?: DeleteDocumentParams, options?: RequestInit): Promise<deleteDocumentResponse> => {\n  \n  return customFetch<deleteDocumentResponse>(getDeleteDocumentUrl(id,params),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted document from the trash. The document will be returned to its original state.\n * @summary Restore a deleted document\n */\nexport type restoreDocumentResponse200 = {\n  data: GenericDocument\n  status: 200\n}\n\nexport type restoreDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restoreDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restoreDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restoreDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restoreDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restoreDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restoreDocumentResponseSuccess = (restoreDocumentResponse200) & {\n  headers: Headers;\n};\nexport type restoreDocumentResponseError = (restoreDocumentResponse400 | restoreDocumentResponse401 | restoreDocumentResponse403 | restoreDocumentResponse404 | restoreDocumentResponse422 | restoreDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type restoreDocumentResponse = (restoreDocumentResponseSuccess | restoreDocumentResponseError)\n\nexport const getRestoreDocumentUrl = (id: string,\n    params?: RestoreDocumentParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/restore?${stringifiedParams}` : `/documents/${id}/restore`\n}\n\nexport const restoreDocument = async (id: string,\n    params?: RestoreDocumentParams, options?: RequestInit): Promise<restoreDocumentResponse> => {\n  \n  return customFetch<restoreDocumentResponse>(getRestoreDocumentUrl(id,params),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted document. Only documents in the trash can be permanently deleted. Only draft documents and estimates can be permanently deleted.\n * @summary Permanently delete a document\n */\nexport type permanentDeleteDocumentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeleteDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeleteDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeleteDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeleteDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeleteDocumentResponseSuccess = (permanentDeleteDocumentResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeleteDocumentResponseError = (permanentDeleteDocumentResponse401 | permanentDeleteDocumentResponse403 | permanentDeleteDocumentResponse404 | permanentDeleteDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeleteDocumentResponse = (permanentDeleteDocumentResponseSuccess | permanentDeleteDocumentResponseError)\n\nexport const getPermanentDeleteDocumentUrl = (id: string,\n    params?: PermanentDeleteDocumentParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/permanent?${stringifiedParams}` : `/documents/${id}/permanent`\n}\n\nexport const permanentDeleteDocument = async (id: string,\n    params?: PermanentDeleteDocumentParams, options?: RequestInit): Promise<permanentDeleteDocumentResponse> => {\n  \n  return customFetch<permanentDeleteDocumentResponse>(getPermanentDeleteDocumentUrl(id,params),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Send a document via email. Automatically generates a public shareable link and optionally attaches the PDF. Supports markdown formatting and template variables in the email body.\n * @summary Send document via email\n */\nexport type sendDocumentResponse200 = {\n  data: SendDocument200\n  status: 200\n}\n\nexport type sendDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type sendDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type sendDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type sendDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type sendDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type sendDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type sendDocumentResponseSuccess = (sendDocumentResponse200) & {\n  headers: Headers;\n};\nexport type sendDocumentResponseError = (sendDocumentResponse400 | sendDocumentResponse401 | sendDocumentResponse403 | sendDocumentResponse404 | sendDocumentResponse422 | sendDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type sendDocumentResponse = (sendDocumentResponseSuccess | sendDocumentResponseError)\n\nexport const getSendDocumentUrl = (id: string,) => {\n\n\n  \n\n  return `/documents/${id}/send`\n}\n\nexport const sendDocument = async (id: string,\n    sendDocumentBody: SendDocumentBody, options?: RequestInit): Promise<sendDocumentResponse> => {\n  \n  return customFetch<sendDocumentResponse>(getSendDocumentUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      sendDocumentBody,)\n  }\n);}\n  \n\n/**\n * Generate a shareable token for a document. Document type is automatically detected from the ID prefix (inv_, est_, cre_, adv_). If the document is already shared, returns the existing token. Can be used to re-share a document that was previously unshared.\n * @summary Make document shareable\n */\nexport type shareDocumentResponse200 = {\n  data: ShareableId\n  status: 200\n}\n\nexport type shareDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type shareDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type shareDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type shareDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type shareDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type shareDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type shareDocumentResponseSuccess = (shareDocumentResponse200) & {\n  headers: Headers;\n};\nexport type shareDocumentResponseError = (shareDocumentResponse400 | shareDocumentResponse401 | shareDocumentResponse403 | shareDocumentResponse404 | shareDocumentResponse422 | shareDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type shareDocumentResponse = (shareDocumentResponseSuccess | shareDocumentResponseError)\n\nexport const getShareDocumentUrl = (id: string,) => {\n\n\n  \n\n  return `/documents/${id}/share`\n}\n\nexport const shareDocument = async (id: string, options?: RequestInit): Promise<shareDocumentResponse> => {\n  \n  return customFetch<shareDocumentResponse>(getShareDocumentUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve the shareable token for a document if one exists. Document type is automatically detected from the ID prefix (inv_, est_, cre_, adv_).\n * @summary Get shareable token\n */\nexport type getShareableIdResponse200 = {\n  data: ShareableId\n  status: 200\n}\n\nexport type getShareableIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getShareableIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getShareableIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getShareableIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getShareableIdResponseSuccess = (getShareableIdResponse200) & {\n  headers: Headers;\n};\nexport type getShareableIdResponseError = (getShareableIdResponse401 | getShareableIdResponse403 | getShareableIdResponse404 | getShareableIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getShareableIdResponse = (getShareableIdResponseSuccess | getShareableIdResponseError)\n\nexport const getGetShareableIdUrl = (id: string,) => {\n\n\n  \n\n  return `/documents/${id}/share`\n}\n\nexport const getShareableId = async (id: string, options?: RequestInit): Promise<getShareableIdResponse> => {\n  \n  return customFetch<getShareableIdResponse>(getGetShareableIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Remove the shareable token from a document. The document will no longer be accessible via public link. Document type is automatically detected from the ID prefix (inv_, est_, cre_, adv_).\n * @summary Unshare document\n */\nexport type unshareDocumentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type unshareDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type unshareDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type unshareDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type unshareDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type unshareDocumentResponseSuccess = (unshareDocumentResponse204) & {\n  headers: Headers;\n};\nexport type unshareDocumentResponseError = (unshareDocumentResponse401 | unshareDocumentResponse403 | unshareDocumentResponse404 | unshareDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type unshareDocumentResponse = (unshareDocumentResponseSuccess | unshareDocumentResponseError)\n\nexport const getUnshareDocumentUrl = (id: string,) => {\n\n\n  \n\n  return `/documents/${id}/share`\n}\n\nexport const unshareDocument = async (id: string, options?: RequestInit): Promise<unshareDocumentResponse> => {\n  \n  return customFetch<unshareDocumentResponse>(getUnshareDocumentUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Documents API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  calculateDocumentPreview,\n  deleteDocument,\n  finalizeDocument,\n  fiscalizeDocument,\n  getNextDocumentNumber,\n  getShareableId,\n  permanentDeleteDocument,\n  restoreDocument,\n  sendDocument,\n  shareDocument,\n  unshareDocument,\n} from \"../generated/documents/documents\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const documents = {\n  /** @see getNextDocumentNumber */\n  getNextNumber: wrapMethod(getNextDocumentNumber),\n\n  /** @see calculateDocumentPreview */\n  calculateDocumentPreview: wrapMethod(calculateDocumentPreview),\n\n  /** @see finalizeDocument */\n  finalizeDocument: wrapMethod(finalizeDocument),\n\n  /** @see fiscalizeDocument */\n  fiscalizeDocument: wrapMethod(fiscalizeDocument),\n\n  /** @see deleteDocument */\n  delete: wrapMethod(deleteDocument),\n\n  /** @see restoreDocument */\n  restoreDocument: wrapMethod(restoreDocument),\n\n  /** @see permanentDeleteDocument */\n  permanentDeleteDocument: wrapMethod(permanentDeleteDocument),\n\n  /** @see sendDocument */\n  sendDocument: wrapMethod(sendDocument),\n\n  /** @see shareDocument */\n  shareDocument: wrapMethod(shareDocument),\n\n  /** @see getShareableId */\n  getShareableId: wrapMethod(getShareableId),\n\n  /** @see unshareDocument */\n  unshareDocument: wrapMethod(unshareDocument),\n} as const;\n\nexport type DocumentsApi = typeof documents;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  EInvoicingCustomerSearchRequest,\n  EInvoicingSettingsResponse,\n  EInvoicingSubmission,\n  EInvoicingSubmissionDetail,\n  EInvoicingSupplier,\n  Error,\n  HandleFlowinWebhookBody,\n  ListEInvoicingSubmissions200,\n  ListEInvoicingSubmissionsParams,\n  RegisterEInvoicingSupplierRequest,\n  SearchEInvoicingCustomer200,\n  SendEInvoiceRequest,\n  UpdateEInvoicingSettingsRequest,\n  UpdateEInvoicingSupplierRequest,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Get the current e-invoicing settings for the entity.\n * @summary Get e-invoicing settings\n */\nexport type getEInvoicingSettingsResponse200 = {\n  data: EInvoicingSettingsResponse\n  status: 200\n}\n\nexport type getEInvoicingSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEInvoicingSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEInvoicingSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEInvoicingSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEInvoicingSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEInvoicingSettingsResponseSuccess = (getEInvoicingSettingsResponse200) & {\n  headers: Headers;\n};\nexport type getEInvoicingSettingsResponseError = (getEInvoicingSettingsResponse400 | getEInvoicingSettingsResponse401 | getEInvoicingSettingsResponse403 | getEInvoicingSettingsResponse404 | getEInvoicingSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type getEInvoicingSettingsResponse = (getEInvoicingSettingsResponseSuccess | getEInvoicingSettingsResponseError)\n\nexport const getGetEInvoicingSettingsUrl = () => {\n\n\n  \n\n  return `/e-invoicing/settings`\n}\n\nexport const getEInvoicingSettings = async ( options?: RequestInit): Promise<getEInvoicingSettingsResponse> => {\n  \n  return customFetch<getEInvoicingSettingsResponse>(getGetEInvoicingSettingsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update e-invoicing settings for the entity. Only sandbox entities can enable e-invoicing unless live mode is explicitly enabled.\n * @summary Update e-invoicing settings\n */\nexport type updateEInvoicingSettingsResponse200 = {\n  data: EInvoicingSettingsResponse\n  status: 200\n}\n\nexport type updateEInvoicingSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateEInvoicingSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateEInvoicingSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateEInvoicingSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateEInvoicingSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateEInvoicingSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateEInvoicingSettingsResponseSuccess = (updateEInvoicingSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateEInvoicingSettingsResponseError = (updateEInvoicingSettingsResponse400 | updateEInvoicingSettingsResponse401 | updateEInvoicingSettingsResponse403 | updateEInvoicingSettingsResponse404 | updateEInvoicingSettingsResponse422 | updateEInvoicingSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateEInvoicingSettingsResponse = (updateEInvoicingSettingsResponseSuccess | updateEInvoicingSettingsResponseError)\n\nexport const getUpdateEInvoicingSettingsUrl = () => {\n\n\n  \n\n  return `/e-invoicing/settings`\n}\n\nexport const updateEInvoicingSettings = async (updateEInvoicingSettingsRequest: UpdateEInvoicingSettingsRequest, options?: RequestInit): Promise<updateEInvoicingSettingsResponse> => {\n  \n  return customFetch<updateEInvoicingSettingsResponse>(getUpdateEInvoicingSettingsUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateEInvoicingSettingsRequest,)\n  }\n);}\n  \n\n/**\n * Register the entity as an e-invoicing supplier with Flowin. This starts the KYC/onboarding process.\n * @summary Register supplier\n */\nexport type registerEInvoicingSupplierResponse201 = {\n  data: EInvoicingSupplier\n  status: 201\n}\n\nexport type registerEInvoicingSupplierResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type registerEInvoicingSupplierResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type registerEInvoicingSupplierResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type registerEInvoicingSupplierResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type registerEInvoicingSupplierResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type registerEInvoicingSupplierResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type registerEInvoicingSupplierResponseSuccess = (registerEInvoicingSupplierResponse201) & {\n  headers: Headers;\n};\nexport type registerEInvoicingSupplierResponseError = (registerEInvoicingSupplierResponse400 | registerEInvoicingSupplierResponse401 | registerEInvoicingSupplierResponse403 | registerEInvoicingSupplierResponse404 | registerEInvoicingSupplierResponse422 | registerEInvoicingSupplierResponse500) & {\n  headers: Headers;\n};\n\nexport type registerEInvoicingSupplierResponse = (registerEInvoicingSupplierResponseSuccess | registerEInvoicingSupplierResponseError)\n\nexport const getRegisterEInvoicingSupplierUrl = () => {\n\n\n  \n\n  return `/e-invoicing/supplier`\n}\n\nexport const registerEInvoicingSupplier = async (registerEInvoicingSupplierRequest: RegisterEInvoicingSupplierRequest, options?: RequestInit): Promise<registerEInvoicingSupplierResponse> => {\n  \n  return customFetch<registerEInvoicingSupplierResponse>(getRegisterEInvoicingSupplierUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      registerEInvoicingSupplierRequest,)\n  }\n);}\n  \n\n/**\n * Get the current e-invoicing supplier onboarding status for this entity.\n * @summary Get supplier status\n */\nexport type getEInvoicingSupplierResponse200 = {\n  data: EInvoicingSupplier\n  status: 200\n}\n\nexport type getEInvoicingSupplierResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEInvoicingSupplierResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEInvoicingSupplierResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEInvoicingSupplierResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEInvoicingSupplierResponseSuccess = (getEInvoicingSupplierResponse200) & {\n  headers: Headers;\n};\nexport type getEInvoicingSupplierResponseError = (getEInvoicingSupplierResponse401 | getEInvoicingSupplierResponse403 | getEInvoicingSupplierResponse404 | getEInvoicingSupplierResponse500) & {\n  headers: Headers;\n};\n\nexport type getEInvoicingSupplierResponse = (getEInvoicingSupplierResponseSuccess | getEInvoicingSupplierResponseError)\n\nexport const getGetEInvoicingSupplierUrl = () => {\n\n\n  \n\n  return `/e-invoicing/supplier`\n}\n\nexport const getEInvoicingSupplier = async ( options?: RequestInit): Promise<getEInvoicingSupplierResponse> => {\n  \n  return customFetch<getEInvoicingSupplierResponse>(getGetEInvoicingSupplierUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update supplier onboarding data (company details). Only allowed before onboarding is complete.\n * @summary Update supplier data\n */\nexport type updateEInvoicingSupplierResponse200 = {\n  data: EInvoicingSupplier\n  status: 200\n}\n\nexport type updateEInvoicingSupplierResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateEInvoicingSupplierResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateEInvoicingSupplierResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateEInvoicingSupplierResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateEInvoicingSupplierResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateEInvoicingSupplierResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateEInvoicingSupplierResponseSuccess = (updateEInvoicingSupplierResponse200) & {\n  headers: Headers;\n};\nexport type updateEInvoicingSupplierResponseError = (updateEInvoicingSupplierResponse400 | updateEInvoicingSupplierResponse401 | updateEInvoicingSupplierResponse403 | updateEInvoicingSupplierResponse404 | updateEInvoicingSupplierResponse422 | updateEInvoicingSupplierResponse500) & {\n  headers: Headers;\n};\n\nexport type updateEInvoicingSupplierResponse = (updateEInvoicingSupplierResponseSuccess | updateEInvoicingSupplierResponseError)\n\nexport const getUpdateEInvoicingSupplierUrl = () => {\n\n\n  \n\n  return `/e-invoicing/supplier`\n}\n\nexport const updateEInvoicingSupplier = async (updateEInvoicingSupplierRequest: UpdateEInvoicingSupplierRequest, options?: RequestInit): Promise<updateEInvoicingSupplierResponse> => {\n  \n  return customFetch<updateEInvoicingSupplierResponse>(getUpdateEInvoicingSupplierUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateEInvoicingSupplierRequest,)\n  }\n);}\n  \n\n/**\n * Check if a recipient is registered on the Peppol network and can receive e-invoices.\n * @summary Search Peppol customer\n */\nexport type searchEInvoicingCustomerResponse200 = {\n  data: SearchEInvoicingCustomer200\n  status: 200\n}\n\nexport type searchEInvoicingCustomerResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type searchEInvoicingCustomerResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type searchEInvoicingCustomerResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type searchEInvoicingCustomerResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type searchEInvoicingCustomerResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type searchEInvoicingCustomerResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type searchEInvoicingCustomerResponseSuccess = (searchEInvoicingCustomerResponse200) & {\n  headers: Headers;\n};\nexport type searchEInvoicingCustomerResponseError = (searchEInvoicingCustomerResponse400 | searchEInvoicingCustomerResponse401 | searchEInvoicingCustomerResponse403 | searchEInvoicingCustomerResponse404 | searchEInvoicingCustomerResponse422 | searchEInvoicingCustomerResponse500) & {\n  headers: Headers;\n};\n\nexport type searchEInvoicingCustomerResponse = (searchEInvoicingCustomerResponseSuccess | searchEInvoicingCustomerResponseError)\n\nexport const getSearchEInvoicingCustomerUrl = () => {\n\n\n  \n\n  return `/e-invoicing/customer-search`\n}\n\nexport const searchEInvoicingCustomer = async (eInvoicingCustomerSearchRequest: EInvoicingCustomerSearchRequest, options?: RequestInit): Promise<searchEInvoicingCustomerResponse> => {\n  \n  return customFetch<searchEInvoicingCustomerResponse>(getSearchEInvoicingCustomerUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      eInvoicingCustomerSearchRequest,)\n  }\n);}\n  \n\n/**\n * Send a document as an e-invoice via the Peppol network. Generates UBL XML and submits to Flowin.\n * @summary Send e-invoice\n */\nexport type sendEInvoiceResponse201 = {\n  data: EInvoicingSubmission\n  status: 201\n}\n\nexport type sendEInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type sendEInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type sendEInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type sendEInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type sendEInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type sendEInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type sendEInvoiceResponseSuccess = (sendEInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type sendEInvoiceResponseError = (sendEInvoiceResponse400 | sendEInvoiceResponse401 | sendEInvoiceResponse403 | sendEInvoiceResponse404 | sendEInvoiceResponse422 | sendEInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type sendEInvoiceResponse = (sendEInvoiceResponseSuccess | sendEInvoiceResponseError)\n\nexport const getSendEInvoiceUrl = () => {\n\n\n  \n\n  return `/e-invoicing/send/:documentType/:documentId`\n}\n\nexport const sendEInvoice = async (sendEInvoiceRequest: SendEInvoiceRequest, options?: RequestInit): Promise<sendEInvoiceResponse> => {\n  \n  return customFetch<sendEInvoiceResponse>(getSendEInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      sendEInvoiceRequest,)\n  }\n);}\n  \n\n/**\n * List e-invoice submissions with pagination.\n * @summary List submissions\n */\nexport type listEInvoicingSubmissionsResponse200 = {\n  data: ListEInvoicingSubmissions200\n  status: 200\n}\n\nexport type listEInvoicingSubmissionsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listEInvoicingSubmissionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listEInvoicingSubmissionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listEInvoicingSubmissionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listEInvoicingSubmissionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listEInvoicingSubmissionsResponseSuccess = (listEInvoicingSubmissionsResponse200) & {\n  headers: Headers;\n};\nexport type listEInvoicingSubmissionsResponseError = (listEInvoicingSubmissionsResponse400 | listEInvoicingSubmissionsResponse401 | listEInvoicingSubmissionsResponse403 | listEInvoicingSubmissionsResponse404 | listEInvoicingSubmissionsResponse500) & {\n  headers: Headers;\n};\n\nexport type listEInvoicingSubmissionsResponse = (listEInvoicingSubmissionsResponseSuccess | listEInvoicingSubmissionsResponseError)\n\nexport const getListEInvoicingSubmissionsUrl = (params?: ListEInvoicingSubmissionsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/e-invoicing/submissions?${stringifiedParams}` : `/e-invoicing/submissions`\n}\n\nexport const listEInvoicingSubmissions = async (params?: ListEInvoicingSubmissionsParams, options?: RequestInit): Promise<listEInvoicingSubmissionsResponse> => {\n  \n  return customFetch<listEInvoicingSubmissionsResponse>(getListEInvoicingSubmissionsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get detailed submission status including UBL XML.\n * @summary Get submission detail\n */\nexport type getEInvoicingSubmissionResponse200 = {\n  data: EInvoicingSubmissionDetail\n  status: 200\n}\n\nexport type getEInvoicingSubmissionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEInvoicingSubmissionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEInvoicingSubmissionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEInvoicingSubmissionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEInvoicingSubmissionResponseSuccess = (getEInvoicingSubmissionResponse200) & {\n  headers: Headers;\n};\nexport type getEInvoicingSubmissionResponseError = (getEInvoicingSubmissionResponse401 | getEInvoicingSubmissionResponse403 | getEInvoicingSubmissionResponse404 | getEInvoicingSubmissionResponse500) & {\n  headers: Headers;\n};\n\nexport type getEInvoicingSubmissionResponse = (getEInvoicingSubmissionResponseSuccess | getEInvoicingSubmissionResponseError)\n\nexport const getGetEInvoicingSubmissionUrl = () => {\n\n\n  \n\n  return `/e-invoicing/submissions/:id`\n}\n\nexport const getEInvoicingSubmission = async ( options?: RequestInit): Promise<getEInvoicingSubmissionResponse> => {\n  \n  return customFetch<getEInvoicingSubmissionResponse>(getGetEInvoicingSubmissionUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retry a failed or rejected e-invoice submission.\n * @summary Retry failed submission\n */\nexport type retryEInvoicingSubmissionResponse200 = {\n  data: EInvoicingSubmission\n  status: 200\n}\n\nexport type retryEInvoicingSubmissionResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type retryEInvoicingSubmissionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type retryEInvoicingSubmissionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type retryEInvoicingSubmissionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type retryEInvoicingSubmissionResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type retryEInvoicingSubmissionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type retryEInvoicingSubmissionResponseSuccess = (retryEInvoicingSubmissionResponse200) & {\n  headers: Headers;\n};\nexport type retryEInvoicingSubmissionResponseError = (retryEInvoicingSubmissionResponse400 | retryEInvoicingSubmissionResponse401 | retryEInvoicingSubmissionResponse403 | retryEInvoicingSubmissionResponse404 | retryEInvoicingSubmissionResponse422 | retryEInvoicingSubmissionResponse500) & {\n  headers: Headers;\n};\n\nexport type retryEInvoicingSubmissionResponse = (retryEInvoicingSubmissionResponseSuccess | retryEInvoicingSubmissionResponseError)\n\nexport const getRetryEInvoicingSubmissionUrl = () => {\n\n\n  \n\n  return `/e-invoicing/submissions/:id/retry`\n}\n\nexport const retryEInvoicingSubmission = async ( options?: RequestInit): Promise<retryEInvoicingSubmissionResponse> => {\n  \n  return customFetch<retryEInvoicingSubmissionResponse>(getRetryEInvoicingSubmissionUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Internal endpoint for receiving status updates from Flowin. Not intended for direct API use.\n * @summary Flowin webhook receiver\n */\nexport type handleFlowinWebhookResponse200 = {\n  data: void\n  status: 200\n}\n\nexport type handleFlowinWebhookResponse401 = {\n  data: void\n  status: 401\n}\n\nexport type handleFlowinWebhookResponseSuccess = (handleFlowinWebhookResponse200) & {\n  headers: Headers;\n};\nexport type handleFlowinWebhookResponseError = (handleFlowinWebhookResponse401) & {\n  headers: Headers;\n};\n\nexport type handleFlowinWebhookResponse = (handleFlowinWebhookResponseSuccess | handleFlowinWebhookResponseError)\n\nexport const getHandleFlowinWebhookUrl = () => {\n\n\n  \n\n  return `/e-invoicing/webhooks/flowin`\n}\n\nexport const handleFlowinWebhook = async (handleFlowinWebhookBody: HandleFlowinWebhookBody, options?: RequestInit): Promise<handleFlowinWebhookResponse> => {\n  \n  return customFetch<handleFlowinWebhookResponse>(getHandleFlowinWebhookUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      handleFlowinWebhookBody,)\n  }\n);}\n  \n\n",
    "/**\n * EInvoicing API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  getEInvoicingSettings,\n  getEInvoicingSubmission,\n  getEInvoicingSupplier,\n  handleFlowinWebhook,\n  listEInvoicingSubmissions,\n  registerEInvoicingSupplier,\n  retryEInvoicingSubmission,\n  searchEInvoicingCustomer,\n  sendEInvoice,\n  updateEInvoicingSettings,\n} from \"../generated/e-invoicing/e-invoicing\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const eInvoicing = {\n  /** @see getEInvoicingSettings */\n  list: wrapMethod(getEInvoicingSettings),\n\n  /** @see updateEInvoicingSettings */\n  update: wrapMethod(updateEInvoicingSettings),\n\n  /** @see registerEInvoicingSupplier */\n  registerEInvoicingSupplier: wrapMethod(registerEInvoicingSupplier),\n\n  /** @see getEInvoicingSupplier */\n  getEInvoicingSupplier: wrapMethod(getEInvoicingSupplier),\n\n  /** @see searchEInvoicingCustomer */\n  searchEInvoicingCustomer: wrapMethod(searchEInvoicingCustomer),\n\n  /** @see sendEInvoice */\n  sendEInvoice: wrapMethod(sendEInvoice),\n\n  /** @see listEInvoicingSubmissions */\n  listEInvoicingSubmissions: wrapMethod(listEInvoicingSubmissions),\n\n  /** @see getEInvoicingSubmission */\n  getEInvoicingSubmission: wrapMethod(getEInvoicingSubmission),\n\n  /** @see retryEInvoicingSubmission */\n  retryEInvoicingSubmission: wrapMethod(retryEInvoicingSubmission),\n\n  /** @see handleFlowinWebhook */\n  handleFlowinWebhook: wrapMethod(handleFlowinWebhook),\n} as const;\n\nexport type EInvoicingApi = typeof eInvoicing;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  SendEmail200,\n  SendEmailBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Send an email with automatic company logo and optional document attachment. When a document_id is provided, a public shareable link is automatically generated and can be included in the email body using the {invoice_link} variable. If the variable is not used, the link is appended to the body. The PDF attachment is opt-in via attach_pdf flag (default: false). Email body supports markdown formatting and template variables like {document_number}, {customer_name}, {entity_name}, {invoice_link}, etc.\n * @summary Send email with optional PDF attachment\n */\nexport type sendEmailResponse200 = {\n  data: SendEmail200\n  status: 200\n}\n\nexport type sendEmailResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type sendEmailResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type sendEmailResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type sendEmailResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type sendEmailResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type sendEmailResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type sendEmailResponseSuccess = (sendEmailResponse200) & {\n  headers: Headers;\n};\nexport type sendEmailResponseError = (sendEmailResponse400 | sendEmailResponse401 | sendEmailResponse403 | sendEmailResponse404 | sendEmailResponse422 | sendEmailResponse500) & {\n  headers: Headers;\n};\n\nexport type sendEmailResponse = (sendEmailResponseSuccess | sendEmailResponseError)\n\nexport const getSendEmailUrl = () => {\n\n\n  \n\n  return `/email/send`\n}\n\nexport const sendEmail = async (sendEmailBody: SendEmailBody, options?: RequestInit): Promise<sendEmailResponse> => {\n  \n  return customFetch<sendEmailResponse>(getSendEmailUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      sendEmailBody,)\n  }\n);}\n  \n\n",
    "/**\n * Email API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { sendEmail } from \"../generated/email/email\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const email = {\n  /** @see sendEmail */\n  sendEmail: wrapMethod(sendEmail),\n} as const;\n\nexport type EmailApi = typeof email;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateEntityBody,\n  Entity,\n  Error,\n  GetEntities200,\n  GetEntitiesParams,\n  PatchEntityBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new legal entity (business, organization, or sole proprietor). Entities are the core organizational unit that owns customers, invoices, and items. Each entity can have custom number formatting for invoices and other settings.\n * @summary Create a new entity\n */\nexport type createEntityResponse201 = {\n  data: Entity\n  status: 201\n}\n\nexport type createEntityResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createEntityResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createEntityResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createEntityResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createEntityResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createEntityResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createEntityResponseSuccess = (createEntityResponse201) & {\n  headers: Headers;\n};\nexport type createEntityResponseError = (createEntityResponse400 | createEntityResponse401 | createEntityResponse403 | createEntityResponse404 | createEntityResponse422 | createEntityResponse500) & {\n  headers: Headers;\n};\n\nexport type createEntityResponse = (createEntityResponseSuccess | createEntityResponseError)\n\nexport const getCreateEntityUrl = () => {\n\n\n  \n\n  return `/entities`\n}\n\nexport const createEntity = async (createEntityBody: CreateEntityBody, options?: RequestInit): Promise<createEntityResponse> => {\n  \n  return customFetch<createEntityResponse>(getCreateEntityUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createEntityBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of entities with optional filtering and sorting. Supports cursor-based pagination for efficient navigation, flexible JSON querying with MongoDB-style operators, full-text search across entity names and countries, and sorting by various entity properties.\n * @summary List all entities\n */\nexport type getEntitiesResponse200 = {\n  data: GetEntities200\n  status: 200\n}\n\nexport type getEntitiesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEntitiesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEntitiesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEntitiesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEntitiesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEntitiesResponseSuccess = (getEntitiesResponse200) & {\n  headers: Headers;\n};\nexport type getEntitiesResponseError = (getEntitiesResponse400 | getEntitiesResponse401 | getEntitiesResponse403 | getEntitiesResponse404 | getEntitiesResponse500) & {\n  headers: Headers;\n};\n\nexport type getEntitiesResponse = (getEntitiesResponseSuccess | getEntitiesResponseError)\n\nexport const getGetEntitiesUrl = (params?: GetEntitiesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/entities?${stringifiedParams}` : `/entities`\n}\n\nexport const getEntities = async (params?: GetEntitiesParams, options?: RequestInit): Promise<getEntitiesResponse> => {\n  \n  return customFetch<getEntitiesResponse>(getGetEntitiesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single legal entity by its unique identifier. Returns the full entity including settings, metadata, and computed country rules.\n * @summary Get entity by ID\n */\nexport type getEntityByIdResponse200 = {\n  data: Entity\n  status: 200\n}\n\nexport type getEntityByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEntityByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEntityByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEntityByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEntityByIdResponseSuccess = (getEntityByIdResponse200) & {\n  headers: Headers;\n};\nexport type getEntityByIdResponseError = (getEntityByIdResponse401 | getEntityByIdResponse403 | getEntityByIdResponse404 | getEntityByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getEntityByIdResponse = (getEntityByIdResponseSuccess | getEntityByIdResponseError)\n\nexport const getGetEntityByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/${id}`\n}\n\nexport const getEntityById = async (id: string, options?: RequestInit): Promise<getEntityByIdResponse> => {\n  \n  return customFetch<getEntityByIdResponse>(getGetEntityByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing entity's details. All fields are optional; only provided fields will be updated. Use this to modify entity information, address, tax details, or custom settings. Note: Country and country_code cannot be changed after entity creation.\n * @summary Update an entity\n */\nexport type patchEntityResponse200 = {\n  data: Entity\n  status: 200\n}\n\nexport type patchEntityResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type patchEntityResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type patchEntityResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type patchEntityResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type patchEntityResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type patchEntityResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type patchEntityResponseSuccess = (patchEntityResponse200) & {\n  headers: Headers;\n};\nexport type patchEntityResponseError = (patchEntityResponse400 | patchEntityResponse401 | patchEntityResponse403 | patchEntityResponse404 | patchEntityResponse422 | patchEntityResponse500) & {\n  headers: Headers;\n};\n\nexport type patchEntityResponse = (patchEntityResponseSuccess | patchEntityResponseError)\n\nexport const getPatchEntityUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/${id}`\n}\n\nexport const patchEntity = async (id: string,\n    patchEntityBody: PatchEntityBody, options?: RequestInit): Promise<patchEntityResponse> => {\n  \n  return customFetch<patchEntityResponse>(getPatchEntityUrl(id),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      patchEntityBody,)\n  }\n);}\n  \n\n/**\n * Re-enable a disabled entity. Enabled entities can create documents (invoices, estimates, credit notes, etc.). This operation is idempotent - enabling an already enabled entity has no effect.\n * @summary Enable an entity\n */\nexport type enableEntityResponse200 = {\n  data: Entity\n  status: 200\n}\n\nexport type enableEntityResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type enableEntityResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type enableEntityResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type enableEntityResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type enableEntityResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type enableEntityResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type enableEntityResponseSuccess = (enableEntityResponse200) & {\n  headers: Headers;\n};\nexport type enableEntityResponseError = (enableEntityResponse400 | enableEntityResponse401 | enableEntityResponse403 | enableEntityResponse404 | enableEntityResponse422 | enableEntityResponse500) & {\n  headers: Headers;\n};\n\nexport type enableEntityResponse = (enableEntityResponseSuccess | enableEntityResponseError)\n\nexport const getEnableEntityUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/${id}/enable`\n}\n\nexport const enableEntity = async (id: string, options?: RequestInit): Promise<enableEntityResponse> => {\n  \n  return customFetch<enableEntityResponse>(getEnableEntityUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Disable an entity. Disabled entities cannot create documents (invoices, estimates, credit notes, etc.) but all data remains accessible and settings can still be updated. This operation is idempotent - disabling an already disabled entity has no effect.\n * @summary Disable an entity\n */\nexport type disableEntityResponse200 = {\n  data: Entity\n  status: 200\n}\n\nexport type disableEntityResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type disableEntityResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type disableEntityResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type disableEntityResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type disableEntityResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type disableEntityResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type disableEntityResponseSuccess = (disableEntityResponse200) & {\n  headers: Headers;\n};\nexport type disableEntityResponseError = (disableEntityResponse400 | disableEntityResponse401 | disableEntityResponse403 | disableEntityResponse404 | disableEntityResponse422 | disableEntityResponse500) & {\n  headers: Headers;\n};\n\nexport type disableEntityResponse = (disableEntityResponseSuccess | disableEntityResponseError)\n\nexport const getDisableEntityUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/${id}/disable`\n}\n\nexport const disableEntity = async (id: string, options?: RequestInit): Promise<disableEntityResponse> => {\n  \n  return customFetch<disableEntityResponse>(getDisableEntityUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Entities API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createEntity,\n  disableEntity,\n  enableEntity,\n  getEntities,\n  getEntityById,\n  patchEntity,\n} from \"../generated/entities/entities\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const entities = {\n  /** @see createEntity */\n  create: wrapMethod(createEntity),\n\n  /** @see getEntities */\n  list: wrapListMethod(getEntities),\n\n  /** @see getEntityById */\n  get: wrapMethod(getEntityById),\n\n  /** @see patchEntity */\n  update: wrapMethod(patchEntity),\n\n  /** @see enableEntity */\n  enableEntity: wrapMethod(enableEntity),\n\n  /** @see disableEntity */\n  disableEntity: wrapMethod(disableEntity),\n} as const;\n\nexport type EntitiesApi = typeof entities;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateEntityApiKeyBody,\n  DeleteEntityApiKey200,\n  EntityApiKey,\n  EntityApiKeysList,\n  Error,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve all API keys for the current entity. Keys are masked for security.\n * @summary List entity API keys\n */\nexport type listEntityApiKeysResponse200 = {\n  data: EntityApiKeysList\n  status: 200\n}\n\nexport type listEntityApiKeysResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listEntityApiKeysResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listEntityApiKeysResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listEntityApiKeysResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listEntityApiKeysResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listEntityApiKeysResponseSuccess = (listEntityApiKeysResponse200) & {\n  headers: Headers;\n};\nexport type listEntityApiKeysResponseError = (listEntityApiKeysResponse400 | listEntityApiKeysResponse401 | listEntityApiKeysResponse403 | listEntityApiKeysResponse404 | listEntityApiKeysResponse500) & {\n  headers: Headers;\n};\n\nexport type listEntityApiKeysResponse = (listEntityApiKeysResponseSuccess | listEntityApiKeysResponseError)\n\nexport const getListEntityApiKeysUrl = () => {\n\n\n  \n\n  return `/entities/api-keys`\n}\n\nexport const listEntityApiKeys = async ( options?: RequestInit): Promise<listEntityApiKeysResponse> => {\n  \n  return customFetch<listEntityApiKeysResponse>(getListEntityApiKeysUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new entity-scoped API key (ek_* prefix). This key can only access this specific entity.\n * @summary Create entity API key\n */\nexport type createEntityApiKeyResponse201 = {\n  data: EntityApiKey\n  status: 201\n}\n\nexport type createEntityApiKeyResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createEntityApiKeyResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createEntityApiKeyResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createEntityApiKeyResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createEntityApiKeyResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createEntityApiKeyResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createEntityApiKeyResponseSuccess = (createEntityApiKeyResponse201) & {\n  headers: Headers;\n};\nexport type createEntityApiKeyResponseError = (createEntityApiKeyResponse400 | createEntityApiKeyResponse401 | createEntityApiKeyResponse403 | createEntityApiKeyResponse404 | createEntityApiKeyResponse422 | createEntityApiKeyResponse500) & {\n  headers: Headers;\n};\n\nexport type createEntityApiKeyResponse = (createEntityApiKeyResponseSuccess | createEntityApiKeyResponseError)\n\nexport const getCreateEntityApiKeyUrl = () => {\n\n\n  \n\n  return `/entities/api-keys`\n}\n\nexport const createEntityApiKey = async (createEntityApiKeyBody: CreateEntityApiKeyBody, options?: RequestInit): Promise<createEntityApiKeyResponse> => {\n  \n  return customFetch<createEntityApiKeyResponse>(getCreateEntityApiKeyUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createEntityApiKeyBody,)\n  }\n);}\n  \n\n/**\n * Permanently delete an entity API key. This action cannot be undone.\n * @summary Delete entity API key\n */\nexport type deleteEntityApiKeyResponse200 = {\n  data: DeleteEntityApiKey200\n  status: 200\n}\n\nexport type deleteEntityApiKeyResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteEntityApiKeyResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteEntityApiKeyResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteEntityApiKeyResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteEntityApiKeyResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteEntityApiKeyResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteEntityApiKeyResponseSuccess = (deleteEntityApiKeyResponse200) & {\n  headers: Headers;\n};\nexport type deleteEntityApiKeyResponseError = (deleteEntityApiKeyResponse400 | deleteEntityApiKeyResponse401 | deleteEntityApiKeyResponse403 | deleteEntityApiKeyResponse404 | deleteEntityApiKeyResponse422 | deleteEntityApiKeyResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteEntityApiKeyResponse = (deleteEntityApiKeyResponseSuccess | deleteEntityApiKeyResponseError)\n\nexport const getDeleteEntityApiKeyUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/api-keys/${id}`\n}\n\nexport const deleteEntityApiKey = async (id: string, options?: RequestInit): Promise<deleteEntityApiKeyResponse> => {\n  \n  return customFetch<deleteEntityApiKeyResponse>(getDeleteEntityApiKeyUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * EntityApiKeys API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createEntityApiKey,\n  deleteEntityApiKey,\n  listEntityApiKeys,\n} from \"../generated/entity-api-keys/entity-api-keys\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const entityApiKeys = {\n  /** @see listEntityApiKeys */\n  listEntityApiKeys: wrapMethod(listEntityApiKeys),\n\n  /** @see createEntityApiKey */\n  create: wrapMethod(createEntityApiKey),\n\n  /** @see deleteEntityApiKey */\n  delete: wrapMethod(deleteEntityApiKey),\n} as const;\n\nexport type EntityApiKeysApi = typeof entityApiKeys;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AcceptEntityInvitationBody,\n  AcceptEntityInvitationParams,\n  AcceptInvitationResponse,\n  CancelEntityInvitation200,\n  EntityInvitation,\n  EntityInvitationsList,\n  Error,\n  ResendInvitationResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve all invitations for the current entity, including pending, accepted, and expired.\n * @summary List entity invitations\n */\nexport type listEntityInvitationsResponse200 = {\n  data: EntityInvitationsList\n  status: 200\n}\n\nexport type listEntityInvitationsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listEntityInvitationsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listEntityInvitationsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listEntityInvitationsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listEntityInvitationsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listEntityInvitationsResponseSuccess = (listEntityInvitationsResponse200) & {\n  headers: Headers;\n};\nexport type listEntityInvitationsResponseError = (listEntityInvitationsResponse400 | listEntityInvitationsResponse401 | listEntityInvitationsResponse403 | listEntityInvitationsResponse404 | listEntityInvitationsResponse500) & {\n  headers: Headers;\n};\n\nexport type listEntityInvitationsResponse = (listEntityInvitationsResponseSuccess | listEntityInvitationsResponseError)\n\nexport const getListEntityInvitationsUrl = () => {\n\n\n  \n\n  return `/entities/invitations`\n}\n\nexport const listEntityInvitations = async ( options?: RequestInit): Promise<listEntityInvitationsResponse> => {\n  \n  return customFetch<listEntityInvitationsResponse>(getListEntityInvitationsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve details of a specific invitation.\n * @summary Get entity invitation\n */\nexport type getEntityInvitationResponse200 = {\n  data: EntityInvitation\n  status: 200\n}\n\nexport type getEntityInvitationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEntityInvitationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEntityInvitationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEntityInvitationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEntityInvitationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEntityInvitationResponseSuccess = (getEntityInvitationResponse200) & {\n  headers: Headers;\n};\nexport type getEntityInvitationResponseError = (getEntityInvitationResponse400 | getEntityInvitationResponse401 | getEntityInvitationResponse403 | getEntityInvitationResponse404 | getEntityInvitationResponse500) & {\n  headers: Headers;\n};\n\nexport type getEntityInvitationResponse = (getEntityInvitationResponseSuccess | getEntityInvitationResponseError)\n\nexport const getGetEntityInvitationUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/invitations/${id}`\n}\n\nexport const getEntityInvitation = async (id: string, options?: RequestInit): Promise<getEntityInvitationResponse> => {\n  \n  return customFetch<getEntityInvitationResponse>(getGetEntityInvitationUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Cancel a pending invitation. Cannot cancel already accepted invitations.\n * @summary Cancel invitation\n */\nexport type cancelEntityInvitationResponse200 = {\n  data: CancelEntityInvitation200\n  status: 200\n}\n\nexport type cancelEntityInvitationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type cancelEntityInvitationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type cancelEntityInvitationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type cancelEntityInvitationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type cancelEntityInvitationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type cancelEntityInvitationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type cancelEntityInvitationResponseSuccess = (cancelEntityInvitationResponse200) & {\n  headers: Headers;\n};\nexport type cancelEntityInvitationResponseError = (cancelEntityInvitationResponse400 | cancelEntityInvitationResponse401 | cancelEntityInvitationResponse403 | cancelEntityInvitationResponse404 | cancelEntityInvitationResponse422 | cancelEntityInvitationResponse500) & {\n  headers: Headers;\n};\n\nexport type cancelEntityInvitationResponse = (cancelEntityInvitationResponseSuccess | cancelEntityInvitationResponseError)\n\nexport const getCancelEntityInvitationUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/invitations/${id}`\n}\n\nexport const cancelEntityInvitation = async (id: string, options?: RequestInit): Promise<cancelEntityInvitationResponse> => {\n  \n  return customFetch<cancelEntityInvitationResponse>(getCancelEntityInvitationUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Resend an invitation email with a new token and extended expiry.\n * @summary Resend invitation\n */\nexport type resendEntityInvitationResponse200 = {\n  data: ResendInvitationResponse\n  status: 200\n}\n\nexport type resendEntityInvitationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type resendEntityInvitationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type resendEntityInvitationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type resendEntityInvitationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type resendEntityInvitationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type resendEntityInvitationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type resendEntityInvitationResponseSuccess = (resendEntityInvitationResponse200) & {\n  headers: Headers;\n};\nexport type resendEntityInvitationResponseError = (resendEntityInvitationResponse400 | resendEntityInvitationResponse401 | resendEntityInvitationResponse403 | resendEntityInvitationResponse404 | resendEntityInvitationResponse422 | resendEntityInvitationResponse500) & {\n  headers: Headers;\n};\n\nexport type resendEntityInvitationResponse = (resendEntityInvitationResponseSuccess | resendEntityInvitationResponseError)\n\nexport const getResendEntityInvitationUrl = (id: string,) => {\n\n\n  \n\n  return `/entities/invitations/${id}/resend`\n}\n\nexport const resendEntityInvitation = async (id: string, options?: RequestInit): Promise<resendEntityInvitationResponse> => {\n  \n  return customFetch<resendEntityInvitationResponse>(getResendEntityInvitationUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Accept an entity invitation by providing user details. Creates a new user account and grants entity access. Returns an access token for immediate use.\n * @summary Accept invitation\n */\nexport type acceptEntityInvitationResponse200 = {\n  data: AcceptInvitationResponse\n  status: 200\n}\n\nexport type acceptEntityInvitationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type acceptEntityInvitationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type acceptEntityInvitationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type acceptEntityInvitationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type acceptEntityInvitationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type acceptEntityInvitationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type acceptEntityInvitationResponseSuccess = (acceptEntityInvitationResponse200) & {\n  headers: Headers;\n};\nexport type acceptEntityInvitationResponseError = (acceptEntityInvitationResponse400 | acceptEntityInvitationResponse401 | acceptEntityInvitationResponse403 | acceptEntityInvitationResponse404 | acceptEntityInvitationResponse422 | acceptEntityInvitationResponse500) & {\n  headers: Headers;\n};\n\nexport type acceptEntityInvitationResponse = (acceptEntityInvitationResponseSuccess | acceptEntityInvitationResponseError)\n\nexport const getAcceptEntityInvitationUrl = (params: AcceptEntityInvitationParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invitations/accept?${stringifiedParams}` : `/invitations/accept`\n}\n\nexport const acceptEntityInvitation = async (acceptEntityInvitationBody: AcceptEntityInvitationBody,\n    params: AcceptEntityInvitationParams, options?: RequestInit): Promise<acceptEntityInvitationResponse> => {\n  \n  return customFetch<acceptEntityInvitationResponse>(getAcceptEntityInvitationUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      acceptEntityInvitationBody,)\n  }\n);}\n  \n\n",
    "/**\n * EntityInvitations API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  acceptEntityInvitation,\n  cancelEntityInvitation,\n  getEntityInvitation,\n  listEntityInvitations,\n  resendEntityInvitation,\n} from \"../generated/entity-invitations/entity-invitations\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const entityInvitations = {\n  /** @see listEntityInvitations */\n  listEntityInvitations: wrapMethod(listEntityInvitations),\n\n  /** @see getEntityInvitation */\n  getEntityInvitation: wrapMethod(getEntityInvitation),\n\n  /** @see cancelEntityInvitation */\n  cancelEntityInvitation: wrapMethod(cancelEntityInvitation),\n\n  /** @see resendEntityInvitation */\n  resendEntityInvitation: wrapMethod(resendEntityInvitation),\n\n  /** @see acceptEntityInvitation */\n  acceptEntityInvitation: wrapMethod(acceptEntityInvitation),\n} as const;\n\nexport type EntityInvitationsApi = typeof entityInvitations;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  StatsQueryBatchRequest,\n  StatsQueryBatchResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Execute one or more aggregation queries on entity data in a single request.\n\nSend an array of 1-25 queries. Each query runs independently and results are returned in the same order.\n\n**Available tables**: invoices, estimates, credit_notes, advance_invoices, payments, customers, items\n\n**Metric types**: count, sum, avg, min, max\n\n**Virtual fields for group_by**:\n- `month` - Extract month from date (YYYY-MM)\n- `year` - Extract year from date (YYYY)\n- `overdue_bucket` - Invoice aging bucket (current, 1-30, 31-60, 61-90, 90+)\n\n**Example — single query (monthly revenue)**:\n```json\n[{\n  \"metrics\": [{ \"type\": \"sum\", \"field\": \"total_with_tax\", \"alias\": \"revenue\" }],\n  \"table\": \"invoices\",\n  \"date_from\": \"2024-01-01\",\n  \"filters\": { \"is_draft\": false, \"voided_at\": null },\n  \"group_by\": [\"month\"]\n}]\n```\n\n**Example — multi query (dashboard counts)**:\n```json\n[\n  { \"metrics\": [{ \"type\": \"count\", \"alias\": \"total\" }], \"table\": \"invoices\" },\n  { \"metrics\": [{ \"type\": \"count\", \"alias\": \"total\" }], \"table\": \"customers\" }\n]\n```\n * @summary Query entity stats (batch)\n */\nexport type queryEntityStatsResponse200 = {\n  data: StatsQueryBatchResponse\n  status: 200\n}\n\nexport type queryEntityStatsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type queryEntityStatsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type queryEntityStatsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type queryEntityStatsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type queryEntityStatsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type queryEntityStatsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type queryEntityStatsResponseSuccess = (queryEntityStatsResponse200) & {\n  headers: Headers;\n};\nexport type queryEntityStatsResponseError = (queryEntityStatsResponse400 | queryEntityStatsResponse401 | queryEntityStatsResponse403 | queryEntityStatsResponse404 | queryEntityStatsResponse422 | queryEntityStatsResponse500) & {\n  headers: Headers;\n};\n\nexport type queryEntityStatsResponse = (queryEntityStatsResponseSuccess | queryEntityStatsResponseError)\n\nexport const getQueryEntityStatsUrl = () => {\n\n\n  \n\n  return `/stats/query`\n}\n\nexport const queryEntityStats = async (statsQueryBatchRequest: StatsQueryBatchRequest, options?: RequestInit): Promise<queryEntityStatsResponse> => {\n  \n  return customFetch<queryEntityStatsResponse>(getQueryEntityStatsUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      statsQueryBatchRequest,)\n  }\n);}\n  \n\n",
    "/**\n * EntityStats API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { queryEntityStats } from \"../generated/entity-stats/entity-stats\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const entityStats = {\n  /** @see queryEntityStats */\n  queryEntityStats: wrapMethod(queryEntityStats),\n} as const;\n\nexport type EntityStatsApi = typeof entityStats;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AddEntityUser201,\n  AddEntityUserBody,\n  EntityUser,\n  EntityUsersList,\n  Error,\n  GenerateUserTokenResponse,\n  RemoveEntityUser200,\n  UpdateEntityUserRoleBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve all users who have access to the current entity, including their roles.\n * @summary List entity users\n */\nexport type getEntityUsersResponse200 = {\n  data: EntityUsersList\n  status: 200\n}\n\nexport type getEntityUsersResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEntityUsersResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEntityUsersResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEntityUsersResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEntityUsersResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEntityUsersResponseSuccess = (getEntityUsersResponse200) & {\n  headers: Headers;\n};\nexport type getEntityUsersResponseError = (getEntityUsersResponse400 | getEntityUsersResponse401 | getEntityUsersResponse403 | getEntityUsersResponse404 | getEntityUsersResponse500) & {\n  headers: Headers;\n};\n\nexport type getEntityUsersResponse = (getEntityUsersResponseSuccess | getEntityUsersResponseError)\n\nexport const getGetEntityUsersUrl = () => {\n\n\n  \n\n  return `/entities/users`\n}\n\nexport const getEntityUsers = async ( options?: RequestInit): Promise<getEntityUsersResponse> => {\n  \n  return customFetch<getEntityUsersResponse>(getGetEntityUsersUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Add an existing user to the entity or send an invitation to a new user. If the user exists, they are immediately granted access. If not, an invitation email is sent.\n * @summary Add user to entity\n */\nexport type addEntityUserResponse201 = {\n  data: AddEntityUser201\n  status: 201\n}\n\nexport type addEntityUserResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type addEntityUserResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type addEntityUserResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type addEntityUserResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type addEntityUserResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type addEntityUserResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type addEntityUserResponseSuccess = (addEntityUserResponse201) & {\n  headers: Headers;\n};\nexport type addEntityUserResponseError = (addEntityUserResponse400 | addEntityUserResponse401 | addEntityUserResponse403 | addEntityUserResponse404 | addEntityUserResponse422 | addEntityUserResponse500) & {\n  headers: Headers;\n};\n\nexport type addEntityUserResponse = (addEntityUserResponseSuccess | addEntityUserResponseError)\n\nexport const getAddEntityUserUrl = () => {\n\n\n  \n\n  return `/entities/users`\n}\n\nexport const addEntityUser = async (addEntityUserBody: AddEntityUserBody, options?: RequestInit): Promise<addEntityUserResponse> => {\n  \n  return customFetch<addEntityUserResponse>(getAddEntityUserUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      addEntityUserBody,)\n  }\n);}\n  \n\n/**\n * Update a user's role on the entity. Roles: viewer (read-only), editor (read+write), admin (full access).\n * @summary Update user role\n */\nexport type updateEntityUserRoleResponse200 = {\n  data: EntityUser\n  status: 200\n}\n\nexport type updateEntityUserRoleResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateEntityUserRoleResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateEntityUserRoleResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateEntityUserRoleResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateEntityUserRoleResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateEntityUserRoleResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateEntityUserRoleResponseSuccess = (updateEntityUserRoleResponse200) & {\n  headers: Headers;\n};\nexport type updateEntityUserRoleResponseError = (updateEntityUserRoleResponse400 | updateEntityUserRoleResponse401 | updateEntityUserRoleResponse403 | updateEntityUserRoleResponse404 | updateEntityUserRoleResponse422 | updateEntityUserRoleResponse500) & {\n  headers: Headers;\n};\n\nexport type updateEntityUserRoleResponse = (updateEntityUserRoleResponseSuccess | updateEntityUserRoleResponseError)\n\nexport const getUpdateEntityUserRoleUrl = (userId: string,) => {\n\n\n  \n\n  return `/entities/users/${userId}`\n}\n\nexport const updateEntityUserRole = async (userId: string,\n    updateEntityUserRoleBody: UpdateEntityUserRoleBody, options?: RequestInit): Promise<updateEntityUserRoleResponse> => {\n  \n  return customFetch<updateEntityUserRoleResponse>(getUpdateEntityUserRoleUrl(userId),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateEntityUserRoleBody,)\n  }\n);}\n  \n\n/**\n * Remove a user's access to the entity. This does not delete the user account.\n * @summary Remove user from entity\n */\nexport type removeEntityUserResponse200 = {\n  data: RemoveEntityUser200\n  status: 200\n}\n\nexport type removeEntityUserResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type removeEntityUserResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type removeEntityUserResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type removeEntityUserResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type removeEntityUserResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type removeEntityUserResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type removeEntityUserResponseSuccess = (removeEntityUserResponse200) & {\n  headers: Headers;\n};\nexport type removeEntityUserResponseError = (removeEntityUserResponse400 | removeEntityUserResponse401 | removeEntityUserResponse403 | removeEntityUserResponse404 | removeEntityUserResponse422 | removeEntityUserResponse500) & {\n  headers: Headers;\n};\n\nexport type removeEntityUserResponse = (removeEntityUserResponseSuccess | removeEntityUserResponseError)\n\nexport const getRemoveEntityUserUrl = (userId: string,) => {\n\n\n  \n\n  return `/entities/users/${userId}`\n}\n\nexport const removeEntityUser = async (userId: string, options?: RequestInit): Promise<removeEntityUserResponse> => {\n  \n  return customFetch<removeEntityUserResponse>(getRemoveEntityUserUrl(userId),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Generate an access token for a WL user to enable SSO-like redirect. This allows account admins to redirect users to the web app without requiring them to login.\n * @summary Generate user access token\n */\nexport type generateEntityUserTokenResponse200 = {\n  data: GenerateUserTokenResponse\n  status: 200\n}\n\nexport type generateEntityUserTokenResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type generateEntityUserTokenResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type generateEntityUserTokenResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type generateEntityUserTokenResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type generateEntityUserTokenResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type generateEntityUserTokenResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type generateEntityUserTokenResponseSuccess = (generateEntityUserTokenResponse200) & {\n  headers: Headers;\n};\nexport type generateEntityUserTokenResponseError = (generateEntityUserTokenResponse400 | generateEntityUserTokenResponse401 | generateEntityUserTokenResponse403 | generateEntityUserTokenResponse404 | generateEntityUserTokenResponse422 | generateEntityUserTokenResponse500) & {\n  headers: Headers;\n};\n\nexport type generateEntityUserTokenResponse = (generateEntityUserTokenResponseSuccess | generateEntityUserTokenResponseError)\n\nexport const getGenerateEntityUserTokenUrl = (userId: string,) => {\n\n\n  \n\n  return `/entities/users/${userId}/token`\n}\n\nexport const generateEntityUserToken = async (userId: string, options?: RequestInit): Promise<generateEntityUserTokenResponse> => {\n  \n  return customFetch<generateEntityUserTokenResponse>(getGenerateEntityUserTokenUrl(userId),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * EntityUsers API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  addEntityUser,\n  generateEntityUserToken,\n  getEntityUsers,\n  removeEntityUser,\n  updateEntityUserRole,\n} from \"../generated/entity-users/entity-users\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const entityUsers = {\n  /** @see getEntityUsers */\n  list: wrapMethod(getEntityUsers),\n\n  /** @see addEntityUser */\n  addEntityUser: wrapMethod(addEntityUser),\n\n  /** @see updateEntityUserRole */\n  update: wrapMethod(updateEntityUserRole),\n\n  /** @see removeEntityUser */\n  removeEntityUser: wrapMethod(removeEntityUser),\n\n  /** @see generateEntityUserToken */\n  generateEntityUserToken: wrapMethod(generateEntityUserToken),\n} as const;\n\nexport type EntityUsersApi = typeof entityUsers;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CompleteEstimatePreview,\n  CreateEstimate,\n  CustomCreateEstimate,\n  DocumentVersion,\n  DocumentVersionList,\n  Error,\n  Estimate,\n  EstimateList,\n  GetEstimateByIdParams,\n  GetEstimatesParams,\n  GetShareableEstimateHtmlParams,\n  GetShareableEstimatePdfParams,\n  PartialEstimatePreview,\n  RenderEstimatePreviewParams,\n  UpdateEstimate,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve estimate data using a shareable token. No authentication required. Returns full estimate data for rendering.\n * @summary View shareable estimate\n */\nexport type getShareableEstimateResponse200 = {\n  data: Estimate\n  status: 200\n}\n\nexport type getShareableEstimateResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableEstimateResponseSuccess = (getShareableEstimateResponse200) & {\n  headers: Headers;\n};\nexport type getShareableEstimateResponseError = (getShareableEstimateResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableEstimateResponse = (getShareableEstimateResponseSuccess | getShareableEstimateResponseError)\n\nexport const getGetShareableEstimateUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/estimates/shareable/${shareableId}`\n}\n\nexport const getShareableEstimate = async (shareableId: string, options?: RequestInit): Promise<getShareableEstimateResponse> => {\n  \n  return customFetch<getShareableEstimateResponse>(getGetShareableEstimateUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get estimate as HTML preview using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Get shareable estimate as HTML\n */\nexport type getShareableEstimateHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableEstimateHtmlResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableEstimateHtmlResponseSuccess = (getShareableEstimateHtmlResponse200) & {\n  headers: Headers;\n};\nexport type getShareableEstimateHtmlResponseError = (getShareableEstimateHtmlResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableEstimateHtmlResponse = (getShareableEstimateHtmlResponseSuccess | getShareableEstimateHtmlResponseError)\n\nexport const getGetShareableEstimateHtmlUrl = (shareableId: string,\n    params?: GetShareableEstimateHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/estimates/shareable/${shareableId}/html?${stringifiedParams}` : `/estimates/shareable/${shareableId}/html`\n}\n\nexport const getShareableEstimateHtml = async (shareableId: string,\n    params?: GetShareableEstimateHtmlParams, options?: RequestInit): Promise<getShareableEstimateHtmlResponse> => {\n  \n  return customFetch<getShareableEstimateHtmlResponse>(getGetShareableEstimateHtmlUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download estimate as PDF using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Download shareable estimate as PDF\n */\nexport type getShareableEstimatePdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type getShareableEstimatePdfResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableEstimatePdfResponseSuccess = (getShareableEstimatePdfResponse200) & {\n  headers: Headers;\n};\nexport type getShareableEstimatePdfResponseError = (getShareableEstimatePdfResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableEstimatePdfResponse = (getShareableEstimatePdfResponseSuccess | getShareableEstimatePdfResponseError)\n\nexport const getGetShareableEstimatePdfUrl = (shareableId: string,\n    params?: GetShareableEstimatePdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/estimates/shareable/${shareableId}/pdf?${stringifiedParams}` : `/estimates/shareable/${shareableId}/pdf`\n}\n\nexport const getShareableEstimatePdf = async (shareableId: string,\n    params?: GetShareableEstimatePdfParams, options?: RequestInit): Promise<getShareableEstimatePdfResponse> => {\n  \n  return customFetch<getShareableEstimatePdfResponse>(getGetShareableEstimatePdfUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new estimate with line items.\nCustomer is optional - can be omitted or added inline without referencing a customer_id.\nThe estimate number is auto-generated based on the entity's number format settings.\nTaxes are calculated automatically based on the tax rates provided.\nEstimates are valid until the date_valid_till field (defaults to 30 days from creation).\n * @summary Create a new estimate\n */\nexport type createEstimateResponse201 = {\n  data: Estimate\n  status: 201\n}\n\nexport type createEstimateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createEstimateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createEstimateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createEstimateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createEstimateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createEstimateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createEstimateResponseSuccess = (createEstimateResponse201) & {\n  headers: Headers;\n};\nexport type createEstimateResponseError = (createEstimateResponse400 | createEstimateResponse401 | createEstimateResponse403 | createEstimateResponse404 | createEstimateResponse422 | createEstimateResponse500) & {\n  headers: Headers;\n};\n\nexport type createEstimateResponse = (createEstimateResponseSuccess | createEstimateResponseError)\n\nexport const getCreateEstimateUrl = () => {\n\n\n  \n\n  return `/estimates`\n}\n\nexport const createEstimate = async (createEstimate: CreateEstimate, options?: RequestInit): Promise<createEstimateResponse> => {\n  \n  return customFetch<createEstimateResponse>(getCreateEstimateUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createEstimate,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of estimates with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all estimates\n */\nexport type getEstimatesResponse200 = {\n  data: EstimateList\n  status: 200\n}\n\nexport type getEstimatesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEstimatesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEstimatesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEstimatesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEstimatesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEstimatesResponseSuccess = (getEstimatesResponse200) & {\n  headers: Headers;\n};\nexport type getEstimatesResponseError = (getEstimatesResponse400 | getEstimatesResponse401 | getEstimatesResponse403 | getEstimatesResponse404 | getEstimatesResponse500) & {\n  headers: Headers;\n};\n\nexport type getEstimatesResponse = (getEstimatesResponseSuccess | getEstimatesResponseError)\n\nexport const getGetEstimatesUrl = (params?: GetEstimatesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/estimates?${stringifiedParams}` : `/estimates`\n}\n\nexport const getEstimates = async (params?: GetEstimatesParams, options?: RequestInit): Promise<getEstimatesResponse> => {\n  \n  return customFetch<getEstimatesResponse>(getGetEstimatesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create an estimate with pre-calculated totals from an external system.\nThe caller provides `total`, `total_with_tax`, `total_discount`, and `taxes` at the document level, and `total`/`total_with_tax` on each line item.\nWhen `calculation_mode` is omitted, Space Invoices preserves pass-through behavior and accepts the supplied totals as-is.\nWhen `calculation_mode` is provided, Space Invoices validates the supplied totals against that calculation mode before creating the document.\nAll other logic (numbering, customer handling, lifecycle hooks) is identical to the standard create endpoint.\n * @summary Create estimate with pre-calculated totals\n */\nexport type createCustomEstimateResponse201 = {\n  data: Estimate\n  status: 201\n}\n\nexport type createCustomEstimateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomEstimateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomEstimateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomEstimateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomEstimateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomEstimateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomEstimateResponseSuccess = (createCustomEstimateResponse201) & {\n  headers: Headers;\n};\nexport type createCustomEstimateResponseError = (createCustomEstimateResponse400 | createCustomEstimateResponse401 | createCustomEstimateResponse403 | createCustomEstimateResponse404 | createCustomEstimateResponse422 | createCustomEstimateResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomEstimateResponse = (createCustomEstimateResponseSuccess | createCustomEstimateResponseError)\n\nexport const getCreateCustomEstimateUrl = () => {\n\n\n  \n\n  return `/estimates/custom`\n}\n\nexport const createCustomEstimate = async (customCreateEstimate: CustomCreateEstimate, options?: RequestInit): Promise<createCustomEstimateResponse> => {\n  \n  return customFetch<createCustomEstimateResponse>(getCreateCustomEstimateUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateEstimate,)\n  }\n);}\n  \n\n/**\n * Retrieve a single estimate by its unique identifier. Returns the complete estimate details including all line items, customer information, and calculated totals.\n * @summary Get estimate by ID\n */\nexport type getEstimateByIdResponse200 = {\n  data: Estimate\n  status: 200\n}\n\nexport type getEstimateByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEstimateByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEstimateByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEstimateByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEstimateByIdResponseSuccess = (getEstimateByIdResponse200) & {\n  headers: Headers;\n};\nexport type getEstimateByIdResponseError = (getEstimateByIdResponse401 | getEstimateByIdResponse403 | getEstimateByIdResponse404 | getEstimateByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getEstimateByIdResponse = (getEstimateByIdResponseSuccess | getEstimateByIdResponseError)\n\nexport const getGetEstimateByIdUrl = (id: string,\n    params?: GetEstimateByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/estimates/${id}?${stringifiedParams}` : `/estimates/${id}`\n}\n\nexport const getEstimateById = async (id: string,\n    params?: GetEstimateByIdParams, options?: RequestInit): Promise<getEstimateByIdResponse> => {\n  \n  return customFetch<getEstimateByIdResponse>(getGetEstimateByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing estimate.\nCreates a version snapshot before applying changes.\nCannot update voided estimates.\nIf items are provided, they replace all existing items.\n * @summary Update an estimate\n */\nexport type updateEstimateResponse200 = {\n  data: Estimate\n  status: 200\n}\n\nexport type updateEstimateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateEstimateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateEstimateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateEstimateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateEstimateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateEstimateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateEstimateResponseSuccess = (updateEstimateResponse200) & {\n  headers: Headers;\n};\nexport type updateEstimateResponseError = (updateEstimateResponse400 | updateEstimateResponse401 | updateEstimateResponse403 | updateEstimateResponse404 | updateEstimateResponse422 | updateEstimateResponse500) & {\n  headers: Headers;\n};\n\nexport type updateEstimateResponse = (updateEstimateResponseSuccess | updateEstimateResponseError)\n\nexport const getUpdateEstimateUrl = (id: string,) => {\n\n\n  \n\n  return `/estimates/${id}`\n}\n\nexport const updateEstimate = async (id: string,\n    updateEstimate: UpdateEstimate, options?: RequestInit): Promise<updateEstimateResponse> => {\n  \n  return customFetch<updateEstimateResponse>(getUpdateEstimateUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateEstimate,)\n  }\n);}\n  \n\n/**\n * Retrieve the version history for an estimate. Each version represents the document state before an update was applied.\n * @summary Get estimate version history\n */\nexport type getEstimateVersionsResponse200 = {\n  data: DocumentVersionList\n  status: 200\n}\n\nexport type getEstimateVersionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEstimateVersionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEstimateVersionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEstimateVersionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEstimateVersionsResponseSuccess = (getEstimateVersionsResponse200) & {\n  headers: Headers;\n};\nexport type getEstimateVersionsResponseError = (getEstimateVersionsResponse401 | getEstimateVersionsResponse403 | getEstimateVersionsResponse404 | getEstimateVersionsResponse500) & {\n  headers: Headers;\n};\n\nexport type getEstimateVersionsResponse = (getEstimateVersionsResponseSuccess | getEstimateVersionsResponseError)\n\nexport const getGetEstimateVersionsUrl = (id: string,) => {\n\n\n  \n\n  return `/estimates/${id}/versions`\n}\n\nexport const getEstimateVersions = async (id: string, options?: RequestInit): Promise<getEstimateVersionsResponse> => {\n  \n  return customFetch<getEstimateVersionsResponse>(getGetEstimateVersionsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a specific version snapshot of an estimate.\n * @summary Get specific estimate version\n */\nexport type getEstimateVersionResponse200 = {\n  data: DocumentVersion\n  status: 200\n}\n\nexport type getEstimateVersionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEstimateVersionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEstimateVersionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEstimateVersionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEstimateVersionResponseSuccess = (getEstimateVersionResponse200) & {\n  headers: Headers;\n};\nexport type getEstimateVersionResponseError = (getEstimateVersionResponse401 | getEstimateVersionResponse403 | getEstimateVersionResponse404 | getEstimateVersionResponse500) & {\n  headers: Headers;\n};\n\nexport type getEstimateVersionResponse = (getEstimateVersionResponseSuccess | getEstimateVersionResponseError)\n\nexport const getGetEstimateVersionUrl = (id: string,\n    version: number,) => {\n\n\n  \n\n  return `/estimates/${id}/versions/${version}`\n}\n\nexport const getEstimateVersion = async (id: string,\n    version: number, options?: RequestInit): Promise<getEstimateVersionResponse> => {\n  \n  return customFetch<getEstimateVersionResponse>(getGetEstimateVersionUrl(id,version),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render an HTML preview of an estimate without saving to the database. Perfect for displaying live previews in estimate creation/edit forms. Supports both partial mode (allows incomplete data for drafts) and complete mode (validates all required fields).\n * @summary Render estimate preview\n */\nexport type renderEstimatePreviewResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderEstimatePreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type renderEstimatePreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderEstimatePreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderEstimatePreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderEstimatePreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type renderEstimatePreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderEstimatePreviewResponseSuccess = (renderEstimatePreviewResponse200) & {\n  headers: Headers;\n};\nexport type renderEstimatePreviewResponseError = (renderEstimatePreviewResponse400 | renderEstimatePreviewResponse401 | renderEstimatePreviewResponse403 | renderEstimatePreviewResponse404 | renderEstimatePreviewResponse422 | renderEstimatePreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type renderEstimatePreviewResponse = (renderEstimatePreviewResponseSuccess | renderEstimatePreviewResponseError)\n\nexport const getRenderEstimatePreviewUrl = (params?: RenderEstimatePreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/estimates/render?${stringifiedParams}` : `/estimates/render`\n}\n\nexport const renderEstimatePreview = async (partialEstimatePreviewCompleteEstimatePreview: PartialEstimatePreview | CompleteEstimatePreview,\n    params?: RenderEstimatePreviewParams, options?: RequestInit): Promise<renderEstimatePreviewResponse> => {\n  \n  return customFetch<renderEstimatePreviewResponse>(getRenderEstimatePreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      partialEstimatePreviewCompleteEstimatePreview,)\n  }\n);}\n  \n\n",
    "/**\n * Estimates API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCustomEstimate,\n  createEstimate,\n  getEstimateById,\n  getEstimates,\n  getEstimateVersion,\n  getEstimateVersions,\n  getShareableEstimate,\n  getShareableEstimateHtml,\n  getShareableEstimatePdf,\n  renderEstimatePreview,\n  updateEstimate,\n} from \"../generated/estimates/estimates\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const estimates = {\n  /** @see getShareableEstimate */\n  getShareableEstimate: wrapMethod(getShareableEstimate),\n\n  /** @see getShareableEstimateHtml */\n  getShareableEstimateHtml: wrapMethod(getShareableEstimateHtml),\n\n  /** @see getShareableEstimatePdf */\n  getShareableEstimatePdf: wrapMethod(getShareableEstimatePdf),\n\n  /** @see createEstimate */\n  create: wrapMethod(createEstimate),\n\n  /** @see getEstimates */\n  list: wrapListMethod(getEstimates),\n\n  /** @see createCustomEstimate */\n  createCustom: wrapMethod(createCustomEstimate),\n\n  /** @see getEstimateById */\n  get: wrapMethod(getEstimateById),\n\n  /** @see updateEstimate */\n  update: wrapMethod(updateEstimate),\n\n  /** @see getEstimateVersions */\n  getVersions: wrapMethod(getEstimateVersions),\n\n  /** @see getEstimateVersion */\n  getVersion: wrapMethod(getEstimateVersion),\n\n  /** @see renderEstimatePreview */\n  renderEstimatePreview: wrapMethod(renderEstimatePreview),\n} as const;\n\nexport type EstimatesApi = typeof estimates;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  EslogExportByDateRange,\n  EslogExportByDocumentIds,\n  ExportDocumentsParams,\n  ExportSalesPerItemParams,\n  GetEslogExportStatus200,\n  GetPdfExportStatus200,\n  PdfExportByDateRange,\n  PdfExportByDocumentIds,\n  StartEslogExport202,\n  StartPdfExport202\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Export filtered documents to Excel (XLSX) or CSV format.\nSupports date range filtering (maximum 1 year) and the same query filters as list endpoints.\nReturns a downloadable file with all base document fields including flattened customer/issuer data and tax breakdowns.\n * @summary Export documents to Excel or CSV\n */\nexport type exportDocumentsResponse200ApplicationVndOpenxmlformatsOfficedocumentSpreadsheetmlSheet = {\n  data: Blob\n  status: 200\n}\n\nexport type exportDocumentsResponse200TextCsv = {\n  data: Blob\n  status: 200\n}\n\nexport type exportDocumentsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type exportDocumentsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type exportDocumentsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type exportDocumentsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type exportDocumentsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type exportDocumentsResponseSuccess = (exportDocumentsResponse200ApplicationVndOpenxmlformatsOfficedocumentSpreadsheetmlSheet | exportDocumentsResponse200TextCsv) & {\n  headers: Headers;\n};\nexport type exportDocumentsResponseError = (exportDocumentsResponse400 | exportDocumentsResponse401 | exportDocumentsResponse403 | exportDocumentsResponse404 | exportDocumentsResponse500) & {\n  headers: Headers;\n};\n\nexport type exportDocumentsResponse = (exportDocumentsResponseSuccess | exportDocumentsResponseError)\n\nexport const getExportDocumentsUrl = (params: ExportDocumentsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/export?${stringifiedParams}` : `/documents/export`\n}\n\nexport const exportDocuments = async (params: ExportDocumentsParams, options?: RequestInit): Promise<exportDocumentsResponse> => {\n  \n  return customFetch<exportDocumentsResponse>(getExportDocumentsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Export aggregated sales data per item (product/service) for a given date range.\nIncludes quantities sold/returned, average price, and totals.\nAggregates across invoices, credit notes, and advance invoices.\nItems are grouped by catalog item ID when available, or by exact name match.\n * @summary Export sales per item for a period\n */\nexport type exportSalesPerItemResponse200ApplicationVndOpenxmlformatsOfficedocumentSpreadsheetmlSheet = {\n  data: Blob\n  status: 200\n}\n\nexport type exportSalesPerItemResponse200TextCsv = {\n  data: Blob\n  status: 200\n}\n\nexport type exportSalesPerItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type exportSalesPerItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type exportSalesPerItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type exportSalesPerItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type exportSalesPerItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type exportSalesPerItemResponseSuccess = (exportSalesPerItemResponse200ApplicationVndOpenxmlformatsOfficedocumentSpreadsheetmlSheet | exportSalesPerItemResponse200TextCsv) & {\n  headers: Headers;\n};\nexport type exportSalesPerItemResponseError = (exportSalesPerItemResponse400 | exportSalesPerItemResponse401 | exportSalesPerItemResponse403 | exportSalesPerItemResponse404 | exportSalesPerItemResponse500) & {\n  headers: Headers;\n};\n\nexport type exportSalesPerItemResponse = (exportSalesPerItemResponseSuccess | exportSalesPerItemResponseError)\n\nexport const getExportSalesPerItemUrl = (params: ExportSalesPerItemParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/export/sales-per-item?${stringifiedParams}` : `/documents/export/sales-per-item`\n}\n\nexport const exportSalesPerItem = async (params: ExportSalesPerItemParams, options?: RequestInit): Promise<exportSalesPerItemResponse> => {\n  \n  return customFetch<exportSalesPerItemResponse>(getExportSalesPerItemUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Start a background job to export documents as a ZIP archive of PDFs.\nSupports date range filtering (maximum 1 year) or specific document IDs.\nWhen using a user access token, you will receive an email with a download link when the export is ready.\nWhen using an API key, poll the job status endpoint for progress.\n * @summary Start bulk PDF export\n */\nexport type startPdfExportResponse202 = {\n  data: StartPdfExport202\n  status: 202\n}\n\nexport type startPdfExportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type startPdfExportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type startPdfExportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type startPdfExportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type startPdfExportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type startPdfExportResponseSuccess = (startPdfExportResponse202) & {\n  headers: Headers;\n};\nexport type startPdfExportResponseError = (startPdfExportResponse400 | startPdfExportResponse401 | startPdfExportResponse403 | startPdfExportResponse404 | startPdfExportResponse500) & {\n  headers: Headers;\n};\n\nexport type startPdfExportResponse = (startPdfExportResponseSuccess | startPdfExportResponseError)\n\nexport const getStartPdfExportUrl = () => {\n\n\n  \n\n  return `/documents/export/pdf`\n}\n\nexport const startPdfExport = async (pdfExportByDocumentIdsPdfExportByDateRange: PdfExportByDocumentIds | PdfExportByDateRange, options?: RequestInit): Promise<startPdfExportResponse> => {\n  \n  return customFetch<startPdfExportResponse>(getStartPdfExportUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      pdfExportByDocumentIdsPdfExportByDateRange,)\n  }\n);}\n  \n\n/**\n * Check the status and progress of a bulk PDF export job.\n * @summary Get PDF export job status\n */\nexport type getPdfExportStatusResponse200 = {\n  data: GetPdfExportStatus200\n  status: 200\n}\n\nexport type getPdfExportStatusResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getPdfExportStatusResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getPdfExportStatusResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getPdfExportStatusResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getPdfExportStatusResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getPdfExportStatusResponseSuccess = (getPdfExportStatusResponse200) & {\n  headers: Headers;\n};\nexport type getPdfExportStatusResponseError = (getPdfExportStatusResponse400 | getPdfExportStatusResponse401 | getPdfExportStatusResponse403 | getPdfExportStatusResponse404 | getPdfExportStatusResponse500) & {\n  headers: Headers;\n};\n\nexport type getPdfExportStatusResponse = (getPdfExportStatusResponseSuccess | getPdfExportStatusResponseError)\n\nexport const getGetPdfExportStatusUrl = (jobId: string,) => {\n\n\n  \n\n  return `/documents/export/pdf/${jobId}`\n}\n\nexport const getPdfExportStatus = async (jobId: string, options?: RequestInit): Promise<getPdfExportStatusResponse> => {\n  \n  return customFetch<getPdfExportStatusResponse>(getGetPdfExportStatusUrl(jobId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download a completed PDF export ZIP archive through the authenticated API.\n * @summary Download completed PDF export archive\n */\nexport type downloadPdfExportResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type downloadPdfExportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type downloadPdfExportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type downloadPdfExportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type downloadPdfExportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type downloadPdfExportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type downloadPdfExportResponseSuccess = (downloadPdfExportResponse200) & {\n  headers: Headers;\n};\nexport type downloadPdfExportResponseError = (downloadPdfExportResponse400 | downloadPdfExportResponse401 | downloadPdfExportResponse403 | downloadPdfExportResponse404 | downloadPdfExportResponse500) & {\n  headers: Headers;\n};\n\nexport type downloadPdfExportResponse = (downloadPdfExportResponseSuccess | downloadPdfExportResponseError)\n\nexport const getDownloadPdfExportUrl = (jobId: string,) => {\n\n\n  \n\n  return `/documents/export/pdf/${jobId}/download`\n}\n\nexport const downloadPdfExport = async (jobId: string, options?: RequestInit): Promise<downloadPdfExportResponse> => {\n  \n  return customFetch<downloadPdfExportResponse>(getDownloadPdfExportUrl(jobId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Start a background job to export valid e-SLOG XML documents as a ZIP archive.\nSupports date range filtering (maximum 1 year) or specific document IDs.\nOnly available for Slovenian entities with e-SLOG support.\nDocuments without valid e-SLOG validation are skipped.\n * @summary Start bulk e-SLOG export\n */\nexport type startEslogExportResponse202 = {\n  data: StartEslogExport202\n  status: 202\n}\n\nexport type startEslogExportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type startEslogExportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type startEslogExportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type startEslogExportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type startEslogExportResponse422 = {\n  data: Error\n  status: 422\n}\n\nexport type startEslogExportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type startEslogExportResponseSuccess = (startEslogExportResponse202) & {\n  headers: Headers;\n};\nexport type startEslogExportResponseError = (startEslogExportResponse400 | startEslogExportResponse401 | startEslogExportResponse403 | startEslogExportResponse404 | startEslogExportResponse422 | startEslogExportResponse500) & {\n  headers: Headers;\n};\n\nexport type startEslogExportResponse = (startEslogExportResponseSuccess | startEslogExportResponseError)\n\nexport const getStartEslogExportUrl = () => {\n\n\n  \n\n  return `/documents/export/eslog`\n}\n\nexport const startEslogExport = async (eslogExportByDocumentIdsEslogExportByDateRange: EslogExportByDocumentIds | EslogExportByDateRange, options?: RequestInit): Promise<startEslogExportResponse> => {\n  \n  return customFetch<startEslogExportResponse>(getStartEslogExportUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      eslogExportByDocumentIdsEslogExportByDateRange,)\n  }\n);}\n  \n\n/**\n * Check the status and progress of a bulk e-SLOG export job.\n * @summary Get e-SLOG export job status\n */\nexport type getEslogExportStatusResponse200 = {\n  data: GetEslogExportStatus200\n  status: 200\n}\n\nexport type getEslogExportStatusResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getEslogExportStatusResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getEslogExportStatusResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getEslogExportStatusResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getEslogExportStatusResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getEslogExportStatusResponseSuccess = (getEslogExportStatusResponse200) & {\n  headers: Headers;\n};\nexport type getEslogExportStatusResponseError = (getEslogExportStatusResponse400 | getEslogExportStatusResponse401 | getEslogExportStatusResponse403 | getEslogExportStatusResponse404 | getEslogExportStatusResponse500) & {\n  headers: Headers;\n};\n\nexport type getEslogExportStatusResponse = (getEslogExportStatusResponseSuccess | getEslogExportStatusResponseError)\n\nexport const getGetEslogExportStatusUrl = (jobId: string,) => {\n\n\n  \n\n  return `/documents/export/eslog/${jobId}`\n}\n\nexport const getEslogExportStatus = async (jobId: string, options?: RequestInit): Promise<getEslogExportStatusResponse> => {\n  \n  return customFetch<getEslogExportStatusResponse>(getGetEslogExportStatusUrl(jobId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download a completed e-SLOG export ZIP archive through the authenticated API.\n * @summary Download completed e-SLOG export archive\n */\nexport type downloadEslogExportResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type downloadEslogExportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type downloadEslogExportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type downloadEslogExportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type downloadEslogExportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type downloadEslogExportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type downloadEslogExportResponseSuccess = (downloadEslogExportResponse200) & {\n  headers: Headers;\n};\nexport type downloadEslogExportResponseError = (downloadEslogExportResponse400 | downloadEslogExportResponse401 | downloadEslogExportResponse403 | downloadEslogExportResponse404 | downloadEslogExportResponse500) & {\n  headers: Headers;\n};\n\nexport type downloadEslogExportResponse = (downloadEslogExportResponseSuccess | downloadEslogExportResponseError)\n\nexport const getDownloadEslogExportUrl = (jobId: string,) => {\n\n\n  \n\n  return `/documents/export/eslog/${jobId}/download`\n}\n\nexport const downloadEslogExport = async (jobId: string, options?: RequestInit): Promise<downloadEslogExportResponse> => {\n  \n  return customFetch<downloadEslogExportResponse>(getDownloadEslogExportUrl(jobId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Exports API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  downloadEslogExport,\n  downloadPdfExport,\n  exportDocuments,\n  exportSalesPerItem,\n  getPdfExportStatus,\n  startEslogExport,\n  startPdfExport,\n} from \"../generated/exports/exports\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nconst exportsApi = {\n  /** @see exportDocuments */\n  exportDocuments: wrapMethod(exportDocuments),\n\n  /** @see exportSalesPerItem */\n  exportSalesPerItem: wrapMethod(exportSalesPerItem),\n\n  /** @see startPdfExport */\n  startPdfExport: wrapMethod(startPdfExport),\n\n  /** @see getPdfExportStatus */\n  list: wrapListMethod(getPdfExportStatus),\n\n  /** @see downloadPdfExport */\n  downloadPdfExport: wrapMethod(downloadPdfExport),\n\n  /** @see startEslogExport */\n  startEslogExport: wrapMethod(startEslogExport),\n\n  /** @see downloadEslogExport */\n  downloadEslogExport: wrapMethod(downloadEslogExport),\n} as const;\n\nexport type ExportsApi = typeof exportsApi;\n\nexport { exportsApi as exports };\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  FileMetadata,\n  GetFiles200,\n  GetFilesParams,\n  UploadFileBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Upload a file (logo, signature, or attachment) to cloud storage.\nFiles are automatically optimized and stored in entity-specific folders.\nLogos and signatures are entity-level (one per entity), while attachments can be associated with specific documents.\n * @summary Upload a file\n */\nexport type uploadFileResponse201 = {\n  data: FileMetadata\n  status: 201\n}\n\nexport type uploadFileResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type uploadFileResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type uploadFileResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type uploadFileResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type uploadFileResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type uploadFileResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type uploadFileResponseSuccess = (uploadFileResponse201) & {\n  headers: Headers;\n};\nexport type uploadFileResponseError = (uploadFileResponse400 | uploadFileResponse401 | uploadFileResponse403 | uploadFileResponse404 | uploadFileResponse422 | uploadFileResponse500) & {\n  headers: Headers;\n};\n\nexport type uploadFileResponse = (uploadFileResponseSuccess | uploadFileResponseError)\n\nexport const getUploadFileUrl = () => {\n\n\n  \n\n  return `/files`\n}\n\nexport const uploadFile = async (uploadFileBody: UploadFileBody, options?: RequestInit): Promise<uploadFileResponse> => {\n    const formData = new FormData();\nif(uploadFileBody.file !== undefined) {\n formData.append(`file`, uploadFileBody.file);\n }\nformData.append(`category`, uploadFileBody.category);\nif(uploadFileBody.account_payable_id !== undefined) {\n formData.append(`account_payable_id`, uploadFileBody.account_payable_id);\n }\nif(uploadFileBody.incoming_purchase_document_id !== undefined) {\n formData.append(`incoming_purchase_document_id`, uploadFileBody.incoming_purchase_document_id);\n }\n\n  return customFetch<uploadFileResponse>(getUploadFileUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    ,\n    body: \n      formData,\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of files for an entity.\nSupports filtering by category and optional document association.\n * @summary List all files\n */\nexport type getFilesResponse200 = {\n  data: GetFiles200\n  status: 200\n}\n\nexport type getFilesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFilesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFilesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFilesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFilesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFilesResponseSuccess = (getFilesResponse200) & {\n  headers: Headers;\n};\nexport type getFilesResponseError = (getFilesResponse400 | getFilesResponse401 | getFilesResponse403 | getFilesResponse404 | getFilesResponse500) & {\n  headers: Headers;\n};\n\nexport type getFilesResponse = (getFilesResponseSuccess | getFilesResponseError)\n\nexport const getGetFilesUrl = (params?: GetFilesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/files?${stringifiedParams}` : `/files`\n}\n\nexport const getFiles = async (params?: GetFilesParams, options?: RequestInit): Promise<getFilesResponse> => {\n  \n  return customFetch<getFilesResponse>(getGetFilesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve file metadata by its unique identifier.\n * @summary Get file metadata by ID\n */\nexport type getFileByIdResponse200 = {\n  data: FileMetadata\n  status: 200\n}\n\nexport type getFileByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFileByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFileByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFileByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFileByIdResponseSuccess = (getFileByIdResponse200) & {\n  headers: Headers;\n};\nexport type getFileByIdResponseError = (getFileByIdResponse401 | getFileByIdResponse403 | getFileByIdResponse404 | getFileByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getFileByIdResponse = (getFileByIdResponseSuccess | getFileByIdResponseError)\n\nexport const getGetFileByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/files/${id}`\n}\n\nexport const getFileById = async (id: string, options?: RequestInit): Promise<getFileByIdResponse> => {\n  \n  return customFetch<getFileByIdResponse>(getGetFileByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Delete a file and its metadata.\nThe file is removed from cloud storage and the database.\n * @summary Delete a file\n */\nexport type deleteFileResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteFileResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteFileResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteFileResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteFileResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteFileResponseSuccess = (deleteFileResponse204) & {\n  headers: Headers;\n};\nexport type deleteFileResponseError = (deleteFileResponse401 | deleteFileResponse403 | deleteFileResponse404 | deleteFileResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteFileResponse = (deleteFileResponseSuccess | deleteFileResponseError)\n\nexport const getDeleteFileUrl = (id: string,) => {\n\n\n  \n\n  return `/files/${id}`\n}\n\nexport const deleteFile = async (id: string, options?: RequestInit): Promise<deleteFileResponse> => {\n  \n  return customFetch<deleteFileResponse>(getDeleteFileUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Files API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { deleteFile, getFileById, getFiles, uploadFile } from \"../generated/files/files\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const files = {\n  /** @see uploadFile */\n  uploadFile: wrapMethod(uploadFile),\n\n  /** @see getFiles */\n  list: wrapListMethod(getFiles),\n\n  /** @see getFileById */\n  get: wrapMethod(getFileById),\n\n  /** @see deleteFile */\n  delete: wrapMethod(deleteFile),\n} as const;\n\nexport type FilesApi = typeof files;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GetFinaCertificate200,\n  UploadFinaCertificate200,\n  UploadFinaCertificateBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Upload a P12/PFX certificate for CIS fiscalization. The certificate will be processed to extract expiry date and stored securely.\n * @summary Upload FINA certificate\n */\nexport type uploadFinaCertificateResponse200 = {\n  data: UploadFinaCertificate200\n  status: 200\n}\n\nexport type uploadFinaCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type uploadFinaCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type uploadFinaCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type uploadFinaCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type uploadFinaCertificateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type uploadFinaCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type uploadFinaCertificateResponseSuccess = (uploadFinaCertificateResponse200) & {\n  headers: Headers;\n};\nexport type uploadFinaCertificateResponseError = (uploadFinaCertificateResponse400 | uploadFinaCertificateResponse401 | uploadFinaCertificateResponse403 | uploadFinaCertificateResponse404 | uploadFinaCertificateResponse422 | uploadFinaCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type uploadFinaCertificateResponse = (uploadFinaCertificateResponseSuccess | uploadFinaCertificateResponseError)\n\nexport const getUploadFinaCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/settings/certificate`\n}\n\nexport const uploadFinaCertificate = async (uploadFinaCertificateBody: UploadFinaCertificateBody, options?: RequestInit): Promise<uploadFinaCertificateResponse> => {\n    const formData = new FormData();\nif(uploadFinaCertificateBody.file !== undefined) {\n formData.append(`file`, uploadFinaCertificateBody.file);\n }\nif(uploadFinaCertificateBody.passphrase !== undefined) {\n formData.append(`passphrase`, uploadFinaCertificateBody.passphrase);\n }\n\n  return customFetch<uploadFinaCertificateResponse>(getUploadFinaCertificateUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    ,\n    body: \n      formData,\n  }\n);}\n  \n\n/**\n * Retrieve certificate metadata including expiry date and upload time. Does not return the certificate or private key.\n * @summary Get certificate metadata\n */\nexport type getFinaCertificateResponse200 = {\n  data: GetFinaCertificate200\n  status: 200\n}\n\nexport type getFinaCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFinaCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFinaCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFinaCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFinaCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFinaCertificateResponseSuccess = (getFinaCertificateResponse200) & {\n  headers: Headers;\n};\nexport type getFinaCertificateResponseError = (getFinaCertificateResponse400 | getFinaCertificateResponse401 | getFinaCertificateResponse403 | getFinaCertificateResponse404 | getFinaCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type getFinaCertificateResponse = (getFinaCertificateResponseSuccess | getFinaCertificateResponseError)\n\nexport const getGetFinaCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/settings/certificate`\n}\n\nexport const getFinaCertificate = async ( options?: RequestInit): Promise<getFinaCertificateResponse> => {\n  \n  return customFetch<getFinaCertificateResponse>(getGetFinaCertificateUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Delete the FINA certificate for the entity. This will remove both the uploaded file reference and the extracted certificate from the database.\n * @summary Delete FINA certificate\n */\nexport type deleteFinaCertificateResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteFinaCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteFinaCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteFinaCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteFinaCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteFinaCertificateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteFinaCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteFinaCertificateResponseSuccess = (deleteFinaCertificateResponse204) & {\n  headers: Headers;\n};\nexport type deleteFinaCertificateResponseError = (deleteFinaCertificateResponse400 | deleteFinaCertificateResponse401 | deleteFinaCertificateResponse403 | deleteFinaCertificateResponse404 | deleteFinaCertificateResponse422 | deleteFinaCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteFinaCertificateResponse = (deleteFinaCertificateResponseSuccess | deleteFinaCertificateResponseError)\n\nexport const getDeleteFinaCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/settings/certificate`\n}\n\nexport const deleteFinaCertificate = async ( options?: RequestInit): Promise<deleteFinaCertificateResponse> => {\n  \n  return customFetch<deleteFinaCertificateResponse>(getDeleteFinaCertificateUrl(),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FinaCertificate API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  deleteFinaCertificate,\n  getFinaCertificate,\n  uploadFinaCertificate,\n} from \"../generated/fina-certificate/fina-certificate\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const finaCertificate = {\n  /** @see uploadFinaCertificate */\n  uploadFinaCertificate: wrapMethod(uploadFinaCertificate),\n\n  /** @see getFinaCertificate */\n  getFinaCertificate: wrapMethod(getFinaCertificate),\n\n  /** @see deleteFinaCertificate */\n  delete: wrapMethod(deleteFinaCertificate),\n} as const;\n\nexport type FinaCertificateApi = typeof finaCertificate;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  FinaElectronicDevice,\n  FinaElectronicDeviceSuccessResponse,\n  RegisterFinaDeviceBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * List all electronic devices for a business premise\n * @summary List electronic devices\n */\nexport type listFinaDevicesResponse200 = {\n  data: FinaElectronicDevice[]\n  status: 200\n}\n\nexport type listFinaDevicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listFinaDevicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listFinaDevicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listFinaDevicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listFinaDevicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listFinaDevicesResponseSuccess = (listFinaDevicesResponse200) & {\n  headers: Headers;\n};\nexport type listFinaDevicesResponseError = (listFinaDevicesResponse400 | listFinaDevicesResponse401 | listFinaDevicesResponse403 | listFinaDevicesResponse404 | listFinaDevicesResponse500) & {\n  headers: Headers;\n};\n\nexport type listFinaDevicesResponse = (listFinaDevicesResponseSuccess | listFinaDevicesResponseError)\n\nexport const getListFinaDevicesUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/premises/${id}/devices`\n}\n\nexport const listFinaDevices = async (id: string, options?: RequestInit): Promise<listFinaDevicesResponse> => {\n  \n  return customFetch<listFinaDevicesResponse>(getListFinaDevicesUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Register an electronic device (cash register, POS) for a business premise. Device ID must be digits only.\n * @summary Register electronic device\n */\nexport type registerFinaDeviceResponse201 = {\n  data: FinaElectronicDeviceSuccessResponse\n  status: 201\n}\n\nexport type registerFinaDeviceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type registerFinaDeviceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type registerFinaDeviceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type registerFinaDeviceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type registerFinaDeviceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type registerFinaDeviceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type registerFinaDeviceResponseSuccess = (registerFinaDeviceResponse201) & {\n  headers: Headers;\n};\nexport type registerFinaDeviceResponseError = (registerFinaDeviceResponse400 | registerFinaDeviceResponse401 | registerFinaDeviceResponse403 | registerFinaDeviceResponse404 | registerFinaDeviceResponse422 | registerFinaDeviceResponse500) & {\n  headers: Headers;\n};\n\nexport type registerFinaDeviceResponse = (registerFinaDeviceResponseSuccess | registerFinaDeviceResponseError)\n\nexport const getRegisterFinaDeviceUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/premises/${id}/devices`\n}\n\nexport const registerFinaDevice = async (id: string,\n    registerFinaDeviceBody: RegisterFinaDeviceBody, options?: RequestInit): Promise<registerFinaDeviceResponse> => {\n  \n  return customFetch<registerFinaDeviceResponse>(getRegisterFinaDeviceUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      registerFinaDeviceBody,)\n  }\n);}\n  \n\n/**\n * Get a single electronic device by ID\n * @summary Get electronic device\n */\nexport type getFinaDeviceResponse200 = {\n  data: FinaElectronicDevice\n  status: 200\n}\n\nexport type getFinaDeviceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFinaDeviceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFinaDeviceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFinaDeviceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFinaDeviceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFinaDeviceResponseSuccess = (getFinaDeviceResponse200) & {\n  headers: Headers;\n};\nexport type getFinaDeviceResponseError = (getFinaDeviceResponse400 | getFinaDeviceResponse401 | getFinaDeviceResponse403 | getFinaDeviceResponse404 | getFinaDeviceResponse500) & {\n  headers: Headers;\n};\n\nexport type getFinaDeviceResponse = (getFinaDeviceResponseSuccess | getFinaDeviceResponseError)\n\nexport const getGetFinaDeviceUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/devices/${id}`\n}\n\nexport const getFinaDevice = async (id: string, options?: RequestInit): Promise<getFinaDeviceResponse> => {\n  \n  return customFetch<getFinaDeviceResponse>(getGetFinaDeviceUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Deactivate an electronic device.\n * @summary Delete electronic device\n */\nexport type deleteFinaDeviceResponse200 = {\n  data: FinaElectronicDeviceSuccessResponse\n  status: 200\n}\n\nexport type deleteFinaDeviceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteFinaDeviceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteFinaDeviceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteFinaDeviceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteFinaDeviceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteFinaDeviceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteFinaDeviceResponseSuccess = (deleteFinaDeviceResponse200) & {\n  headers: Headers;\n};\nexport type deleteFinaDeviceResponseError = (deleteFinaDeviceResponse400 | deleteFinaDeviceResponse401 | deleteFinaDeviceResponse403 | deleteFinaDeviceResponse404 | deleteFinaDeviceResponse422 | deleteFinaDeviceResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteFinaDeviceResponse = (deleteFinaDeviceResponseSuccess | deleteFinaDeviceResponseError)\n\nexport const getDeleteFinaDeviceUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/devices/${id}`\n}\n\nexport const deleteFinaDevice = async (id: string, options?: RequestInit): Promise<deleteFinaDeviceResponse> => {\n  \n  return customFetch<deleteFinaDeviceResponse>(getDeleteFinaDeviceUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FinaDevices API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  deleteFinaDevice,\n  getFinaDevice,\n  listFinaDevices,\n  registerFinaDevice,\n} from \"../generated/fina-devices/fina-devices\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const finaDevices = {\n  /** @see listFinaDevices */\n  listFinaDevices: wrapMethod(listFinaDevices),\n\n  /** @see registerFinaDevice */\n  registerFinaDevice: wrapMethod(registerFinaDevice),\n\n  /** @see getFinaDevice */\n  getFinaDevice: wrapMethod(getFinaDevice),\n\n  /** @see deleteFinaDevice */\n  delete: wrapMethod(deleteFinaDevice),\n} as const;\n\nexport type FinaDevicesApi = typeof finaDevices;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateFinaPremiseBody,\n  Error,\n  FinaBusinessPremise,\n  FinaPremiseSuccessResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * List all business premises for the entity\n * @summary List business premises\n */\nexport type listFinaPremisesResponse200 = {\n  data: FinaBusinessPremise[]\n  status: 200\n}\n\nexport type listFinaPremisesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listFinaPremisesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listFinaPremisesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listFinaPremisesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listFinaPremisesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listFinaPremisesResponseSuccess = (listFinaPremisesResponse200) & {\n  headers: Headers;\n};\nexport type listFinaPremisesResponseError = (listFinaPremisesResponse400 | listFinaPremisesResponse401 | listFinaPremisesResponse403 | listFinaPremisesResponse404 | listFinaPremisesResponse500) & {\n  headers: Headers;\n};\n\nexport type listFinaPremisesResponse = (listFinaPremisesResponseSuccess | listFinaPremisesResponseError)\n\nexport const getListFinaPremisesUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/premises`\n}\n\nexport const listFinaPremises = async ( options?: RequestInit): Promise<listFinaPremisesResponse> => {\n  \n  return customFetch<listFinaPremisesResponse>(getListFinaPremisesUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Add a business premise for FINA fiscalization. The premise must be registered on ePorezna first. Only the premise ID label is stored.\n * @summary Create business premise\n */\nexport type createFinaPremiseResponse201 = {\n  data: FinaPremiseSuccessResponse\n  status: 201\n}\n\nexport type createFinaPremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createFinaPremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createFinaPremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createFinaPremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createFinaPremiseResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createFinaPremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createFinaPremiseResponseSuccess = (createFinaPremiseResponse201) & {\n  headers: Headers;\n};\nexport type createFinaPremiseResponseError = (createFinaPremiseResponse400 | createFinaPremiseResponse401 | createFinaPremiseResponse403 | createFinaPremiseResponse404 | createFinaPremiseResponse422 | createFinaPremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type createFinaPremiseResponse = (createFinaPremiseResponseSuccess | createFinaPremiseResponseError)\n\nexport const getCreateFinaPremiseUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/premises`\n}\n\nexport const createFinaPremise = async (createFinaPremiseBody: CreateFinaPremiseBody, options?: RequestInit): Promise<createFinaPremiseResponse> => {\n  \n  return customFetch<createFinaPremiseResponse>(getCreateFinaPremiseUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createFinaPremiseBody,)\n  }\n);}\n  \n\n/**\n * Get a single business premise by ID\n * @summary Get business premise\n */\nexport type getFinaPremiseResponse200 = {\n  data: FinaBusinessPremise\n  status: 200\n}\n\nexport type getFinaPremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFinaPremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFinaPremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFinaPremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFinaPremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFinaPremiseResponseSuccess = (getFinaPremiseResponse200) & {\n  headers: Headers;\n};\nexport type getFinaPremiseResponseError = (getFinaPremiseResponse400 | getFinaPremiseResponse401 | getFinaPremiseResponse403 | getFinaPremiseResponse404 | getFinaPremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type getFinaPremiseResponse = (getFinaPremiseResponseSuccess | getFinaPremiseResponseError)\n\nexport const getGetFinaPremiseUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/premises/${id}`\n}\n\nexport const getFinaPremise = async (id: string, options?: RequestInit): Promise<getFinaPremiseResponse> => {\n  \n  return customFetch<getFinaPremiseResponse>(getGetFinaPremiseUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Deactivate a business premise and all its devices.\n * @summary Delete business premise\n */\nexport type deleteFinaPremiseResponse200 = {\n  data: FinaPremiseSuccessResponse\n  status: 200\n}\n\nexport type deleteFinaPremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteFinaPremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteFinaPremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteFinaPremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteFinaPremiseResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteFinaPremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteFinaPremiseResponseSuccess = (deleteFinaPremiseResponse200) & {\n  headers: Headers;\n};\nexport type deleteFinaPremiseResponseError = (deleteFinaPremiseResponse400 | deleteFinaPremiseResponse401 | deleteFinaPremiseResponse403 | deleteFinaPremiseResponse404 | deleteFinaPremiseResponse422 | deleteFinaPremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteFinaPremiseResponse = (deleteFinaPremiseResponseSuccess | deleteFinaPremiseResponseError)\n\nexport const getDeleteFinaPremiseUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/fina/premises/${id}`\n}\n\nexport const deleteFinaPremise = async (id: string, options?: RequestInit): Promise<deleteFinaPremiseResponse> => {\n  \n  return customFetch<deleteFinaPremiseResponse>(getDeleteFinaPremiseUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FinaPremises API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createFinaPremise,\n  deleteFinaPremise,\n  getFinaPremise,\n  listFinaPremises,\n} from \"../generated/fina-premises/fina-premises\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const finaPremises = {\n  /** @see listFinaPremises */\n  listFinaPremises: wrapMethod(listFinaPremises),\n\n  /** @see createFinaPremise */\n  create: wrapMethod(createFinaPremise),\n\n  /** @see getFinaPremise */\n  getFinaPremise: wrapMethod(getFinaPremise),\n\n  /** @see deleteFinaPremise */\n  delete: wrapMethod(deleteFinaPremise),\n} as const;\n\nexport type FinaPremisesApi = typeof finaPremises;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GetFinaSettings200,\n  UpdateFinaSettings200,\n  UpdateFinaSettingsBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve CIS fiscalization settings for the entity, including certificate status and configuration\n * @summary Get FINA settings\n */\nexport type getFinaSettingsResponse200 = {\n  data: GetFinaSettings200\n  status: 200\n}\n\nexport type getFinaSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFinaSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFinaSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFinaSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFinaSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFinaSettingsResponseSuccess = (getFinaSettingsResponse200) & {\n  headers: Headers;\n};\nexport type getFinaSettingsResponseError = (getFinaSettingsResponse400 | getFinaSettingsResponse401 | getFinaSettingsResponse403 | getFinaSettingsResponse404 | getFinaSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type getFinaSettingsResponse = (getFinaSettingsResponseSuccess | getFinaSettingsResponseError)\n\nexport const getGetFinaSettingsUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/settings`\n}\n\nexport const getFinaSettings = async ( options?: RequestInit): Promise<getFinaSettingsResponse> => {\n  \n  return customFetch<getFinaSettingsResponse>(getGetFinaSettingsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update CIS fiscalization settings for the entity. Certificate must be uploaded separately via POST /fiscalization/fina/settings/certificate\n * @summary Update FINA settings\n */\nexport type updateFinaSettingsResponse200 = {\n  data: UpdateFinaSettings200\n  status: 200\n}\n\nexport type updateFinaSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateFinaSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateFinaSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateFinaSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateFinaSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateFinaSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateFinaSettingsResponseSuccess = (updateFinaSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateFinaSettingsResponseError = (updateFinaSettingsResponse400 | updateFinaSettingsResponse401 | updateFinaSettingsResponse403 | updateFinaSettingsResponse404 | updateFinaSettingsResponse422 | updateFinaSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateFinaSettingsResponse = (updateFinaSettingsResponseSuccess | updateFinaSettingsResponseError)\n\nexport const getUpdateFinaSettingsUrl = () => {\n\n\n  \n\n  return `/fiscalization/fina/settings`\n}\n\nexport const updateFinaSettings = async (updateFinaSettingsBody: UpdateFinaSettingsBody, options?: RequestInit): Promise<updateFinaSettingsResponse> => {\n  \n  return customFetch<updateFinaSettingsResponse>(getUpdateFinaSettingsUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateFinaSettingsBody,)\n  }\n);}\n  \n\n",
    "/**\n * FinaSettings API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getFinaSettings, updateFinaSettings } from \"../generated/fina-settings/fina-settings\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const finaSettings = {\n  /** @see getFinaSettings */\n  list: wrapMethod(getFinaSettings),\n\n  /** @see updateFinaSettings */\n  update: wrapMethod(updateFinaSettings),\n} as const;\n\nexport type FinaSettingsApi = typeof finaSettings;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GetFursCertificate200,\n  UploadFursCertificate200,\n  UploadFursCertificateBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Upload a P12/PFX certificate for FURS fiscalization. The certificate will be processed to extract expiry date and stored securely. The passphrase will be encrypted before storage. Certificate is entity-specific and required for fiscalizing invoices.\n * @summary Upload FURS certificate\n */\nexport type uploadFursCertificateResponse200 = {\n  data: UploadFursCertificate200\n  status: 200\n}\n\nexport type uploadFursCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type uploadFursCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type uploadFursCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type uploadFursCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type uploadFursCertificateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type uploadFursCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type uploadFursCertificateResponseSuccess = (uploadFursCertificateResponse200) & {\n  headers: Headers;\n};\nexport type uploadFursCertificateResponseError = (uploadFursCertificateResponse400 | uploadFursCertificateResponse401 | uploadFursCertificateResponse403 | uploadFursCertificateResponse404 | uploadFursCertificateResponse422 | uploadFursCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type uploadFursCertificateResponse = (uploadFursCertificateResponseSuccess | uploadFursCertificateResponseError)\n\nexport const getUploadFursCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/settings/certificate`\n}\n\nexport const uploadFursCertificate = async (uploadFursCertificateBody: UploadFursCertificateBody, options?: RequestInit): Promise<uploadFursCertificateResponse> => {\n    const formData = new FormData();\nif(uploadFursCertificateBody.file !== undefined) {\n formData.append(`file`, uploadFursCertificateBody.file);\n }\nif(uploadFursCertificateBody.passphrase !== undefined) {\n formData.append(`passphrase`, uploadFursCertificateBody.passphrase);\n }\n\n  return customFetch<uploadFursCertificateResponse>(getUploadFursCertificateUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    ,\n    body: \n      formData,\n  }\n);}\n  \n\n/**\n * Retrieve certificate metadata including expiry date and upload time. Does not return the certificate or private key.\n * @summary Get certificate metadata\n */\nexport type getFursCertificateResponse200 = {\n  data: GetFursCertificate200\n  status: 200\n}\n\nexport type getFursCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFursCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFursCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFursCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFursCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFursCertificateResponseSuccess = (getFursCertificateResponse200) & {\n  headers: Headers;\n};\nexport type getFursCertificateResponseError = (getFursCertificateResponse400 | getFursCertificateResponse401 | getFursCertificateResponse403 | getFursCertificateResponse404 | getFursCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type getFursCertificateResponse = (getFursCertificateResponseSuccess | getFursCertificateResponseError)\n\nexport const getGetFursCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/settings/certificate`\n}\n\nexport const getFursCertificate = async ( options?: RequestInit): Promise<getFursCertificateResponse> => {\n  \n  return customFetch<getFursCertificateResponse>(getGetFursCertificateUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Delete the FURS certificate for the entity. This will remove both the uploaded file reference and the extracted certificate from the database.\n * @summary Delete FURS certificate\n */\nexport type deleteFursCertificateResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteFursCertificateResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteFursCertificateResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteFursCertificateResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteFursCertificateResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteFursCertificateResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteFursCertificateResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteFursCertificateResponseSuccess = (deleteFursCertificateResponse204) & {\n  headers: Headers;\n};\nexport type deleteFursCertificateResponseError = (deleteFursCertificateResponse400 | deleteFursCertificateResponse401 | deleteFursCertificateResponse403 | deleteFursCertificateResponse404 | deleteFursCertificateResponse422 | deleteFursCertificateResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteFursCertificateResponse = (deleteFursCertificateResponseSuccess | deleteFursCertificateResponseError)\n\nexport const getDeleteFursCertificateUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/settings/certificate`\n}\n\nexport const deleteFursCertificate = async ( options?: RequestInit): Promise<deleteFursCertificateResponse> => {\n  \n  return customFetch<deleteFursCertificateResponse>(getDeleteFursCertificateUrl(),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FursCertificate API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  deleteFursCertificate,\n  getFursCertificate,\n  uploadFursCertificate,\n} from \"../generated/furs-certificate/furs-certificate\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const fursCertificate = {\n  /** @see uploadFursCertificate */\n  uploadFursCertificate: wrapMethod(uploadFursCertificate),\n\n  /** @see getFursCertificate */\n  getFursCertificate: wrapMethod(getFursCertificate),\n\n  /** @see deleteFursCertificate */\n  delete: wrapMethod(deleteFursCertificate),\n} as const;\n\nexport type FursCertificateApi = typeof fursCertificate;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  ElectronicDeviceSuccessResponse,\n  Error,\n  FursElectronicDevice,\n  RegisterFursElectronicDeviceBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve all electronic devices (cash registers, POS terminals) registered for a business premise.\n * @summary List electronic devices\n */\nexport type listFursElectronicDevicesResponse200 = {\n  data: FursElectronicDevice[]\n  status: 200\n}\n\nexport type listFursElectronicDevicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listFursElectronicDevicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listFursElectronicDevicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listFursElectronicDevicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listFursElectronicDevicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listFursElectronicDevicesResponseSuccess = (listFursElectronicDevicesResponse200) & {\n  headers: Headers;\n};\nexport type listFursElectronicDevicesResponseError = (listFursElectronicDevicesResponse400 | listFursElectronicDevicesResponse401 | listFursElectronicDevicesResponse403 | listFursElectronicDevicesResponse404 | listFursElectronicDevicesResponse500) & {\n  headers: Headers;\n};\n\nexport type listFursElectronicDevicesResponse = (listFursElectronicDevicesResponseSuccess | listFursElectronicDevicesResponseError)\n\nexport const getListFursElectronicDevicesUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/furs/premises/${id}/devices`\n}\n\nexport const listFursElectronicDevices = async (id: string, options?: RequestInit): Promise<listFursElectronicDevicesResponse> => {\n  \n  return customFetch<listFursElectronicDevicesResponse>(getListFursElectronicDevicesUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Register an electronic device (cash register, POS terminal, etc.) for a business premise. Required before fiscalizing invoices from this device.\n * @summary Register electronic device\n */\nexport type registerFursElectronicDeviceResponse201 = {\n  data: ElectronicDeviceSuccessResponse\n  status: 201\n}\n\nexport type registerFursElectronicDeviceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type registerFursElectronicDeviceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type registerFursElectronicDeviceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type registerFursElectronicDeviceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type registerFursElectronicDeviceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type registerFursElectronicDeviceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type registerFursElectronicDeviceResponseSuccess = (registerFursElectronicDeviceResponse201) & {\n  headers: Headers;\n};\nexport type registerFursElectronicDeviceResponseError = (registerFursElectronicDeviceResponse400 | registerFursElectronicDeviceResponse401 | registerFursElectronicDeviceResponse403 | registerFursElectronicDeviceResponse404 | registerFursElectronicDeviceResponse422 | registerFursElectronicDeviceResponse500) & {\n  headers: Headers;\n};\n\nexport type registerFursElectronicDeviceResponse = (registerFursElectronicDeviceResponseSuccess | registerFursElectronicDeviceResponseError)\n\nexport const getRegisterFursElectronicDeviceUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/furs/premises/${id}/devices`\n}\n\nexport const registerFursElectronicDevice = async (id: string,\n    registerFursElectronicDeviceBody: RegisterFursElectronicDeviceBody, options?: RequestInit): Promise<registerFursElectronicDeviceResponse> => {\n  \n  return customFetch<registerFursElectronicDeviceResponse>(getRegisterFursElectronicDeviceUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      registerFursElectronicDeviceBody,)\n  }\n);}\n  \n\n/**\n * Retrieve details of a specific electronic device by ID.\n * @summary Get an electronic device\n */\nexport type getFursElectronicDeviceResponse200 = {\n  data: FursElectronicDevice\n  status: 200\n}\n\nexport type getFursElectronicDeviceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFursElectronicDeviceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFursElectronicDeviceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFursElectronicDeviceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFursElectronicDeviceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFursElectronicDeviceResponseSuccess = (getFursElectronicDeviceResponse200) & {\n  headers: Headers;\n};\nexport type getFursElectronicDeviceResponseError = (getFursElectronicDeviceResponse400 | getFursElectronicDeviceResponse401 | getFursElectronicDeviceResponse403 | getFursElectronicDeviceResponse404 | getFursElectronicDeviceResponse500) & {\n  headers: Headers;\n};\n\nexport type getFursElectronicDeviceResponse = (getFursElectronicDeviceResponseSuccess | getFursElectronicDeviceResponseError)\n\nexport const getGetFursElectronicDeviceUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/furs/devices/${id}`\n}\n\nexport const getFursElectronicDevice = async (id: string, options?: RequestInit): Promise<getFursElectronicDeviceResponse> => {\n  \n  return customFetch<getFursElectronicDeviceResponse>(getGetFursElectronicDeviceUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FursDevices API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  getFursElectronicDevice,\n  listFursElectronicDevices,\n  registerFursElectronicDevice,\n} from \"../generated/furs-devices/furs-devices\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const fursDevices = {\n  /** @see listFursElectronicDevices */\n  listFursElectronicDevices: wrapMethod(listFursElectronicDevices),\n\n  /** @see registerFursElectronicDevice */\n  registerFursElectronicDevice: wrapMethod(registerFursElectronicDevice),\n\n  /** @see getFursElectronicDevice */\n  getFursElectronicDevice: wrapMethod(getFursElectronicDevice),\n} as const;\n\nexport type FursDevicesApi = typeof fursDevices;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Generate the Slovenian FURS internal act as a PDF attachment based on the entity's active premises, devices, and numbering strategy.\n * @summary Download FURS internal act PDF\n */\nexport type generateFursInternalActPdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type generateFursInternalActPdfResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type generateFursInternalActPdfResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type generateFursInternalActPdfResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type generateFursInternalActPdfResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type generateFursInternalActPdfResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type generateFursInternalActPdfResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type generateFursInternalActPdfResponseSuccess = (generateFursInternalActPdfResponse200) & {\n  headers: Headers;\n};\nexport type generateFursInternalActPdfResponseError = (generateFursInternalActPdfResponse400 | generateFursInternalActPdfResponse401 | generateFursInternalActPdfResponse403 | generateFursInternalActPdfResponse404 | generateFursInternalActPdfResponse422 | generateFursInternalActPdfResponse500) & {\n  headers: Headers;\n};\n\nexport type generateFursInternalActPdfResponse = (generateFursInternalActPdfResponseSuccess | generateFursInternalActPdfResponseError)\n\nexport const getGenerateFursInternalActPdfUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/internal-act/report.pdf`\n}\n\nexport const generateFursInternalActPdf = async ( options?: RequestInit): Promise<generateFursInternalActPdfResponse> => {\n  \n  return customFetch<generateFursInternalActPdfResponse>(getGenerateFursInternalActPdfUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Generate the Slovenian FURS internal act as an editable DOCX attachment based on the entity's active premises, devices, and numbering strategy.\n * @summary Download FURS internal act DOCX\n */\nexport type generateFursInternalActDocxResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type generateFursInternalActDocxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type generateFursInternalActDocxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type generateFursInternalActDocxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type generateFursInternalActDocxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type generateFursInternalActDocxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type generateFursInternalActDocxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type generateFursInternalActDocxResponseSuccess = (generateFursInternalActDocxResponse200) & {\n  headers: Headers;\n};\nexport type generateFursInternalActDocxResponseError = (generateFursInternalActDocxResponse400 | generateFursInternalActDocxResponse401 | generateFursInternalActDocxResponse403 | generateFursInternalActDocxResponse404 | generateFursInternalActDocxResponse422 | generateFursInternalActDocxResponse500) & {\n  headers: Headers;\n};\n\nexport type generateFursInternalActDocxResponse = (generateFursInternalActDocxResponseSuccess | generateFursInternalActDocxResponseError)\n\nexport const getGenerateFursInternalActDocxUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/internal-act/report.docx`\n}\n\nexport const generateFursInternalActDocx = async ( options?: RequestInit): Promise<generateFursInternalActDocxResponse> => {\n  \n  return customFetch<generateFursInternalActDocxResponse>(getGenerateFursInternalActDocxUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FursInternalAct API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  generateFursInternalActDocx,\n  generateFursInternalActPdf,\n} from \"../generated/furs-internal-act/furs-internal-act\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const fursInternalAct = {\n  /** @see generateFursInternalActPdf */\n  generateFursInternalActPdf: wrapMethod(generateFursInternalActPdf),\n\n  /** @see generateFursInternalActDocx */\n  generateFursInternalActDocx: wrapMethod(generateFursInternalActDocx),\n} as const;\n\nexport type FursInternalActApi = typeof fursInternalAct;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  FursBusinessPremise,\n  FursPremiseSuccessResponse,\n  RegisterFursMovablePremiseBody,\n  RegisterFursRealEstatePremiseBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve all registered business premises for the entity. Each premise represents a physical location or movable unit where invoices are issued.\n * @summary List all business premises\n */\nexport type listFursBusinessPremisesResponse200 = {\n  data: FursBusinessPremise[]\n  status: 200\n}\n\nexport type listFursBusinessPremisesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listFursBusinessPremisesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listFursBusinessPremisesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listFursBusinessPremisesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listFursBusinessPremisesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listFursBusinessPremisesResponseSuccess = (listFursBusinessPremisesResponse200) & {\n  headers: Headers;\n};\nexport type listFursBusinessPremisesResponseError = (listFursBusinessPremisesResponse400 | listFursBusinessPremisesResponse401 | listFursBusinessPremisesResponse403 | listFursBusinessPremisesResponse404 | listFursBusinessPremisesResponse500) & {\n  headers: Headers;\n};\n\nexport type listFursBusinessPremisesResponse = (listFursBusinessPremisesResponseSuccess | listFursBusinessPremisesResponseError)\n\nexport const getListFursBusinessPremisesUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/premises`\n}\n\nexport const listFursBusinessPremises = async ( options?: RequestInit): Promise<listFursBusinessPremisesResponse> => {\n  \n  return customFetch<listFursBusinessPremisesResponse>(getListFursBusinessPremisesUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve details of a specific business premise by ID, including its electronic devices.\n * @summary Get a business premise\n */\nexport type getFursBusinessPremiseResponse200 = {\n  data: FursBusinessPremise\n  status: 200\n}\n\nexport type getFursBusinessPremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFursBusinessPremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFursBusinessPremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFursBusinessPremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFursBusinessPremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFursBusinessPremiseResponseSuccess = (getFursBusinessPremiseResponse200) & {\n  headers: Headers;\n};\nexport type getFursBusinessPremiseResponseError = (getFursBusinessPremiseResponse400 | getFursBusinessPremiseResponse401 | getFursBusinessPremiseResponse403 | getFursBusinessPremiseResponse404 | getFursBusinessPremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type getFursBusinessPremiseResponse = (getFursBusinessPremiseResponseSuccess | getFursBusinessPremiseResponseError)\n\nexport const getGetFursBusinessPremiseUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/furs/premises/${id}`\n}\n\nexport const getFursBusinessPremise = async (id: string, options?: RequestInit): Promise<getFursBusinessPremiseResponse> => {\n  \n  return customFetch<getFursBusinessPremiseResponse>(getGetFursBusinessPremiseUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Register a real estate (physical location) business premise with FURS (Slovenia). Required before fiscalizing invoices from this location.\n * @summary Register real estate premise\n */\nexport type registerFursRealEstatePremiseResponse200 = {\n  data: FursPremiseSuccessResponse\n  status: 200\n}\n\nexport type registerFursRealEstatePremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type registerFursRealEstatePremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type registerFursRealEstatePremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type registerFursRealEstatePremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type registerFursRealEstatePremiseResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type registerFursRealEstatePremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type registerFursRealEstatePremiseResponseSuccess = (registerFursRealEstatePremiseResponse200) & {\n  headers: Headers;\n};\nexport type registerFursRealEstatePremiseResponseError = (registerFursRealEstatePremiseResponse400 | registerFursRealEstatePremiseResponse401 | registerFursRealEstatePremiseResponse403 | registerFursRealEstatePremiseResponse404 | registerFursRealEstatePremiseResponse422 | registerFursRealEstatePremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type registerFursRealEstatePremiseResponse = (registerFursRealEstatePremiseResponseSuccess | registerFursRealEstatePremiseResponseError)\n\nexport const getRegisterFursRealEstatePremiseUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/premises/real-estate`\n}\n\nexport const registerFursRealEstatePremise = async (registerFursRealEstatePremiseBody: RegisterFursRealEstatePremiseBody, options?: RequestInit): Promise<registerFursRealEstatePremiseResponse> => {\n  \n  return customFetch<registerFursRealEstatePremiseResponse>(getRegisterFursRealEstatePremiseUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      registerFursRealEstatePremiseBody,)\n  }\n);}\n  \n\n/**\n * Register a movable business premise (vehicle, market stall, vending machine) with FURS (Slovenia). Required before fiscalizing invoices from this premise.\n * @summary Register movable premise\n */\nexport type registerFursMovablePremiseResponse200 = {\n  data: FursPremiseSuccessResponse\n  status: 200\n}\n\nexport type registerFursMovablePremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type registerFursMovablePremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type registerFursMovablePremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type registerFursMovablePremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type registerFursMovablePremiseResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type registerFursMovablePremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type registerFursMovablePremiseResponseSuccess = (registerFursMovablePremiseResponse200) & {\n  headers: Headers;\n};\nexport type registerFursMovablePremiseResponseError = (registerFursMovablePremiseResponse400 | registerFursMovablePremiseResponse401 | registerFursMovablePremiseResponse403 | registerFursMovablePremiseResponse404 | registerFursMovablePremiseResponse422 | registerFursMovablePremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type registerFursMovablePremiseResponse = (registerFursMovablePremiseResponseSuccess | registerFursMovablePremiseResponseError)\n\nexport const getRegisterFursMovablePremiseUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/premises/movable`\n}\n\nexport const registerFursMovablePremise = async (registerFursMovablePremiseBody: RegisterFursMovablePremiseBody, options?: RequestInit): Promise<registerFursMovablePremiseResponse> => {\n  \n  return customFetch<registerFursMovablePremiseResponse>(getRegisterFursMovablePremiseUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      registerFursMovablePremiseBody,)\n  }\n);}\n  \n\n/**\n * Close a previously registered business premise with FURS. This should be done when a business location is permanently closed.\n * @summary Close business premise\n */\nexport type closeFursBusinessPremiseResponse200 = {\n  data: FursPremiseSuccessResponse\n  status: 200\n}\n\nexport type closeFursBusinessPremiseResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type closeFursBusinessPremiseResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type closeFursBusinessPremiseResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type closeFursBusinessPremiseResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type closeFursBusinessPremiseResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type closeFursBusinessPremiseResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type closeFursBusinessPremiseResponseSuccess = (closeFursBusinessPremiseResponse200) & {\n  headers: Headers;\n};\nexport type closeFursBusinessPremiseResponseError = (closeFursBusinessPremiseResponse400 | closeFursBusinessPremiseResponse401 | closeFursBusinessPremiseResponse403 | closeFursBusinessPremiseResponse404 | closeFursBusinessPremiseResponse422 | closeFursBusinessPremiseResponse500) & {\n  headers: Headers;\n};\n\nexport type closeFursBusinessPremiseResponse = (closeFursBusinessPremiseResponseSuccess | closeFursBusinessPremiseResponseError)\n\nexport const getCloseFursBusinessPremiseUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/furs/premises/${id}/close`\n}\n\nexport const closeFursBusinessPremise = async (id: string, options?: RequestInit): Promise<closeFursBusinessPremiseResponse> => {\n  \n  return customFetch<closeFursBusinessPremiseResponse>(getCloseFursBusinessPremiseUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * FursPremises API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  closeFursBusinessPremise,\n  getFursBusinessPremise,\n  listFursBusinessPremises,\n  registerFursMovablePremise,\n  registerFursRealEstatePremise,\n} from \"../generated/furs-premises/furs-premises\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const fursPremises = {\n  /** @see listFursBusinessPremises */\n  listFursBusinessPremises: wrapMethod(listFursBusinessPremises),\n\n  /** @see getFursBusinessPremise */\n  getFursBusinessPremise: wrapMethod(getFursBusinessPremise),\n\n  /** @see registerFursRealEstatePremise */\n  registerFursRealEstatePremise: wrapMethod(registerFursRealEstatePremise),\n\n  /** @see registerFursMovablePremise */\n  registerFursMovablePremise: wrapMethod(registerFursMovablePremise),\n\n  /** @see closeFursBusinessPremise */\n  closeFursBusinessPremise: wrapMethod(closeFursBusinessPremise),\n} as const;\n\nexport type FursPremisesApi = typeof fursPremises;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GetFursSettings200,\n  UpdateFursSettings200,\n  UpdateFursSettingsBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve FURS fiscalization settings for the entity, including certificate status and configuration\n * @summary Get FURS settings\n */\nexport type getFursSettingsResponse200 = {\n  data: GetFursSettings200\n  status: 200\n}\n\nexport type getFursSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getFursSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getFursSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getFursSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getFursSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getFursSettingsResponseSuccess = (getFursSettingsResponse200) & {\n  headers: Headers;\n};\nexport type getFursSettingsResponseError = (getFursSettingsResponse400 | getFursSettingsResponse401 | getFursSettingsResponse403 | getFursSettingsResponse404 | getFursSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type getFursSettingsResponse = (getFursSettingsResponseSuccess | getFursSettingsResponseError)\n\nexport const getGetFursSettingsUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/settings`\n}\n\nexport const getFursSettings = async ( options?: RequestInit): Promise<getFursSettingsResponse> => {\n  \n  return customFetch<getFursSettingsResponse>(getGetFursSettingsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update FURS fiscalization settings for the entity. Certificate must be uploaded separately via POST /fiscalization/furs/settings/certificate\n * @summary Update FURS settings\n */\nexport type updateFursSettingsResponse200 = {\n  data: UpdateFursSettings200\n  status: 200\n}\n\nexport type updateFursSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateFursSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateFursSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateFursSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateFursSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateFursSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateFursSettingsResponseSuccess = (updateFursSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateFursSettingsResponseError = (updateFursSettingsResponse400 | updateFursSettingsResponse401 | updateFursSettingsResponse403 | updateFursSettingsResponse404 | updateFursSettingsResponse422 | updateFursSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateFursSettingsResponse = (updateFursSettingsResponseSuccess | updateFursSettingsResponseError)\n\nexport const getUpdateFursSettingsUrl = () => {\n\n\n  \n\n  return `/fiscalization/furs/settings`\n}\n\nexport const updateFursSettings = async (updateFursSettingsBody: UpdateFursSettingsBody, options?: RequestInit): Promise<updateFursSettingsResponse> => {\n  \n  return customFetch<updateFursSettingsResponse>(getUpdateFursSettingsUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateFursSettingsBody,)\n  }\n);}\n  \n\n",
    "/**\n * FursSettings API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getFursSettings, updateFursSettings } from \"../generated/furs-settings/furs-settings\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const fursSettings = {\n  /** @see getFursSettings */\n  list: wrapMethod(getFursSettings),\n\n  /** @see updateFursSettings */\n  update: wrapMethod(updateFursSettings),\n} as const;\n\nexport type FursSettingsApi = typeof fursSettings;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport { customFetch } from '../../mutator/custom-fetch';\n\nexport type livenessCheckResponse200 = {\n  data: void\n  status: 200\n}\n\nexport type livenessCheckResponseSuccess = (livenessCheckResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type livenessCheckResponse = (livenessCheckResponseSuccess)\n\nexport const getLivenessCheckUrl = () => {\n\n\n  \n\n  return `/health/live`\n}\n\nexport const livenessCheck = async ( options?: RequestInit): Promise<livenessCheckResponse> => {\n  \n  return customFetch<livenessCheckResponse>(getLivenessCheckUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\nexport type readinessCheckResponse200 = {\n  data: void\n  status: 200\n}\n\nexport type readinessCheckResponse503 = {\n  data: void\n  status: 503\n}\n\nexport type readinessCheckResponseSuccess = (readinessCheckResponse200) & {\n  headers: Headers;\n};\nexport type readinessCheckResponseError = (readinessCheckResponse503) & {\n  headers: Headers;\n};\n\nexport type readinessCheckResponse = (readinessCheckResponseSuccess | readinessCheckResponseError)\n\nexport const getReadinessCheckUrl = () => {\n\n\n  \n\n  return `/health/ready`\n}\n\nexport const readinessCheck = async ( options?: RequestInit): Promise<readinessCheckResponse> => {\n  \n  return customFetch<readinessCheckResponse>(getReadinessCheckUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\nexport type healthCheckResponse200 = {\n  data: void\n  status: 200\n}\n\nexport type healthCheckResponse503 = {\n  data: void\n  status: 503\n}\n\nexport type healthCheckResponseSuccess = (healthCheckResponse200) & {\n  headers: Headers;\n};\nexport type healthCheckResponseError = (healthCheckResponse503) & {\n  headers: Headers;\n};\n\nexport type healthCheckResponse = (healthCheckResponseSuccess | healthCheckResponseError)\n\nexport const getHealthCheckUrl = () => {\n\n\n  \n\n  return `/health`\n}\n\nexport const healthCheck = async ( options?: RequestInit): Promise<healthCheckResponse> => {\n  \n  return customFetch<healthCheckResponse>(getHealthCheckUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Health API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { healthCheck, livenessCheck, readinessCheck } from \"../generated/health/health\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const health = {\n  /** @see livenessCheck */\n  livenessCheck: wrapMethod(livenessCheck),\n\n  /** @see readinessCheck */\n  readinessCheck: wrapMethod(readinessCheck),\n\n  /** @see healthCheck */\n  healthCheck: wrapMethod(healthCheck),\n} as const;\n\nexport type HealthApi = typeof health;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateIncomingPurchaseDocumentBody,\n  CreateIncomingPurchaseDocumentPaymentBody,\n  CustomCreateIncomingPurchaseDocument,\n  Error,\n  FileMetadata,\n  GetIncomingPurchaseDocumentAttachments200,\n  GetIncomingPurchaseDocumentPayments200,\n  GetIncomingPurchaseDocuments200,\n  GetIncomingPurchaseDocumentsParams,\n  IncomingPurchaseDocument,\n  Payment,\n  UpdateIncomingPurchaseDocumentBody,\n  UploadIncomingPurchaseDocumentAttachmentBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * @summary Create incoming purchase document\n */\nexport type createIncomingPurchaseDocumentResponse201 = {\n  data: IncomingPurchaseDocument\n  status: 201\n}\n\nexport type createIncomingPurchaseDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createIncomingPurchaseDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createIncomingPurchaseDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createIncomingPurchaseDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createIncomingPurchaseDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createIncomingPurchaseDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createIncomingPurchaseDocumentResponseSuccess = (createIncomingPurchaseDocumentResponse201) & {\n  headers: Headers;\n};\nexport type createIncomingPurchaseDocumentResponseError = (createIncomingPurchaseDocumentResponse400 | createIncomingPurchaseDocumentResponse401 | createIncomingPurchaseDocumentResponse403 | createIncomingPurchaseDocumentResponse404 | createIncomingPurchaseDocumentResponse422 | createIncomingPurchaseDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type createIncomingPurchaseDocumentResponse = (createIncomingPurchaseDocumentResponseSuccess | createIncomingPurchaseDocumentResponseError)\n\nexport const getCreateIncomingPurchaseDocumentUrl = () => {\n\n\n  \n\n  return `/incoming-purchase-documents`\n}\n\nexport const createIncomingPurchaseDocument = async (createIncomingPurchaseDocumentBody: CreateIncomingPurchaseDocumentBody, options?: RequestInit): Promise<createIncomingPurchaseDocumentResponse> => {\n  \n  return customFetch<createIncomingPurchaseDocumentResponse>(getCreateIncomingPurchaseDocumentUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createIncomingPurchaseDocumentBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of incoming purchase documents with optional filtering.\nSupports cursor-based pagination, full-text search across supplier snapshot and document fields, and suite-standard JSON query filters for date, totals, payment state, and supplier snapshot data.\n * @summary List incoming purchase documents\n */\nexport type getIncomingPurchaseDocumentsResponse200 = {\n  data: GetIncomingPurchaseDocuments200\n  status: 200\n}\n\nexport type getIncomingPurchaseDocumentsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getIncomingPurchaseDocumentsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getIncomingPurchaseDocumentsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getIncomingPurchaseDocumentsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getIncomingPurchaseDocumentsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getIncomingPurchaseDocumentsResponseSuccess = (getIncomingPurchaseDocumentsResponse200) & {\n  headers: Headers;\n};\nexport type getIncomingPurchaseDocumentsResponseError = (getIncomingPurchaseDocumentsResponse400 | getIncomingPurchaseDocumentsResponse401 | getIncomingPurchaseDocumentsResponse403 | getIncomingPurchaseDocumentsResponse404 | getIncomingPurchaseDocumentsResponse500) & {\n  headers: Headers;\n};\n\nexport type getIncomingPurchaseDocumentsResponse = (getIncomingPurchaseDocumentsResponseSuccess | getIncomingPurchaseDocumentsResponseError)\n\nexport const getGetIncomingPurchaseDocumentsUrl = (params?: GetIncomingPurchaseDocumentsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/incoming-purchase-documents?${stringifiedParams}` : `/incoming-purchase-documents`\n}\n\nexport const getIncomingPurchaseDocuments = async (params?: GetIncomingPurchaseDocumentsParams, options?: RequestInit): Promise<getIncomingPurchaseDocumentsResponse> => {\n  \n  return customFetch<getIncomingPurchaseDocumentsResponse>(getGetIncomingPurchaseDocumentsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create an incoming purchase document using externally prepared values from OCR, ERP, or accounting software.\nThe caller provides document totals, item totals, and tax summaries directly.\nThe persistence, supplier handling, payment tracking initialization, and lifecycle rules are identical to the standard create endpoint.\n * @summary Create incoming purchase document with pre-calculated totals\n */\nexport type createCustomIncomingPurchaseDocumentResponse201 = {\n  data: IncomingPurchaseDocument\n  status: 201\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomIncomingPurchaseDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomIncomingPurchaseDocumentResponseSuccess = (createCustomIncomingPurchaseDocumentResponse201) & {\n  headers: Headers;\n};\nexport type createCustomIncomingPurchaseDocumentResponseError = (createCustomIncomingPurchaseDocumentResponse400 | createCustomIncomingPurchaseDocumentResponse401 | createCustomIncomingPurchaseDocumentResponse403 | createCustomIncomingPurchaseDocumentResponse404 | createCustomIncomingPurchaseDocumentResponse422 | createCustomIncomingPurchaseDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomIncomingPurchaseDocumentResponse = (createCustomIncomingPurchaseDocumentResponseSuccess | createCustomIncomingPurchaseDocumentResponseError)\n\nexport const getCreateCustomIncomingPurchaseDocumentUrl = () => {\n\n\n  \n\n  return `/incoming-purchase-documents/custom`\n}\n\nexport const createCustomIncomingPurchaseDocument = async (customCreateIncomingPurchaseDocument: CustomCreateIncomingPurchaseDocument, options?: RequestInit): Promise<createCustomIncomingPurchaseDocumentResponse> => {\n  \n  return customFetch<createCustomIncomingPurchaseDocumentResponse>(getCreateCustomIncomingPurchaseDocumentUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateIncomingPurchaseDocument,)\n  }\n);}\n  \n\n/**\n * @summary Get incoming purchase document by ID\n */\nexport type getIncomingPurchaseDocumentByIdResponse200 = {\n  data: IncomingPurchaseDocument\n  status: 200\n}\n\nexport type getIncomingPurchaseDocumentByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getIncomingPurchaseDocumentByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getIncomingPurchaseDocumentByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getIncomingPurchaseDocumentByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getIncomingPurchaseDocumentByIdResponseSuccess = (getIncomingPurchaseDocumentByIdResponse200) & {\n  headers: Headers;\n};\nexport type getIncomingPurchaseDocumentByIdResponseError = (getIncomingPurchaseDocumentByIdResponse401 | getIncomingPurchaseDocumentByIdResponse403 | getIncomingPurchaseDocumentByIdResponse404 | getIncomingPurchaseDocumentByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getIncomingPurchaseDocumentByIdResponse = (getIncomingPurchaseDocumentByIdResponseSuccess | getIncomingPurchaseDocumentByIdResponseError)\n\nexport const getGetIncomingPurchaseDocumentByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}`\n}\n\nexport const getIncomingPurchaseDocumentById = async (id: string, options?: RequestInit): Promise<getIncomingPurchaseDocumentByIdResponse> => {\n  \n  return customFetch<getIncomingPurchaseDocumentByIdResponse>(getGetIncomingPurchaseDocumentByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Update incoming purchase document\n */\nexport type updateIncomingPurchaseDocumentResponse200 = {\n  data: IncomingPurchaseDocument\n  status: 200\n}\n\nexport type updateIncomingPurchaseDocumentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateIncomingPurchaseDocumentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateIncomingPurchaseDocumentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateIncomingPurchaseDocumentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateIncomingPurchaseDocumentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateIncomingPurchaseDocumentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateIncomingPurchaseDocumentResponseSuccess = (updateIncomingPurchaseDocumentResponse200) & {\n  headers: Headers;\n};\nexport type updateIncomingPurchaseDocumentResponseError = (updateIncomingPurchaseDocumentResponse400 | updateIncomingPurchaseDocumentResponse401 | updateIncomingPurchaseDocumentResponse403 | updateIncomingPurchaseDocumentResponse404 | updateIncomingPurchaseDocumentResponse422 | updateIncomingPurchaseDocumentResponse500) & {\n  headers: Headers;\n};\n\nexport type updateIncomingPurchaseDocumentResponse = (updateIncomingPurchaseDocumentResponseSuccess | updateIncomingPurchaseDocumentResponseError)\n\nexport const getUpdateIncomingPurchaseDocumentUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}`\n}\n\nexport const updateIncomingPurchaseDocument = async (id: string,\n    updateIncomingPurchaseDocumentBody: UpdateIncomingPurchaseDocumentBody, options?: RequestInit): Promise<updateIncomingPurchaseDocumentResponse> => {\n  \n  return customFetch<updateIncomingPurchaseDocumentResponse>(getUpdateIncomingPurchaseDocumentUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateIncomingPurchaseDocumentBody,)\n  }\n);}\n  \n\n/**\n * @summary Upload incoming purchase document attachment\n */\nexport type uploadIncomingPurchaseDocumentAttachmentResponse201 = {\n  data: FileMetadata\n  status: 201\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponseSuccess = (uploadIncomingPurchaseDocumentAttachmentResponse201) & {\n  headers: Headers;\n};\nexport type uploadIncomingPurchaseDocumentAttachmentResponseError = (uploadIncomingPurchaseDocumentAttachmentResponse400 | uploadIncomingPurchaseDocumentAttachmentResponse401 | uploadIncomingPurchaseDocumentAttachmentResponse403 | uploadIncomingPurchaseDocumentAttachmentResponse404 | uploadIncomingPurchaseDocumentAttachmentResponse422 | uploadIncomingPurchaseDocumentAttachmentResponse500) & {\n  headers: Headers;\n};\n\nexport type uploadIncomingPurchaseDocumentAttachmentResponse = (uploadIncomingPurchaseDocumentAttachmentResponseSuccess | uploadIncomingPurchaseDocumentAttachmentResponseError)\n\nexport const getUploadIncomingPurchaseDocumentAttachmentUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}/attachments`\n}\n\nexport const uploadIncomingPurchaseDocumentAttachment = async (id: string,\n    uploadIncomingPurchaseDocumentAttachmentBody: UploadIncomingPurchaseDocumentAttachmentBody, options?: RequestInit): Promise<uploadIncomingPurchaseDocumentAttachmentResponse> => {\n    const formData = new FormData();\nif(uploadIncomingPurchaseDocumentAttachmentBody.file !== undefined) {\n formData.append(`file`, uploadIncomingPurchaseDocumentAttachmentBody.file);\n }\n\n  return customFetch<uploadIncomingPurchaseDocumentAttachmentResponse>(getUploadIncomingPurchaseDocumentAttachmentUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    ,\n    body: \n      formData,\n  }\n);}\n  \n\n/**\n * @summary List incoming purchase document attachments\n */\nexport type getIncomingPurchaseDocumentAttachmentsResponse200 = {\n  data: GetIncomingPurchaseDocumentAttachments200\n  status: 200\n}\n\nexport type getIncomingPurchaseDocumentAttachmentsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getIncomingPurchaseDocumentAttachmentsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getIncomingPurchaseDocumentAttachmentsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getIncomingPurchaseDocumentAttachmentsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getIncomingPurchaseDocumentAttachmentsResponseSuccess = (getIncomingPurchaseDocumentAttachmentsResponse200) & {\n  headers: Headers;\n};\nexport type getIncomingPurchaseDocumentAttachmentsResponseError = (getIncomingPurchaseDocumentAttachmentsResponse401 | getIncomingPurchaseDocumentAttachmentsResponse403 | getIncomingPurchaseDocumentAttachmentsResponse404 | getIncomingPurchaseDocumentAttachmentsResponse500) & {\n  headers: Headers;\n};\n\nexport type getIncomingPurchaseDocumentAttachmentsResponse = (getIncomingPurchaseDocumentAttachmentsResponseSuccess | getIncomingPurchaseDocumentAttachmentsResponseError)\n\nexport const getGetIncomingPurchaseDocumentAttachmentsUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}/attachments`\n}\n\nexport const getIncomingPurchaseDocumentAttachments = async (id: string, options?: RequestInit): Promise<getIncomingPurchaseDocumentAttachmentsResponse> => {\n  \n  return customFetch<getIncomingPurchaseDocumentAttachmentsResponse>(getGetIncomingPurchaseDocumentAttachmentsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Delete incoming purchase document attachment\n */\nexport type deleteIncomingPurchaseDocumentAttachmentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponseSuccess = (deleteIncomingPurchaseDocumentAttachmentResponse204) & {\n  headers: Headers;\n};\nexport type deleteIncomingPurchaseDocumentAttachmentResponseError = (deleteIncomingPurchaseDocumentAttachmentResponse401 | deleteIncomingPurchaseDocumentAttachmentResponse403 | deleteIncomingPurchaseDocumentAttachmentResponse404 | deleteIncomingPurchaseDocumentAttachmentResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteIncomingPurchaseDocumentAttachmentResponse = (deleteIncomingPurchaseDocumentAttachmentResponseSuccess | deleteIncomingPurchaseDocumentAttachmentResponseError)\n\nexport const getDeleteIncomingPurchaseDocumentAttachmentUrl = (id: string,\n    fileId: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}/attachments/${fileId}`\n}\n\nexport const deleteIncomingPurchaseDocumentAttachment = async (id: string,\n    fileId: string, options?: RequestInit): Promise<deleteIncomingPurchaseDocumentAttachmentResponse> => {\n  \n  return customFetch<deleteIncomingPurchaseDocumentAttachmentResponse>(getDeleteIncomingPurchaseDocumentAttachmentUrl(id,fileId),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary List payments affecting an incoming purchase document\n */\nexport type getIncomingPurchaseDocumentPaymentsResponse200 = {\n  data: GetIncomingPurchaseDocumentPayments200\n  status: 200\n}\n\nexport type getIncomingPurchaseDocumentPaymentsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getIncomingPurchaseDocumentPaymentsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getIncomingPurchaseDocumentPaymentsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getIncomingPurchaseDocumentPaymentsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getIncomingPurchaseDocumentPaymentsResponseSuccess = (getIncomingPurchaseDocumentPaymentsResponse200) & {\n  headers: Headers;\n};\nexport type getIncomingPurchaseDocumentPaymentsResponseError = (getIncomingPurchaseDocumentPaymentsResponse401 | getIncomingPurchaseDocumentPaymentsResponse403 | getIncomingPurchaseDocumentPaymentsResponse404 | getIncomingPurchaseDocumentPaymentsResponse500) & {\n  headers: Headers;\n};\n\nexport type getIncomingPurchaseDocumentPaymentsResponse = (getIncomingPurchaseDocumentPaymentsResponseSuccess | getIncomingPurchaseDocumentPaymentsResponseError)\n\nexport const getGetIncomingPurchaseDocumentPaymentsUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}/payments`\n}\n\nexport const getIncomingPurchaseDocumentPayments = async (id: string, options?: RequestInit): Promise<getIncomingPurchaseDocumentPaymentsResponse> => {\n  \n  return customFetch<getIncomingPurchaseDocumentPaymentsResponse>(getGetIncomingPurchaseDocumentPaymentsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Create a payment for an incoming purchase document\n */\nexport type createIncomingPurchaseDocumentPaymentResponse201 = {\n  data: Payment\n  status: 201\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createIncomingPurchaseDocumentPaymentResponseSuccess = (createIncomingPurchaseDocumentPaymentResponse201) & {\n  headers: Headers;\n};\nexport type createIncomingPurchaseDocumentPaymentResponseError = (createIncomingPurchaseDocumentPaymentResponse400 | createIncomingPurchaseDocumentPaymentResponse401 | createIncomingPurchaseDocumentPaymentResponse403 | createIncomingPurchaseDocumentPaymentResponse404 | createIncomingPurchaseDocumentPaymentResponse422 | createIncomingPurchaseDocumentPaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type createIncomingPurchaseDocumentPaymentResponse = (createIncomingPurchaseDocumentPaymentResponseSuccess | createIncomingPurchaseDocumentPaymentResponseError)\n\nexport const getCreateIncomingPurchaseDocumentPaymentUrl = (id: string,) => {\n\n\n  \n\n  return `/incoming-purchase-documents/${id}/payments`\n}\n\nexport const createIncomingPurchaseDocumentPayment = async (id: string,\n    createIncomingPurchaseDocumentPaymentBody: CreateIncomingPurchaseDocumentPaymentBody, options?: RequestInit): Promise<createIncomingPurchaseDocumentPaymentResponse> => {\n  \n  return customFetch<createIncomingPurchaseDocumentPaymentResponse>(getCreateIncomingPurchaseDocumentPaymentUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createIncomingPurchaseDocumentPaymentBody,)\n  }\n);}\n  \n\n",
    "/**\n * IncomingPurchaseDocuments API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCustomIncomingPurchaseDocument,\n  createIncomingPurchaseDocument,\n  deleteIncomingPurchaseDocumentAttachment,\n  getIncomingPurchaseDocumentById,\n  getIncomingPurchaseDocuments,\n  updateIncomingPurchaseDocument,\n  uploadIncomingPurchaseDocumentAttachment,\n} from \"../generated/incoming-purchase-documents/incoming-purchase-documents\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const incomingPurchaseDocuments = {\n  /** @see createIncomingPurchaseDocument */\n  create: wrapMethod(createIncomingPurchaseDocument),\n\n  /** @see getIncomingPurchaseDocuments */\n  list: wrapListMethod(getIncomingPurchaseDocuments),\n\n  /** @see createCustomIncomingPurchaseDocument */\n  createCustom: wrapMethod(createCustomIncomingPurchaseDocument),\n\n  /** @see getIncomingPurchaseDocumentById */\n  get: wrapMethod(getIncomingPurchaseDocumentById),\n\n  /** @see updateIncomingPurchaseDocument */\n  update: wrapMethod(updateIncomingPurchaseDocument),\n\n  /** @see uploadIncomingPurchaseDocumentAttachment */\n  uploadIncomingPurchaseDocumentAttachment: wrapMethod(uploadIncomingPurchaseDocumentAttachment),\n\n  /** @see deleteIncomingPurchaseDocumentAttachment */\n  delete: wrapMethod(deleteIncomingPurchaseDocumentAttachment),\n} as const;\n\nexport type IncomingPurchaseDocumentsApi = typeof incomingPurchaseDocuments;\n",
    "/**\n * SDK types - Auto-generated.\n * @generated\n */\n\nexport interface SDKMethodOptions {\n  entity_id?: string;\n  account_id?: string;\n  signal?: AbortSignal;\n}\n\nexport interface SDKListOptions extends SDKMethodOptions {\n  limit?: number;\n  next_cursor?: string;\n  prev_cursor?: string;\n  include_total_count?: boolean;\n  order_by?: string;\n  query?: string;\n  search?: string;\n  include?: string;\n}\n\nexport interface SDKConfig {\n  accessToken: string | (() => string | Promise<string>);\n  basePath?: string;\n  clientName?: string;\n  onUnauthorized?: (response: Response) => void;\n}\n\nexport const DEFAULT_BASE_URL = \"https://eu.spaceinvoices.com\";\n",
    "/**\n * Lightweight SDK initialization for tree-shakeable usage.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n *\n * @example\n * ```typescript\n * import { initSDK, invoices, customers } from '@spaceinvoices/js-sdk';\n *\n * // Initialize once at app startup\n * initSDK({ accessToken: 'your-api-key' });\n *\n * // Then use individual modules anywhere\n * const result = await invoices.list();\n * ```\n */\n\nimport { setFetchConfig } from \"../mutator/custom-fetch\";\nimport type { SDKConfig } from \"./types\";\nimport { DEFAULT_BASE_URL } from \"./types\";\n\n/**\n * Initialize the SDK configuration for tree-shakeable module usage.\n * Call this once at app startup before using any API modules.\n */\nexport function initSDK(config: SDKConfig | string): void {\n  const resolvedConfig = typeof config === \"string\" ? { accessToken: config } : config;\n\n  const getAccessToken =\n    typeof resolvedConfig.accessToken === \"function\"\n      ? resolvedConfig.accessToken\n      : () => resolvedConfig.accessToken as string;\n\n  setFetchConfig({\n    baseUrl: resolvedConfig.basePath ?? DEFAULT_BASE_URL,\n    getAccessToken,\n    clientName: resolvedConfig.clientName ?? \"js-sdk\",\n    onUnauthorized: resolvedConfig.onUnauthorized,\n  });\n}\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CompleteInvoicePreview,\n  CreateInvoice,\n  CustomCreateInvoice,\n  DocumentVersion,\n  DocumentVersionList,\n  Error,\n  GetInvoiceByIdParams,\n  GetInvoicesParams,\n  GetShareableInvoiceHtmlParams,\n  GetShareableInvoicePdfParams,\n  Invoice,\n  InvoiceList,\n  PartialInvoicePreview,\n  RenderDocumentHtmlParams,\n  RenderDocumentPdfParams,\n  RenderInvoicePreviewParams,\n  UpdateInvoice,\n  ValidationError,\n  VoidInvoiceBody\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve invoice data using a shareable token. No authentication required. Returns full invoice data for rendering.\n * @summary View shareable invoice\n */\nexport type getShareableInvoiceResponse200 = {\n  data: Invoice\n  status: 200\n}\n\nexport type getShareableInvoiceResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableInvoiceResponseSuccess = (getShareableInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type getShareableInvoiceResponseError = (getShareableInvoiceResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableInvoiceResponse = (getShareableInvoiceResponseSuccess | getShareableInvoiceResponseError)\n\nexport const getGetShareableInvoiceUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/invoices/shareable/${shareableId}`\n}\n\nexport const getShareableInvoice = async (shareableId: string, options?: RequestInit): Promise<getShareableInvoiceResponse> => {\n  \n  return customFetch<getShareableInvoiceResponse>(getGetShareableInvoiceUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get invoice as HTML preview using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Get shareable invoice as HTML\n */\nexport type getShareableInvoiceHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableInvoiceHtmlResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableInvoiceHtmlResponseSuccess = (getShareableInvoiceHtmlResponse200) & {\n  headers: Headers;\n};\nexport type getShareableInvoiceHtmlResponseError = (getShareableInvoiceHtmlResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableInvoiceHtmlResponse = (getShareableInvoiceHtmlResponseSuccess | getShareableInvoiceHtmlResponseError)\n\nexport const getGetShareableInvoiceHtmlUrl = (shareableId: string,\n    params?: GetShareableInvoiceHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invoices/shareable/${shareableId}/html?${stringifiedParams}` : `/invoices/shareable/${shareableId}/html`\n}\n\nexport const getShareableInvoiceHtml = async (shareableId: string,\n    params?: GetShareableInvoiceHtmlParams, options?: RequestInit): Promise<getShareableInvoiceHtmlResponse> => {\n  \n  return customFetch<getShareableInvoiceHtmlResponse>(getGetShareableInvoiceHtmlUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download invoice as PDF using a shareable token. No authentication required. Supports multiple languages via locale query parameter.\n * @summary Download shareable invoice as PDF\n */\nexport type getShareableInvoicePdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type getShareableInvoicePdfResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableInvoicePdfResponseSuccess = (getShareableInvoicePdfResponse200) & {\n  headers: Headers;\n};\nexport type getShareableInvoicePdfResponseError = (getShareableInvoicePdfResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableInvoicePdfResponse = (getShareableInvoicePdfResponseSuccess | getShareableInvoicePdfResponseError)\n\nexport const getGetShareableInvoicePdfUrl = (shareableId: string,\n    params?: GetShareableInvoicePdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invoices/shareable/${shareableId}/pdf?${stringifiedParams}` : `/invoices/shareable/${shareableId}/pdf`\n}\n\nexport const getShareableInvoicePdf = async (shareableId: string,\n    params?: GetShareableInvoicePdfParams, options?: RequestInit): Promise<getShareableInvoicePdfResponse> => {\n  \n  return customFetch<getShareableInvoicePdfResponse>(getGetShareableInvoicePdfUrl(shareableId,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Download invoice as e-SLOG 2.0 XML (Slovenian electronic invoice format) using a shareable token. No authentication required. Only available for Slovenian entities with valid e-SLOG validation.\n * @summary Download shareable invoice as e-SLOG XML\n */\nexport type getShareableInvoiceEslogResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type getShareableInvoiceEslogResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getShareableInvoiceEslogResponseSuccess = (getShareableInvoiceEslogResponse200) & {\n  headers: Headers;\n};\nexport type getShareableInvoiceEslogResponseError = (getShareableInvoiceEslogResponse404) & {\n  headers: Headers;\n};\n\nexport type getShareableInvoiceEslogResponse = (getShareableInvoiceEslogResponseSuccess | getShareableInvoiceEslogResponseError)\n\nexport const getGetShareableInvoiceEslogUrl = (shareableId: string,) => {\n\n\n  \n\n  return `/invoices/shareable/${shareableId}/eslog`\n}\n\nexport const getShareableInvoiceEslog = async (shareableId: string, options?: RequestInit): Promise<getShareableInvoiceEslogResponse> => {\n  \n  return customFetch<getShareableInvoiceEslogResponse>(getGetShareableInvoiceEslogUrl(shareableId),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create a new invoice with line items.\nCustomer is optional - can be omitted for retail/convenience store sales where customer information isn't needed, or added inline without referencing a customer_id.\nThe invoice number is auto-generated based on the entity's number format settings.\nTaxes are calculated automatically based on the tax rates provided.\n * @summary Create a new invoice\n */\nexport type createInvoiceResponse201 = {\n  data: Invoice\n  status: 201\n}\n\nexport type createInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createInvoiceResponseSuccess = (createInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type createInvoiceResponseError = (createInvoiceResponse400 | createInvoiceResponse401 | createInvoiceResponse403 | createInvoiceResponse404 | createInvoiceResponse422 | createInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type createInvoiceResponse = (createInvoiceResponseSuccess | createInvoiceResponseError)\n\nexport const getCreateInvoiceUrl = () => {\n\n\n  \n\n  return `/invoices`\n}\n\nexport const createInvoice = async (createInvoice: CreateInvoice, options?: RequestInit): Promise<createInvoiceResponse> => {\n  \n  return customFetch<createInvoiceResponse>(getCreateInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of invoices with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all invoices\n */\nexport type getInvoicesResponse200 = {\n  data: InvoiceList\n  status: 200\n}\n\nexport type getInvoicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getInvoicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getInvoicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getInvoicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getInvoicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getInvoicesResponseSuccess = (getInvoicesResponse200) & {\n  headers: Headers;\n};\nexport type getInvoicesResponseError = (getInvoicesResponse400 | getInvoicesResponse401 | getInvoicesResponse403 | getInvoicesResponse404 | getInvoicesResponse500) & {\n  headers: Headers;\n};\n\nexport type getInvoicesResponse = (getInvoicesResponseSuccess | getInvoicesResponseError)\n\nexport const getGetInvoicesUrl = (params?: GetInvoicesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invoices?${stringifiedParams}` : `/invoices`\n}\n\nexport const getInvoices = async (params?: GetInvoicesParams, options?: RequestInit): Promise<getInvoicesResponse> => {\n  \n  return customFetch<getInvoicesResponse>(getGetInvoicesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Create an invoice with pre-calculated totals from an external ERP or accounting system.\nThe caller provides `total`, `total_with_tax`, `total_discount`, and `taxes` at the document level, and `total`/`total_with_tax` on each line item.\nWhen `calculation_mode` is omitted, Space Invoices preserves pass-through behavior and accepts the supplied totals as-is.\nWhen `calculation_mode` is provided, Space Invoices validates the supplied totals against that calculation mode before creating the document.\nAll other logic (numbering, fiscalization, customer handling, payments, lifecycle hooks) is identical to the standard create endpoint.\n * @summary Create invoice with pre-calculated totals\n */\nexport type createCustomInvoiceResponse201 = {\n  data: Invoice\n  status: 201\n}\n\nexport type createCustomInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createCustomInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createCustomInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createCustomInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createCustomInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createCustomInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createCustomInvoiceResponseSuccess = (createCustomInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type createCustomInvoiceResponseError = (createCustomInvoiceResponse400 | createCustomInvoiceResponse401 | createCustomInvoiceResponse403 | createCustomInvoiceResponse404 | createCustomInvoiceResponse422 | createCustomInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type createCustomInvoiceResponse = (createCustomInvoiceResponseSuccess | createCustomInvoiceResponseError)\n\nexport const getCreateCustomInvoiceUrl = () => {\n\n\n  \n\n  return `/invoices/custom`\n}\n\nexport const createCustomInvoice = async (customCreateInvoice: CustomCreateInvoice, options?: RequestInit): Promise<createCustomInvoiceResponse> => {\n  \n  return customFetch<createCustomInvoiceResponse>(getCreateCustomInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      customCreateInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve a single invoice by its unique identifier. Returns the complete invoice details including all line items, customer information, and calculated totals.\n * @summary Get invoice by ID\n */\nexport type getInvoiceByIdResponse200 = {\n  data: Invoice\n  status: 200\n}\n\nexport type getInvoiceByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getInvoiceByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getInvoiceByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getInvoiceByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getInvoiceByIdResponseSuccess = (getInvoiceByIdResponse200) & {\n  headers: Headers;\n};\nexport type getInvoiceByIdResponseError = (getInvoiceByIdResponse401 | getInvoiceByIdResponse403 | getInvoiceByIdResponse404 | getInvoiceByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getInvoiceByIdResponse = (getInvoiceByIdResponseSuccess | getInvoiceByIdResponseError)\n\nexport const getGetInvoiceByIdUrl = (id: string,\n    params?: GetInvoiceByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invoices/${id}?${stringifiedParams}` : `/invoices/${id}`\n}\n\nexport const getInvoiceById = async (id: string,\n    params?: GetInvoiceByIdParams, options?: RequestInit): Promise<getInvoiceByIdResponse> => {\n  \n  return customFetch<getInvoiceByIdResponse>(getGetInvoiceByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing invoice.\nCreates a version snapshot before applying changes.\nCannot update voided or FURS-fiscalized invoices.\nIf items are provided, they replace all existing items.\n * @summary Update an invoice\n */\nexport type updateInvoiceResponse200 = {\n  data: Invoice\n  status: 200\n}\n\nexport type updateInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateInvoiceResponseSuccess = (updateInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type updateInvoiceResponseError = (updateInvoiceResponse400 | updateInvoiceResponse401 | updateInvoiceResponse403 | updateInvoiceResponse404 | updateInvoiceResponse422 | updateInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type updateInvoiceResponse = (updateInvoiceResponseSuccess | updateInvoiceResponseError)\n\nexport const getUpdateInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/invoices/${id}`\n}\n\nexport const updateInvoice = async (id: string,\n    updateInvoice: UpdateInvoice, options?: RequestInit): Promise<updateInvoiceResponse> => {\n  \n  return customFetch<updateInvoiceResponse>(getUpdateInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateInvoice,)\n  }\n);}\n  \n\n/**\n * Retrieve the version history for an invoice. Each version represents the document state before an update was applied.\n * @summary Get invoice version history\n */\nexport type getInvoiceVersionsResponse200 = {\n  data: DocumentVersionList\n  status: 200\n}\n\nexport type getInvoiceVersionsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getInvoiceVersionsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getInvoiceVersionsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getInvoiceVersionsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getInvoiceVersionsResponseSuccess = (getInvoiceVersionsResponse200) & {\n  headers: Headers;\n};\nexport type getInvoiceVersionsResponseError = (getInvoiceVersionsResponse401 | getInvoiceVersionsResponse403 | getInvoiceVersionsResponse404 | getInvoiceVersionsResponse500) & {\n  headers: Headers;\n};\n\nexport type getInvoiceVersionsResponse = (getInvoiceVersionsResponseSuccess | getInvoiceVersionsResponseError)\n\nexport const getGetInvoiceVersionsUrl = (id: string,) => {\n\n\n  \n\n  return `/invoices/${id}/versions`\n}\n\nexport const getInvoiceVersions = async (id: string, options?: RequestInit): Promise<getInvoiceVersionsResponse> => {\n  \n  return customFetch<getInvoiceVersionsResponse>(getGetInvoiceVersionsUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a specific version snapshot of an invoice.\n * @summary Get specific invoice version\n */\nexport type getInvoiceVersionResponse200 = {\n  data: DocumentVersion\n  status: 200\n}\n\nexport type getInvoiceVersionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getInvoiceVersionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getInvoiceVersionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getInvoiceVersionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getInvoiceVersionResponseSuccess = (getInvoiceVersionResponse200) & {\n  headers: Headers;\n};\nexport type getInvoiceVersionResponseError = (getInvoiceVersionResponse401 | getInvoiceVersionResponse403 | getInvoiceVersionResponse404 | getInvoiceVersionResponse500) & {\n  headers: Headers;\n};\n\nexport type getInvoiceVersionResponse = (getInvoiceVersionResponseSuccess | getInvoiceVersionResponseError)\n\nexport const getGetInvoiceVersionUrl = (id: string,\n    version: number,) => {\n\n\n  \n\n  return `/invoices/${id}/versions/${version}`\n}\n\nexport const getInvoiceVersion = async (id: string,\n    version: number, options?: RequestInit): Promise<getInvoiceVersionResponse> => {\n  \n  return customFetch<getInvoiceVersionResponse>(getGetInvoiceVersionUrl(id,version),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render an HTML preview of an invoice without saving to the database. Perfect for displaying live previews in invoice creation/edit forms. Supports both partial mode (allows incomplete data for drafts) and complete mode (validates all required fields).\n * @summary Render invoice preview\n */\nexport type renderInvoicePreviewResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderInvoicePreviewResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type renderInvoicePreviewResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderInvoicePreviewResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderInvoicePreviewResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderInvoicePreviewResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type renderInvoicePreviewResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderInvoicePreviewResponseSuccess = (renderInvoicePreviewResponse200) & {\n  headers: Headers;\n};\nexport type renderInvoicePreviewResponseError = (renderInvoicePreviewResponse400 | renderInvoicePreviewResponse401 | renderInvoicePreviewResponse403 | renderInvoicePreviewResponse404 | renderInvoicePreviewResponse422 | renderInvoicePreviewResponse500) & {\n  headers: Headers;\n};\n\nexport type renderInvoicePreviewResponse = (renderInvoicePreviewResponseSuccess | renderInvoicePreviewResponseError)\n\nexport const getRenderInvoicePreviewUrl = (params?: RenderInvoicePreviewParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/invoices/render?${stringifiedParams}` : `/invoices/render`\n}\n\nexport const renderInvoicePreview = async (partialInvoicePreviewCompleteInvoicePreview: PartialInvoicePreview | CompleteInvoicePreview,\n    params?: RenderInvoicePreviewParams, options?: RequestInit): Promise<renderInvoicePreviewResponse> => {\n  \n  return customFetch<renderInvoicePreviewResponse>(getRenderInvoicePreviewUrl(params),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      partialInvoicePreviewCompleteInvoicePreview,)\n  }\n);}\n  \n\n/**\n * Void an invoice for technical reasons (duplicate, error, etc.). For FURS-fiscalized invoices, automatically submits technical cancellation to FURS and creates a credit note. For business corrections, create a credit note instead.\n * @summary Void an invoice\n */\nexport type voidInvoiceResponse200 = {\n  data: Invoice\n  status: 200\n}\n\nexport type voidInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type voidInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type voidInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type voidInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type voidInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type voidInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type voidInvoiceResponseSuccess = (voidInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type voidInvoiceResponseError = (voidInvoiceResponse400 | voidInvoiceResponse401 | voidInvoiceResponse403 | voidInvoiceResponse404 | voidInvoiceResponse422 | voidInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type voidInvoiceResponse = (voidInvoiceResponseSuccess | voidInvoiceResponseError)\n\nexport const getVoidInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/invoices/${id}/void`\n}\n\nexport const voidInvoice = async (id: string,\n    voidInvoiceBody: VoidInvoiceBody, options?: RequestInit): Promise<voidInvoiceResponse> => {\n  \n  return customFetch<voidInvoiceResponse>(getVoidInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      voidInvoiceBody,)\n  }\n);}\n  \n\n/**\n * Manually fiscalize an invoice that was created before FURS was enabled. Auto-creates a dedicated \"OLD\" premise and device for FURS submission, assigns a new sequential FURS number (OLD-OLD-N), and submits to FURS with SubsequentSubmit=true and SpecialNotes=#OLDINV;. The original invoice number remains unchanged.\n * @summary Fiscalize an old invoice\n */\nexport type fiscalizeInvoiceResponse200 = {\n  data: Invoice\n  status: 200\n}\n\nexport type fiscalizeInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type fiscalizeInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type fiscalizeInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type fiscalizeInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type fiscalizeInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type fiscalizeInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type fiscalizeInvoiceResponseSuccess = (fiscalizeInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type fiscalizeInvoiceResponseError = (fiscalizeInvoiceResponse400 | fiscalizeInvoiceResponse401 | fiscalizeInvoiceResponse403 | fiscalizeInvoiceResponse404 | fiscalizeInvoiceResponse422 | fiscalizeInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type fiscalizeInvoiceResponse = (fiscalizeInvoiceResponseSuccess | fiscalizeInvoiceResponseError)\n\nexport const getFiscalizeInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/invoices/${id}/fiscalize`\n}\n\nexport const fiscalizeInvoice = async (id: string, options?: RequestInit): Promise<fiscalizeInvoiceResponse> => {\n  \n  return customFetch<fiscalizeInvoiceResponse>(getFiscalizeInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Render a saved document by its ID as HTML. The document type is automatically detected from the ID prefix (inv_, est_, cre_, adv_). The output is styled for professional presentation and optimized for display in web applications.\n * @summary Render HTML\n */\nexport type renderDocumentHtmlResponse200 = {\n  data: string\n  status: 200\n}\n\nexport type renderDocumentHtmlResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderDocumentHtmlResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderDocumentHtmlResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderDocumentHtmlResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderDocumentHtmlResponseSuccess = (renderDocumentHtmlResponse200) & {\n  headers: Headers;\n};\nexport type renderDocumentHtmlResponseError = (renderDocumentHtmlResponse401 | renderDocumentHtmlResponse403 | renderDocumentHtmlResponse404 | renderDocumentHtmlResponse500) & {\n  headers: Headers;\n};\n\nexport type renderDocumentHtmlResponse = (renderDocumentHtmlResponseSuccess | renderDocumentHtmlResponseError)\n\nexport const getRenderDocumentHtmlUrl = (id: string,\n    params?: RenderDocumentHtmlParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/html?${stringifiedParams}` : `/documents/${id}/html`\n}\n\nexport const renderDocumentHtml = async (id: string,\n    params?: RenderDocumentHtmlParams, options?: RequestInit): Promise<renderDocumentHtmlResponse> => {\n  \n  return customFetch<renderDocumentHtmlResponse>(getRenderDocumentHtmlUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Render a saved document by its ID as PDF. The document type is automatically detected from the ID prefix (inv_, est_, cre_, adv_). The output is styled for professional presentation and optimized for printing. Ideal for downloads and archival.\n * @summary Render PDF\n */\nexport type renderDocumentPdfResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type renderDocumentPdfResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type renderDocumentPdfResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type renderDocumentPdfResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type renderDocumentPdfResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type renderDocumentPdfResponseSuccess = (renderDocumentPdfResponse200) & {\n  headers: Headers;\n};\nexport type renderDocumentPdfResponseError = (renderDocumentPdfResponse401 | renderDocumentPdfResponse403 | renderDocumentPdfResponse404 | renderDocumentPdfResponse500) & {\n  headers: Headers;\n};\n\nexport type renderDocumentPdfResponse = (renderDocumentPdfResponseSuccess | renderDocumentPdfResponseError)\n\nexport const getRenderDocumentPdfUrl = (id: string,\n    params?: RenderDocumentPdfParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/documents/${id}/pdf?${stringifiedParams}` : `/documents/${id}/pdf`\n}\n\nexport const renderDocumentPdf = async (id: string,\n    params?: RenderDocumentPdfParams, options?: RequestInit): Promise<renderDocumentPdfResponse> => {\n  \n  return customFetch<renderDocumentPdfResponse>(getRenderDocumentPdfUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Browser download utility for SDK binary responses.\n */\n\n/**\n * Trigger a browser file download from a Blob.\n *\n * @example\n * ```ts\n * import { downloadBlob } from '@spaceinvoices/js-sdk';\n *\n * const blob = await sdk.invoices.renderPdf(invoiceId);\n * downloadBlob(blob, 'Invoice 123.pdf');\n * ```\n */\nexport function downloadBlob(blob: Blob, filename: string): void {\n  const url = URL.createObjectURL(blob);\n  const link = document.createElement(\"a\");\n  link.href = url;\n  link.download = filename;\n  document.body.appendChild(link);\n  link.click();\n  document.body.removeChild(link);\n  URL.revokeObjectURL(url);\n}\n",
    "/**\n * Invoices API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createCustomInvoice,\n  createInvoice,\n  fiscalizeInvoice,\n  getInvoiceById,\n  getInvoices,\n  getInvoiceVersion,\n  getInvoiceVersions,\n  getShareableInvoice,\n  getShareableInvoiceEslog,\n  getShareableInvoiceHtml,\n  getShareableInvoicePdf,\n  renderDocumentHtml,\n  renderDocumentPdf,\n  renderInvoicePreview,\n  updateInvoice,\n  voidInvoice,\n} from \"../generated/invoices/invoices\";\n\nimport type { RenderDocumentPdfParams } from \"../generated/model\";\nimport { downloadBlob } from \"./download\";\nimport type { SDKMethodOptions } from \"./types\";\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nconst _renderPdf = wrapMethod(renderDocumentPdf);\n\nexport const invoices = {\n  /** @see getShareableInvoice */\n  getShareableInvoice: wrapMethod(getShareableInvoice),\n\n  /** @see getShareableInvoiceHtml */\n  getShareableInvoiceHtml: wrapMethod(getShareableInvoiceHtml),\n\n  /** @see getShareableInvoicePdf */\n  getShareableInvoicePdf: wrapMethod(getShareableInvoicePdf),\n\n  /** @see getShareableInvoiceEslog */\n  getShareableInvoiceEslog: wrapMethod(getShareableInvoiceEslog),\n\n  /** @see createInvoice */\n  create: wrapMethod(createInvoice),\n\n  /** @see getInvoices */\n  list: wrapListMethod(getInvoices),\n\n  /** @see createCustomInvoice */\n  createCustom: wrapMethod(createCustomInvoice),\n\n  /** @see getInvoiceById */\n  get: wrapMethod(getInvoiceById),\n\n  /** @see updateInvoice */\n  update: wrapMethod(updateInvoice),\n\n  /** @see getInvoiceVersions */\n  getVersions: wrapMethod(getInvoiceVersions),\n\n  /** @see getInvoiceVersion */\n  getVersion: wrapMethod(getInvoiceVersion),\n\n  /** @see renderInvoicePreview */\n  renderInvoicePreview: wrapMethod(renderInvoicePreview),\n\n  /** @see voidInvoice */\n  void: wrapMethod(voidInvoice),\n\n  /** @see fiscalizeInvoice */\n  fiscalizeInvoice: wrapMethod(fiscalizeInvoice),\n\n  /** @see renderDocumentHtml */\n  renderHtml: wrapMethod(renderDocumentHtml),\n\n  /** @see renderDocumentPdf — returns a Blob */\n  renderPdf: _renderPdf,\n\n  /**\n   * Download a document as PDF.\n   * Convenience wrapper: calls renderPdf then triggers a browser download.\n   */\n  async downloadPdf(\n    id: string,\n    filename: string,\n    params?: RenderDocumentPdfParams,\n    options?: SDKMethodOptions,\n  ): Promise<void> {\n    const blob = await _renderPdf(id, params, options);\n    downloadBlob(blob, filename);\n  },\n} as const;\n\nexport type InvoicesApi = typeof invoices;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateItemBody,\n  Error,\n  GetItems200,\n  GetItemsParams,\n  ItemResponse,\n  UpdateItemBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new product or service item for use in invoices. Items can include pricing, tax information (inline or by reference), and unit details. All fields except name are optional.\n * @summary Create a new item\n */\nexport type createItemResponse201 = {\n  data: ItemResponse\n  status: 201\n}\n\nexport type createItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createItemResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createItemResponseSuccess = (createItemResponse201) & {\n  headers: Headers;\n};\nexport type createItemResponseError = (createItemResponse400 | createItemResponse401 | createItemResponse403 | createItemResponse404 | createItemResponse422 | createItemResponse500) & {\n  headers: Headers;\n};\n\nexport type createItemResponse = (createItemResponseSuccess | createItemResponseError)\n\nexport const getCreateItemUrl = () => {\n\n\n  \n\n  return `/items`\n}\n\nexport const createItem = async (createItemBody: CreateItemBody, options?: RequestInit): Promise<createItemResponse> => {\n  \n  return customFetch<createItemResponse>(getCreateItemUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createItemBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of items (products and services) with optional filtering and sorting. Supports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all items\n */\nexport type getItemsResponse200 = {\n  data: GetItems200\n  status: 200\n}\n\nexport type getItemsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getItemsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getItemsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getItemsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getItemsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getItemsResponseSuccess = (getItemsResponse200) & {\n  headers: Headers;\n};\nexport type getItemsResponseError = (getItemsResponse400 | getItemsResponse401 | getItemsResponse403 | getItemsResponse404 | getItemsResponse500) & {\n  headers: Headers;\n};\n\nexport type getItemsResponse = (getItemsResponseSuccess | getItemsResponseError)\n\nexport const getGetItemsUrl = (params?: GetItemsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/items?${stringifiedParams}` : `/items`\n}\n\nexport const getItems = async (params?: GetItemsParams, options?: RequestInit): Promise<getItemsResponse> => {\n  \n  return customFetch<getItemsResponse>(getGetItemsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing product or service item. Only the provided fields are updated. Pricing and taxes are recalculated consistently with item creation rules.\n * @summary Update an item\n */\nexport type updateItemResponse200 = {\n  data: ItemResponse\n  status: 200\n}\n\nexport type updateItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateItemResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateItemResponseSuccess = (updateItemResponse200) & {\n  headers: Headers;\n};\nexport type updateItemResponseError = (updateItemResponse400 | updateItemResponse401 | updateItemResponse403 | updateItemResponse404 | updateItemResponse422 | updateItemResponse500) & {\n  headers: Headers;\n};\n\nexport type updateItemResponse = (updateItemResponseSuccess | updateItemResponseError)\n\nexport const getUpdateItemUrl = (id: string,) => {\n\n\n  \n\n  return `/items/${id}`\n}\n\nexport const updateItem = async (id: string,\n    updateItemBody: UpdateItemBody, options?: RequestInit): Promise<updateItemResponse> => {\n  \n  return customFetch<updateItemResponse>(getUpdateItemUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateItemBody,)\n  }\n);}\n  \n\n/**\n * Soft delete an item. The item will be moved to the trash and can be restored later.\n * @summary Delete an item\n */\nexport type deleteItemResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteItemResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteItemResponseSuccess = (deleteItemResponse204) & {\n  headers: Headers;\n};\nexport type deleteItemResponseError = (deleteItemResponse400 | deleteItemResponse401 | deleteItemResponse403 | deleteItemResponse404 | deleteItemResponse422 | deleteItemResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteItemResponse = (deleteItemResponseSuccess | deleteItemResponseError)\n\nexport const getDeleteItemUrl = (id: string,) => {\n\n\n  \n\n  return `/items/${id}`\n}\n\nexport const deleteItem = async (id: string, options?: RequestInit): Promise<deleteItemResponse> => {\n  \n  return customFetch<deleteItemResponse>(getDeleteItemUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted item from the trash.\n * @summary Restore a deleted item\n */\nexport type restoreItemResponse200 = {\n  data: ItemResponse\n  status: 200\n}\n\nexport type restoreItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restoreItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restoreItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restoreItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restoreItemResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restoreItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restoreItemResponseSuccess = (restoreItemResponse200) & {\n  headers: Headers;\n};\nexport type restoreItemResponseError = (restoreItemResponse400 | restoreItemResponse401 | restoreItemResponse403 | restoreItemResponse404 | restoreItemResponse422 | restoreItemResponse500) & {\n  headers: Headers;\n};\n\nexport type restoreItemResponse = (restoreItemResponseSuccess | restoreItemResponseError)\n\nexport const getRestoreItemUrl = (id: string,) => {\n\n\n  \n\n  return `/items/${id}/restore`\n}\n\nexport const restoreItem = async (id: string, options?: RequestInit): Promise<restoreItemResponse> => {\n  \n  return customFetch<restoreItemResponse>(getRestoreItemUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted item. Only items in the trash can be permanently deleted.\n * @summary Permanently delete an item\n */\nexport type permanentDeleteItemResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeleteItemResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type permanentDeleteItemResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeleteItemResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeleteItemResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeleteItemResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type permanentDeleteItemResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeleteItemResponseSuccess = (permanentDeleteItemResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeleteItemResponseError = (permanentDeleteItemResponse400 | permanentDeleteItemResponse401 | permanentDeleteItemResponse403 | permanentDeleteItemResponse404 | permanentDeleteItemResponse422 | permanentDeleteItemResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeleteItemResponse = (permanentDeleteItemResponseSuccess | permanentDeleteItemResponseError)\n\nexport const getPermanentDeleteItemUrl = (id: string,) => {\n\n\n  \n\n  return `/items/${id}/permanent`\n}\n\nexport const permanentDeleteItem = async (id: string, options?: RequestInit): Promise<permanentDeleteItemResponse> => {\n  \n  return customFetch<permanentDeleteItemResponse>(getPermanentDeleteItemUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Items API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createItem,\n  deleteItem,\n  getItems,\n  permanentDeleteItem,\n  restoreItem,\n  updateItem,\n} from \"../generated/items/items\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const items = {\n  /** @see createItem */\n  create: wrapMethod(createItem),\n\n  /** @see getItems */\n  list: wrapListMethod(getItems),\n\n  /** @see updateItem */\n  update: wrapMethod(updateItem),\n\n  /** @see deleteItem */\n  delete: wrapMethod(deleteItem),\n\n  /** @see restoreItem */\n  restoreItem: wrapMethod(restoreItem),\n\n  /** @see permanentDeleteItem */\n  permanentDeleteItem: wrapMethod(permanentDeleteItem),\n} as const;\n\nexport type ItemsApi = typeof items;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateMigrationJobRequest,\n  CreateMigrationJobResponse,\n  LegacyAuthRequest,\n  LegacyAuthResponse,\n  MigrationJobListResponse,\n  MigrationJobResponse\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Authenticate with legacy Space Invoices credentials and get a list of owned organizations.\n * @summary Authenticate with legacy API\n */\nexport type legacyMigrationAuthResponse200 = {\n  data: LegacyAuthResponse\n  status: 200\n}\n\nexport type legacyMigrationAuthResponse401 = {\n  data: void\n  status: 401\n}\n\nexport type legacyMigrationAuthResponseSuccess = (legacyMigrationAuthResponse200) & {\n  headers: Headers;\n};\nexport type legacyMigrationAuthResponseError = (legacyMigrationAuthResponse401) & {\n  headers: Headers;\n};\n\nexport type legacyMigrationAuthResponse = (legacyMigrationAuthResponseSuccess | legacyMigrationAuthResponseError)\n\nexport const getLegacyMigrationAuthUrl = () => {\n\n\n  \n\n  return `/legacy-migration/auth`\n}\n\nexport const legacyMigrationAuth = async (legacyAuthRequest: LegacyAuthRequest, options?: RequestInit): Promise<legacyMigrationAuthResponse> => {\n  \n  return customFetch<legacyMigrationAuthResponse>(getLegacyMigrationAuthUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      legacyAuthRequest,)\n  }\n);}\n  \n\n/**\n * Create a new legacy migration job.\n * @summary Create migration job\n */\nexport type createMigrationJobResponse202 = {\n  data: CreateMigrationJobResponse\n  status: 202\n}\n\nexport type createMigrationJobResponse409 = {\n  data: void\n  status: 409\n}\n\nexport type createMigrationJobResponseSuccess = (createMigrationJobResponse202) & {\n  headers: Headers;\n};\nexport type createMigrationJobResponseError = (createMigrationJobResponse409) & {\n  headers: Headers;\n};\n\nexport type createMigrationJobResponse = (createMigrationJobResponseSuccess | createMigrationJobResponseError)\n\nexport const getCreateMigrationJobUrl = () => {\n\n\n  \n\n  return `/legacy-migration/jobs`\n}\n\nexport const createMigrationJob = async (createMigrationJobRequest: CreateMigrationJobRequest, options?: RequestInit): Promise<createMigrationJobResponse> => {\n  \n  return customFetch<createMigrationJobResponse>(getCreateMigrationJobUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createMigrationJobRequest,)\n  }\n);}\n  \n\n/**\n * List all migration jobs for the current account.\n * @summary List migration jobs\n */\nexport type listMigrationJobsResponse200 = {\n  data: MigrationJobListResponse\n  status: 200\n}\n\nexport type listMigrationJobsResponseSuccess = (listMigrationJobsResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type listMigrationJobsResponse = (listMigrationJobsResponseSuccess)\n\nexport const getListMigrationJobsUrl = () => {\n\n\n  \n\n  return `/legacy-migration/jobs`\n}\n\nexport const listMigrationJobs = async ( options?: RequestInit): Promise<listMigrationJobsResponse> => {\n  \n  return customFetch<listMigrationJobsResponse>(getListMigrationJobsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get status and progress of a migration job.\n * @summary Get migration job status\n */\nexport type getMigrationJobResponse200 = {\n  data: MigrationJobResponse\n  status: 200\n}\n\nexport type getMigrationJobResponse404 = {\n  data: void\n  status: 404\n}\n\nexport type getMigrationJobResponseSuccess = (getMigrationJobResponse200) & {\n  headers: Headers;\n};\nexport type getMigrationJobResponseError = (getMigrationJobResponse404) & {\n  headers: Headers;\n};\n\nexport type getMigrationJobResponse = (getMigrationJobResponseSuccess | getMigrationJobResponseError)\n\nexport const getGetMigrationJobUrl = (id: string,) => {\n\n\n  \n\n  return `/legacy-migration/jobs/${id}`\n}\n\nexport const getMigrationJob = async (id: string, options?: RequestInit): Promise<getMigrationJobResponse> => {\n  \n  return customFetch<getMigrationJobResponse>(getGetMigrationJobUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * LegacyMigration API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createMigrationJob,\n  getMigrationJob,\n  legacyMigrationAuth,\n  listMigrationJobs,\n} from \"../generated/legacy-migration/legacy-migration\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const legacyMigration = {\n  /** @see legacyMigrationAuth */\n  legacyMigrationAuth: wrapMethod(legacyMigrationAuth),\n\n  /** @see createMigrationJob */\n  create: wrapMethod(createMigrationJob),\n\n  /** @see listMigrationJobs */\n  listMigrationJobs: wrapMethod(listMigrationJobs),\n\n  /** @see getMigrationJob */\n  getMigrationJob: wrapMethod(getMigrationJob),\n} as const;\n\nexport type LegacyMigrationApi = typeof legacyMigration;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport { customFetch } from '../../mutator/custom-fetch';\n\nexport type detectLocaleResponse200 = {\n  data: void\n  status: 200\n}\n\nexport type detectLocaleResponseSuccess = (detectLocaleResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type detectLocaleResponse = (detectLocaleResponseSuccess)\n\nexport const getDetectLocaleUrl = () => {\n\n\n  \n\n  return `/locale/detect`\n}\n\nexport const detectLocale = async ( options?: RequestInit): Promise<detectLocaleResponse> => {\n  \n  return customFetch<detectLocaleResponse>(getDetectLocaleUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Locale API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { detectLocale } from \"../generated/locale/locale\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const locale = {\n  /** @see detectLocale */\n  detectLocale: wrapMethod(detectLocale),\n} as const;\n\nexport type LocaleApi = typeof locale;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AuthorizeShopifyBody,\n  CreateOrderIntegrationBody,\n  Error,\n  GetOrderIntegrations200,\n  GetOrderIntegrationsParams,\n  OrderIntegration,\n  ShopifyAuthorizeResponse,\n  SyncShopifyOrdersBody,\n  SyncShopifyOrdersResponse,\n  UpdateOrderIntegrationBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Generate a Shopify OAuth authorization URL. Redirect the user to this URL to authorize the Shopify connection.\n * @summary Start Shopify OAuth flow\n */\nexport type authorizeShopifyResponse200 = {\n  data: ShopifyAuthorizeResponse\n  status: 200\n}\n\nexport type authorizeShopifyResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type authorizeShopifyResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type authorizeShopifyResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type authorizeShopifyResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type authorizeShopifyResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type authorizeShopifyResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type authorizeShopifyResponseSuccess = (authorizeShopifyResponse200) & {\n  headers: Headers;\n};\nexport type authorizeShopifyResponseError = (authorizeShopifyResponse400 | authorizeShopifyResponse401 | authorizeShopifyResponse403 | authorizeShopifyResponse404 | authorizeShopifyResponse422 | authorizeShopifyResponse500) & {\n  headers: Headers;\n};\n\nexport type authorizeShopifyResponse = (authorizeShopifyResponseSuccess | authorizeShopifyResponseError)\n\nexport const getAuthorizeShopifyUrl = () => {\n\n\n  \n\n  return `/order-integrations/shopify/authorize`\n}\n\nexport const authorizeShopify = async (authorizeShopifyBody: AuthorizeShopifyBody, options?: RequestInit): Promise<authorizeShopifyResponse> => {\n  \n  return customFetch<authorizeShopifyResponse>(getAuthorizeShopifyUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      authorizeShopifyBody,)\n  }\n);}\n  \n\n/**\n * Fetch Shopify orders updated in the selected time window and upsert them into local orders. Missing orders are imported, existing orders are refreshed, and processing is queued separately.\n * @summary Sync Shopify orders\n */\nexport type syncShopifyOrdersResponse200 = {\n  data: SyncShopifyOrdersResponse\n  status: 200\n}\n\nexport type syncShopifyOrdersResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type syncShopifyOrdersResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type syncShopifyOrdersResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type syncShopifyOrdersResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type syncShopifyOrdersResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type syncShopifyOrdersResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type syncShopifyOrdersResponseSuccess = (syncShopifyOrdersResponse200) & {\n  headers: Headers;\n};\nexport type syncShopifyOrdersResponseError = (syncShopifyOrdersResponse400 | syncShopifyOrdersResponse401 | syncShopifyOrdersResponse403 | syncShopifyOrdersResponse404 | syncShopifyOrdersResponse422 | syncShopifyOrdersResponse500) & {\n  headers: Headers;\n};\n\nexport type syncShopifyOrdersResponse = (syncShopifyOrdersResponseSuccess | syncShopifyOrdersResponseError)\n\nexport const getSyncShopifyOrdersUrl = (id: string,) => {\n\n\n  \n\n  return `/order-integrations/${id}/sync-shopify`\n}\n\nexport const syncShopifyOrders = async (id: string,\n    syncShopifyOrdersBody?: SyncShopifyOrdersBody, options?: RequestInit): Promise<syncShopifyOrdersResponse> => {\n  \n  return customFetch<syncShopifyOrdersResponse>(getSyncShopifyOrdersUrl(id),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      syncShopifyOrdersBody,)\n  }\n);}\n  \n\n/**\n * Create a new order integration for receiving orders from external platforms.\n * @summary Create a new order integration\n */\nexport type createOrderIntegrationResponse201 = {\n  data: OrderIntegration\n  status: 201\n}\n\nexport type createOrderIntegrationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createOrderIntegrationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createOrderIntegrationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createOrderIntegrationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createOrderIntegrationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createOrderIntegrationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createOrderIntegrationResponseSuccess = (createOrderIntegrationResponse201) & {\n  headers: Headers;\n};\nexport type createOrderIntegrationResponseError = (createOrderIntegrationResponse400 | createOrderIntegrationResponse401 | createOrderIntegrationResponse403 | createOrderIntegrationResponse404 | createOrderIntegrationResponse422 | createOrderIntegrationResponse500) & {\n  headers: Headers;\n};\n\nexport type createOrderIntegrationResponse = (createOrderIntegrationResponseSuccess | createOrderIntegrationResponseError)\n\nexport const getCreateOrderIntegrationUrl = () => {\n\n\n  \n\n  return `/order-integrations`\n}\n\nexport const createOrderIntegration = async (createOrderIntegrationBody: CreateOrderIntegrationBody, options?: RequestInit): Promise<createOrderIntegrationResponse> => {\n  \n  return customFetch<createOrderIntegrationResponse>(getCreateOrderIntegrationUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createOrderIntegrationBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of order integrations with optional filtering and sorting.\n * @summary List all order integrations\n */\nexport type getOrderIntegrationsResponse200 = {\n  data: GetOrderIntegrations200\n  status: 200\n}\n\nexport type getOrderIntegrationsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getOrderIntegrationsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getOrderIntegrationsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getOrderIntegrationsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getOrderIntegrationsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getOrderIntegrationsResponseSuccess = (getOrderIntegrationsResponse200) & {\n  headers: Headers;\n};\nexport type getOrderIntegrationsResponseError = (getOrderIntegrationsResponse400 | getOrderIntegrationsResponse401 | getOrderIntegrationsResponse403 | getOrderIntegrationsResponse404 | getOrderIntegrationsResponse500) & {\n  headers: Headers;\n};\n\nexport type getOrderIntegrationsResponse = (getOrderIntegrationsResponseSuccess | getOrderIntegrationsResponseError)\n\nexport const getGetOrderIntegrationsUrl = (params?: GetOrderIntegrationsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/order-integrations?${stringifiedParams}` : `/order-integrations`\n}\n\nexport const getOrderIntegrations = async (params?: GetOrderIntegrationsParams, options?: RequestInit): Promise<getOrderIntegrationsResponse> => {\n  \n  return customFetch<getOrderIntegrationsResponse>(getGetOrderIntegrationsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single order integration by its unique identifier.\n * @summary Get order integration by ID\n */\nexport type getOrderIntegrationByIdResponse200 = {\n  data: OrderIntegration\n  status: 200\n}\n\nexport type getOrderIntegrationByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getOrderIntegrationByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getOrderIntegrationByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getOrderIntegrationByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getOrderIntegrationByIdResponseSuccess = (getOrderIntegrationByIdResponse200) & {\n  headers: Headers;\n};\nexport type getOrderIntegrationByIdResponseError = (getOrderIntegrationByIdResponse401 | getOrderIntegrationByIdResponse403 | getOrderIntegrationByIdResponse404 | getOrderIntegrationByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getOrderIntegrationByIdResponse = (getOrderIntegrationByIdResponseSuccess | getOrderIntegrationByIdResponseError)\n\nexport const getGetOrderIntegrationByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/order-integrations/${id}`\n}\n\nexport const getOrderIntegrationById = async (id: string, options?: RequestInit): Promise<getOrderIntegrationByIdResponse> => {\n  \n  return customFetch<getOrderIntegrationByIdResponse>(getGetOrderIntegrationByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing order integration. Only the provided fields will be updated.\n * @summary Update an order integration\n */\nexport type updateOrderIntegrationResponse200 = {\n  data: OrderIntegration\n  status: 200\n}\n\nexport type updateOrderIntegrationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateOrderIntegrationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateOrderIntegrationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateOrderIntegrationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateOrderIntegrationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateOrderIntegrationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateOrderIntegrationResponseSuccess = (updateOrderIntegrationResponse200) & {\n  headers: Headers;\n};\nexport type updateOrderIntegrationResponseError = (updateOrderIntegrationResponse400 | updateOrderIntegrationResponse401 | updateOrderIntegrationResponse403 | updateOrderIntegrationResponse404 | updateOrderIntegrationResponse422 | updateOrderIntegrationResponse500) & {\n  headers: Headers;\n};\n\nexport type updateOrderIntegrationResponse = (updateOrderIntegrationResponseSuccess | updateOrderIntegrationResponseError)\n\nexport const getUpdateOrderIntegrationUrl = (id: string,) => {\n\n\n  \n\n  return `/order-integrations/${id}`\n}\n\nexport const updateOrderIntegration = async (id: string,\n    updateOrderIntegrationBody: UpdateOrderIntegrationBody, options?: RequestInit): Promise<updateOrderIntegrationResponse> => {\n  \n  return customFetch<updateOrderIntegrationResponse>(getUpdateOrderIntegrationUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateOrderIntegrationBody,)\n  }\n);}\n  \n\n/**\n * Soft delete an order integration. If Shopify, webhooks will be unregistered (best effort).\n * @summary Delete an order integration\n */\nexport type deleteOrderIntegrationResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteOrderIntegrationResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteOrderIntegrationResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteOrderIntegrationResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteOrderIntegrationResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteOrderIntegrationResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteOrderIntegrationResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteOrderIntegrationResponseSuccess = (deleteOrderIntegrationResponse204) & {\n  headers: Headers;\n};\nexport type deleteOrderIntegrationResponseError = (deleteOrderIntegrationResponse400 | deleteOrderIntegrationResponse401 | deleteOrderIntegrationResponse403 | deleteOrderIntegrationResponse404 | deleteOrderIntegrationResponse422 | deleteOrderIntegrationResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteOrderIntegrationResponse = (deleteOrderIntegrationResponseSuccess | deleteOrderIntegrationResponseError)\n\nexport const getDeleteOrderIntegrationUrl = (id: string,) => {\n\n\n  \n\n  return `/order-integrations/${id}`\n}\n\nexport const deleteOrderIntegration = async (id: string, options?: RequestInit): Promise<deleteOrderIntegrationResponse> => {\n  \n  return customFetch<deleteOrderIntegrationResponse>(getDeleteOrderIntegrationUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * OrderIntegrations API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  authorizeShopify,\n  createOrderIntegration,\n  deleteOrderIntegration,\n  getOrderIntegrationById,\n  getOrderIntegrations,\n  syncShopifyOrders,\n  updateOrderIntegration,\n} from \"../generated/order-integrations/order-integrations\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const orderIntegrations = {\n  /** @see authorizeShopify */\n  authorizeShopify: wrapMethod(authorizeShopify),\n\n  /** @see syncShopifyOrders */\n  syncShopifyOrders: wrapMethod(syncShopifyOrders),\n\n  /** @see createOrderIntegration */\n  create: wrapMethod(createOrderIntegration),\n\n  /** @see getOrderIntegrations */\n  list: wrapListMethod(getOrderIntegrations),\n\n  /** @see getOrderIntegrationById */\n  get: wrapMethod(getOrderIntegrationById),\n\n  /** @see updateOrderIntegration */\n  update: wrapMethod(updateOrderIntegration),\n\n  /** @see deleteOrderIntegration */\n  delete: wrapMethod(deleteOrderIntegration),\n} as const;\n\nexport type OrderIntegrationsApi = typeof orderIntegrations;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateOrderBody,\n  Error,\n  GetOrders200,\n  GetOrdersParams,\n  Order,\n  UpdateOrderBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new order manually or from an external source.\n * @summary Create a new order\n */\nexport type createOrderResponse201 = {\n  data: Order\n  status: 201\n}\n\nexport type createOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createOrderResponseSuccess = (createOrderResponse201) & {\n  headers: Headers;\n};\nexport type createOrderResponseError = (createOrderResponse400 | createOrderResponse401 | createOrderResponse403 | createOrderResponse404 | createOrderResponse422 | createOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type createOrderResponse = (createOrderResponseSuccess | createOrderResponseError)\n\nexport const getCreateOrderUrl = () => {\n\n\n  \n\n  return `/orders`\n}\n\nexport const createOrder = async (createOrderBody: CreateOrderBody, options?: RequestInit): Promise<createOrderResponse> => {\n  \n  return customFetch<createOrderResponse>(getCreateOrderUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createOrderBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of orders with optional filtering and sorting.\n * @summary List all orders\n */\nexport type getOrdersResponse200 = {\n  data: GetOrders200\n  status: 200\n}\n\nexport type getOrdersResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getOrdersResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getOrdersResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getOrdersResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getOrdersResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getOrdersResponseSuccess = (getOrdersResponse200) & {\n  headers: Headers;\n};\nexport type getOrdersResponseError = (getOrdersResponse400 | getOrdersResponse401 | getOrdersResponse403 | getOrdersResponse404 | getOrdersResponse500) & {\n  headers: Headers;\n};\n\nexport type getOrdersResponse = (getOrdersResponseSuccess | getOrdersResponseError)\n\nexport const getGetOrdersUrl = (params?: GetOrdersParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/orders?${stringifiedParams}` : `/orders`\n}\n\nexport const getOrders = async (params?: GetOrdersParams, options?: RequestInit): Promise<getOrdersResponse> => {\n  \n  return customFetch<getOrdersResponse>(getGetOrdersUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single order by its unique identifier.\n * @summary Get order by ID\n */\nexport type getOrderByIdResponse200 = {\n  data: Order\n  status: 200\n}\n\nexport type getOrderByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getOrderByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getOrderByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getOrderByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getOrderByIdResponseSuccess = (getOrderByIdResponse200) & {\n  headers: Headers;\n};\nexport type getOrderByIdResponseError = (getOrderByIdResponse401 | getOrderByIdResponse403 | getOrderByIdResponse404 | getOrderByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getOrderByIdResponse = (getOrderByIdResponseSuccess | getOrderByIdResponseError)\n\nexport const getGetOrderByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}`\n}\n\nexport const getOrderById = async (id: string, options?: RequestInit): Promise<getOrderByIdResponse> => {\n  \n  return customFetch<getOrderByIdResponse>(getGetOrderByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing order. Only the provided fields will be updated.\n * @summary Update an order\n */\nexport type updateOrderResponse200 = {\n  data: Order\n  status: 200\n}\n\nexport type updateOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateOrderResponseSuccess = (updateOrderResponse200) & {\n  headers: Headers;\n};\nexport type updateOrderResponseError = (updateOrderResponse400 | updateOrderResponse401 | updateOrderResponse403 | updateOrderResponse404 | updateOrderResponse422 | updateOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type updateOrderResponse = (updateOrderResponseSuccess | updateOrderResponseError)\n\nexport const getUpdateOrderUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}`\n}\n\nexport const updateOrder = async (id: string,\n    updateOrderBody: UpdateOrderBody, options?: RequestInit): Promise<updateOrderResponse> => {\n  \n  return customFetch<updateOrderResponse>(getUpdateOrderUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateOrderBody,)\n  }\n);}\n  \n\n/**\n * Soft delete an order by its unique identifier.\n * @summary Delete an order\n */\nexport type deleteOrderResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteOrderResponseSuccess = (deleteOrderResponse204) & {\n  headers: Headers;\n};\nexport type deleteOrderResponseError = (deleteOrderResponse400 | deleteOrderResponse401 | deleteOrderResponse403 | deleteOrderResponse404 | deleteOrderResponse422 | deleteOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteOrderResponse = (deleteOrderResponseSuccess | deleteOrderResponseError)\n\nexport const getDeleteOrderUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}`\n}\n\nexport const deleteOrder = async (id: string, options?: RequestInit): Promise<deleteOrderResponse> => {\n  \n  return customFetch<deleteOrderResponse>(getDeleteOrderUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Process a pending order: resolve or create customer, generate invoice, and optionally record payment.\n * @summary Process an order into an invoice\n */\nexport type processOrderResponse200 = {\n  data: Order\n  status: 200\n}\n\nexport type processOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type processOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type processOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type processOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type processOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type processOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type processOrderResponseSuccess = (processOrderResponse200) & {\n  headers: Headers;\n};\nexport type processOrderResponseError = (processOrderResponse400 | processOrderResponse401 | processOrderResponse403 | processOrderResponse404 | processOrderResponse422 | processOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type processOrderResponse = (processOrderResponseSuccess | processOrderResponseError)\n\nexport const getProcessOrderUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}/process`\n}\n\nexport const processOrder = async (id: string, options?: RequestInit): Promise<processOrderResponse> => {\n  \n  return customFetch<processOrderResponse>(getProcessOrderUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Cancel a pending order. Already invoiced orders cannot be cancelled.\n * @summary Cancel an order\n */\nexport type cancelOrderResponse200 = {\n  data: Order\n  status: 200\n}\n\nexport type cancelOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type cancelOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type cancelOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type cancelOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type cancelOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type cancelOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type cancelOrderResponseSuccess = (cancelOrderResponse200) & {\n  headers: Headers;\n};\nexport type cancelOrderResponseError = (cancelOrderResponse400 | cancelOrderResponse401 | cancelOrderResponse403 | cancelOrderResponse404 | cancelOrderResponse422 | cancelOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type cancelOrderResponse = (cancelOrderResponseSuccess | cancelOrderResponseError)\n\nexport const getCancelOrderUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}/cancel`\n}\n\nexport const cancelOrder = async (id: string, options?: RequestInit): Promise<cancelOrderResponse> => {\n  \n  return customFetch<cancelOrderResponse>(getCancelOrderUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Credit the existing invoice and create a new one with current order items. Only available when order items have changed after initial processing.\n * @summary Reissue an order invoice\n */\nexport type reissueOrderResponse200 = {\n  data: Order\n  status: 200\n}\n\nexport type reissueOrderResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type reissueOrderResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type reissueOrderResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type reissueOrderResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type reissueOrderResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type reissueOrderResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type reissueOrderResponseSuccess = (reissueOrderResponse200) & {\n  headers: Headers;\n};\nexport type reissueOrderResponseError = (reissueOrderResponse400 | reissueOrderResponse401 | reissueOrderResponse403 | reissueOrderResponse404 | reissueOrderResponse422 | reissueOrderResponse500) & {\n  headers: Headers;\n};\n\nexport type reissueOrderResponse = (reissueOrderResponseSuccess | reissueOrderResponseError)\n\nexport const getReissueOrderUrl = (id: string,) => {\n\n\n  \n\n  return `/orders/${id}/reissue`\n}\n\nexport const reissueOrder = async (id: string, options?: RequestInit): Promise<reissueOrderResponse> => {\n  \n  return customFetch<reissueOrderResponse>(getReissueOrderUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Orders API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  cancelOrder,\n  createOrder,\n  deleteOrder,\n  getOrderById,\n  getOrders,\n  processOrder,\n  reissueOrder,\n  updateOrder,\n} from \"../generated/orders/orders\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const orders = {\n  /** @see createOrder */\n  create: wrapMethod(createOrder),\n\n  /** @see getOrders */\n  list: wrapListMethod(getOrders),\n\n  /** @see getOrderById */\n  get: wrapMethod(getOrderById),\n\n  /** @see updateOrder */\n  update: wrapMethod(updateOrder),\n\n  /** @see deleteOrder */\n  delete: wrapMethod(deleteOrder),\n\n  /** @see processOrder */\n  processOrder: wrapMethod(processOrder),\n\n  /** @see cancelOrder */\n  cancelOrder: wrapMethod(cancelOrder),\n\n  /** @see reissueOrder */\n  reissueOrder: wrapMethod(reissueOrder),\n} as const;\n\nexport type OrdersApi = typeof orders;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreatePaymentBody,\n  Error,\n  GetPaymentByIdParams,\n  GetPayments200,\n  GetPaymentsParams,\n  Payment,\n  UpdatePaymentBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Record a payment against an outgoing document or an incoming purchase document.\nAt least one document reference is required.\nFor new direct outgoing payments, prefer `document_id`; the API infers `invoice_id`, `credit_note_id`, or `advance_invoice_id` from the ID prefix.\nLegacy type-specific fields remain supported for backward compatibility.\nFor outgoing type `credit_note`, both `invoice_id` and `credit_note_id` are required.\nFor incoming settlement type `credit_note`, both `incoming_purchase_document_id` and `applied_to_incoming_purchase_document_id` are required.\nDocument payment totals are automatically updated.\nCredit note refunds or settlements cannot exceed the remaining credit balance.\n * @summary Create a new payment\n */\nexport type createPaymentResponse201 = {\n  data: Payment\n  status: 201\n}\n\nexport type createPaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createPaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createPaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createPaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createPaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createPaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createPaymentResponseSuccess = (createPaymentResponse201) & {\n  headers: Headers;\n};\nexport type createPaymentResponseError = (createPaymentResponse400 | createPaymentResponse401 | createPaymentResponse403 | createPaymentResponse404 | createPaymentResponse422 | createPaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type createPaymentResponse = (createPaymentResponseSuccess | createPaymentResponseError)\n\nexport const getCreatePaymentUrl = () => {\n\n\n  \n\n  return `/payments`\n}\n\nexport const createPayment = async (createPaymentBody: CreatePaymentBody, options?: RequestInit): Promise<createPaymentResponse> => {\n  \n  return customFetch<createPaymentResponse>(getCreatePaymentUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createPaymentBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of payments with optional filtering and sorting. Supports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting across both outgoing and incoming purchase document payment references.\n * @summary List all payments\n */\nexport type getPaymentsResponse200 = {\n  data: GetPayments200\n  status: 200\n}\n\nexport type getPaymentsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getPaymentsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getPaymentsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getPaymentsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getPaymentsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getPaymentsResponseSuccess = (getPaymentsResponse200) & {\n  headers: Headers;\n};\nexport type getPaymentsResponseError = (getPaymentsResponse400 | getPaymentsResponse401 | getPaymentsResponse403 | getPaymentsResponse404 | getPaymentsResponse500) & {\n  headers: Headers;\n};\n\nexport type getPaymentsResponse = (getPaymentsResponseSuccess | getPaymentsResponseError)\n\nexport const getGetPaymentsUrl = (params?: GetPaymentsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/payments?${stringifiedParams}` : `/payments`\n}\n\nexport const getPayments = async (params?: GetPaymentsParams, options?: RequestInit): Promise<getPaymentsResponse> => {\n  \n  return customFetch<getPaymentsResponse>(getGetPaymentsUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single payment by its unique identifier. Returns the complete payment details including amount, type, date, and reference information.\n * @summary Get payment by ID\n */\nexport type getPaymentByIdResponse200 = {\n  data: Payment\n  status: 200\n}\n\nexport type getPaymentByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getPaymentByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getPaymentByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getPaymentByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getPaymentByIdResponseSuccess = (getPaymentByIdResponse200) & {\n  headers: Headers;\n};\nexport type getPaymentByIdResponseError = (getPaymentByIdResponse401 | getPaymentByIdResponse403 | getPaymentByIdResponse404 | getPaymentByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getPaymentByIdResponse = (getPaymentByIdResponseSuccess | getPaymentByIdResponseError)\n\nexport const getGetPaymentByIdUrl = (id: string,\n    params?: GetPaymentByIdParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/payments/${id}?${stringifiedParams}` : `/payments/${id}`\n}\n\nexport const getPaymentById = async (id: string,\n    params?: GetPaymentByIdParams, options?: RequestInit): Promise<getPaymentByIdResponse> => {\n  \n  return customFetch<getPaymentByIdResponse>(getGetPaymentByIdUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing payment.\nOnly the provided fields will be updated.\nDocument references cannot be changed.\nIf amount is changed, payment totals on all linked outgoing or incoming documents are automatically recalculated.\nSystem-managed settlement payments cannot be modified.\n * @summary Update a payment\n */\nexport type updatePaymentResponse200 = {\n  data: Payment\n  status: 200\n}\n\nexport type updatePaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updatePaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updatePaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updatePaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updatePaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updatePaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updatePaymentResponseSuccess = (updatePaymentResponse200) & {\n  headers: Headers;\n};\nexport type updatePaymentResponseError = (updatePaymentResponse400 | updatePaymentResponse401 | updatePaymentResponse403 | updatePaymentResponse404 | updatePaymentResponse422 | updatePaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type updatePaymentResponse = (updatePaymentResponseSuccess | updatePaymentResponseError)\n\nexport const getUpdatePaymentUrl = (id: string,) => {\n\n\n  \n\n  return `/payments/${id}`\n}\n\nexport const updatePayment = async (id: string,\n    updatePaymentBody: UpdatePaymentBody, options?: RequestInit): Promise<updatePaymentResponse> => {\n  \n  return customFetch<updatePaymentResponse>(getUpdatePaymentUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updatePaymentBody,)\n  }\n);}\n  \n\n/**\n * Soft delete a payment by its unique identifier. The payment is moved to trash and can be restored later. Payment totals on all linked outgoing or incoming documents are automatically recalculated after deletion. System-managed settlement payments remain immutable.\n * @summary Delete a payment\n */\nexport type deletePaymentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deletePaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deletePaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deletePaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deletePaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deletePaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deletePaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deletePaymentResponseSuccess = (deletePaymentResponse204) & {\n  headers: Headers;\n};\nexport type deletePaymentResponseError = (deletePaymentResponse400 | deletePaymentResponse401 | deletePaymentResponse403 | deletePaymentResponse404 | deletePaymentResponse422 | deletePaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type deletePaymentResponse = (deletePaymentResponseSuccess | deletePaymentResponseError)\n\nexport const getDeletePaymentUrl = (id: string,) => {\n\n\n  \n\n  return `/payments/${id}`\n}\n\nexport const deletePayment = async (id: string, options?: RequestInit): Promise<deletePaymentResponse> => {\n  \n  return customFetch<deletePaymentResponse>(getDeletePaymentUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted payment from the trash. Document payment totals are automatically recalculated.\n * @summary Restore a deleted payment\n */\nexport type restorePaymentResponse200 = {\n  data: Payment\n  status: 200\n}\n\nexport type restorePaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restorePaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restorePaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restorePaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restorePaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restorePaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restorePaymentResponseSuccess = (restorePaymentResponse200) & {\n  headers: Headers;\n};\nexport type restorePaymentResponseError = (restorePaymentResponse400 | restorePaymentResponse401 | restorePaymentResponse403 | restorePaymentResponse404 | restorePaymentResponse422 | restorePaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type restorePaymentResponse = (restorePaymentResponseSuccess | restorePaymentResponseError)\n\nexport const getRestorePaymentUrl = (id: string,) => {\n\n\n  \n\n  return `/payments/${id}/restore`\n}\n\nexport const restorePayment = async (id: string, options?: RequestInit): Promise<restorePaymentResponse> => {\n  \n  return customFetch<restorePaymentResponse>(getRestorePaymentUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted payment. Only payments in the trash can be permanently deleted. Document payment totals are automatically recalculated.\n * @summary Permanently delete a payment\n */\nexport type permanentDeletePaymentResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeletePaymentResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type permanentDeletePaymentResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeletePaymentResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeletePaymentResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeletePaymentResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type permanentDeletePaymentResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeletePaymentResponseSuccess = (permanentDeletePaymentResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeletePaymentResponseError = (permanentDeletePaymentResponse400 | permanentDeletePaymentResponse401 | permanentDeletePaymentResponse403 | permanentDeletePaymentResponse404 | permanentDeletePaymentResponse422 | permanentDeletePaymentResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeletePaymentResponse = (permanentDeletePaymentResponseSuccess | permanentDeletePaymentResponseError)\n\nexport const getPermanentDeletePaymentUrl = (id: string,) => {\n\n\n  \n\n  return `/payments/${id}/permanent`\n}\n\nexport const permanentDeletePayment = async (id: string, options?: RequestInit): Promise<permanentDeletePaymentResponse> => {\n  \n  return customFetch<permanentDeletePaymentResponse>(getPermanentDeletePaymentUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Payments API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createPayment,\n  deletePayment,\n  getPaymentById,\n  getPayments,\n  permanentDeletePayment,\n  restorePayment,\n  updatePayment,\n} from \"../generated/payments/payments\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const payments = {\n  /** @see createPayment */\n  create: wrapMethod(createPayment),\n\n  /** @see getPayments */\n  list: wrapListMethod(getPayments),\n\n  /** @see getPaymentById */\n  get: wrapMethod(getPaymentById),\n\n  /** @see updatePayment */\n  update: wrapMethod(updatePayment),\n\n  /** @see deletePayment */\n  delete: wrapMethod(deletePayment),\n\n  /** @see restorePayment */\n  restorePayment: wrapMethod(restorePayment),\n\n  /** @see permanentDeletePayment */\n  permanentDeletePayment: wrapMethod(permanentDeletePayment),\n} as const;\n\nexport type PaymentsApi = typeof payments;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreatePtAtcudSeriesBody,\n  Error,\n  GetActivePtAtcudSeriesParams,\n  ListPtAtcudSeriesParams,\n  PtAtcudSeries,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a Portugal ATCUD series registration for one PT document type.\n * @summary Create PT ATCUD series\n */\nexport type createPtAtcudSeriesResponse201 = {\n  data: PtAtcudSeries\n  status: 201\n}\n\nexport type createPtAtcudSeriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createPtAtcudSeriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createPtAtcudSeriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createPtAtcudSeriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createPtAtcudSeriesResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createPtAtcudSeriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createPtAtcudSeriesResponseSuccess = (createPtAtcudSeriesResponse201) & {\n  headers: Headers;\n};\nexport type createPtAtcudSeriesResponseError = (createPtAtcudSeriesResponse400 | createPtAtcudSeriesResponse401 | createPtAtcudSeriesResponse403 | createPtAtcudSeriesResponse404 | createPtAtcudSeriesResponse422 | createPtAtcudSeriesResponse500) & {\n  headers: Headers;\n};\n\nexport type createPtAtcudSeriesResponse = (createPtAtcudSeriesResponseSuccess | createPtAtcudSeriesResponseError)\n\nexport const getCreatePtAtcudSeriesUrl = () => {\n\n\n  \n\n  return `/fiscalization/pt/atcud-series`\n}\n\nexport const createPtAtcudSeries = async (createPtAtcudSeriesBody: CreatePtAtcudSeriesBody, options?: RequestInit): Promise<createPtAtcudSeriesResponse> => {\n  \n  return customFetch<createPtAtcudSeriesResponse>(getCreatePtAtcudSeriesUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createPtAtcudSeriesBody,)\n  }\n);}\n  \n\n/**\n * List PT ATCUD series registered on the selected PT entity.\n * @summary List PT ATCUD series\n */\nexport type listPtAtcudSeriesResponse200 = {\n  data: PtAtcudSeries[]\n  status: 200\n}\n\nexport type listPtAtcudSeriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type listPtAtcudSeriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type listPtAtcudSeriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type listPtAtcudSeriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type listPtAtcudSeriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type listPtAtcudSeriesResponseSuccess = (listPtAtcudSeriesResponse200) & {\n  headers: Headers;\n};\nexport type listPtAtcudSeriesResponseError = (listPtAtcudSeriesResponse400 | listPtAtcudSeriesResponse401 | listPtAtcudSeriesResponse403 | listPtAtcudSeriesResponse404 | listPtAtcudSeriesResponse500) & {\n  headers: Headers;\n};\n\nexport type listPtAtcudSeriesResponse = (listPtAtcudSeriesResponseSuccess | listPtAtcudSeriesResponseError)\n\nexport const getListPtAtcudSeriesUrl = (params?: ListPtAtcudSeriesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/fiscalization/pt/atcud-series?${stringifiedParams}` : `/fiscalization/pt/atcud-series`\n}\n\nexport const listPtAtcudSeries = async (params?: ListPtAtcudSeriesParams, options?: RequestInit): Promise<listPtAtcudSeriesResponse> => {\n  \n  return customFetch<listPtAtcudSeriesResponse>(getListPtAtcudSeriesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get one PT ATCUD series by ID.\n * @summary Get PT ATCUD series\n */\nexport type getPtAtcudSeriesResponse200 = {\n  data: PtAtcudSeries\n  status: 200\n}\n\nexport type getPtAtcudSeriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getPtAtcudSeriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getPtAtcudSeriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getPtAtcudSeriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getPtAtcudSeriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getPtAtcudSeriesResponseSuccess = (getPtAtcudSeriesResponse200) & {\n  headers: Headers;\n};\nexport type getPtAtcudSeriesResponseError = (getPtAtcudSeriesResponse400 | getPtAtcudSeriesResponse401 | getPtAtcudSeriesResponse403 | getPtAtcudSeriesResponse404 | getPtAtcudSeriesResponse500) & {\n  headers: Headers;\n};\n\nexport type getPtAtcudSeriesResponse = (getPtAtcudSeriesResponseSuccess | getPtAtcudSeriesResponseError)\n\nexport const getGetPtAtcudSeriesUrl = (id: string,) => {\n\n\n  \n\n  return `/fiscalization/pt/atcud-series/${id}`\n}\n\nexport const getPtAtcudSeries = async (id: string, options?: RequestInit): Promise<getPtAtcudSeriesResponse> => {\n  \n  return customFetch<getPtAtcudSeriesResponse>(getGetPtAtcudSeriesUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Return the current non-manual PT ATCUD series by document type, matching the legacy active-series lookup.\n * @summary Get active PT ATCUD series\n */\nexport type getActivePtAtcudSeriesResponse200 = {\n  data: PtAtcudSeries[]\n  status: 200\n}\n\nexport type getActivePtAtcudSeriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getActivePtAtcudSeriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getActivePtAtcudSeriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getActivePtAtcudSeriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getActivePtAtcudSeriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getActivePtAtcudSeriesResponseSuccess = (getActivePtAtcudSeriesResponse200) & {\n  headers: Headers;\n};\nexport type getActivePtAtcudSeriesResponseError = (getActivePtAtcudSeriesResponse400 | getActivePtAtcudSeriesResponse401 | getActivePtAtcudSeriesResponse403 | getActivePtAtcudSeriesResponse404 | getActivePtAtcudSeriesResponse500) & {\n  headers: Headers;\n};\n\nexport type getActivePtAtcudSeriesResponse = (getActivePtAtcudSeriesResponseSuccess | getActivePtAtcudSeriesResponseError)\n\nexport const getGetActivePtAtcudSeriesUrl = (params?: GetActivePtAtcudSeriesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/fiscalization/pt/atcud-series/active?${stringifiedParams}` : `/fiscalization/pt/atcud-series/active`\n}\n\nexport const getActivePtAtcudSeries = async (params?: GetActivePtAtcudSeriesParams, options?: RequestInit): Promise<getActivePtAtcudSeriesResponse> => {\n  \n  return customFetch<getActivePtAtcudSeriesResponse>(getGetActivePtAtcudSeriesUrl(params),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * PtAtcudSeries API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createPtAtcudSeries,\n  getActivePtAtcudSeries,\n  getPtAtcudSeries,\n  listPtAtcudSeries,\n} from \"../generated/pt-atcud-series/pt-atcud-series\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const ptAtcudSeries = {\n  /** @see createPtAtcudSeries */\n  create: wrapMethod(createPtAtcudSeries),\n\n  /** @see listPtAtcudSeries */\n  list: wrapListMethod(listPtAtcudSeries),\n\n  /** @see getPtAtcudSeries */\n  get: wrapMethod(getPtAtcudSeries),\n\n  /** @see getActivePtAtcudSeries */\n  getActive: wrapMethod(getActivePtAtcudSeries),\n} as const;\n\nexport type PtAtcudSeriesApi = typeof ptAtcudSeries;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  GeneratePtSaftReportParams\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Generate a Portugal SAF-T XML export for the selected PT entity. The response is encoded as windows-1252 for AT/audit compatibility.\n * @summary Generate PT SAF-T report\n */\nexport type generatePtSaftReportResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type generatePtSaftReportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type generatePtSaftReportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type generatePtSaftReportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type generatePtSaftReportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type generatePtSaftReportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type generatePtSaftReportResponseSuccess = (generatePtSaftReportResponse200) & {\n  headers: Headers;\n};\nexport type generatePtSaftReportResponseError = (generatePtSaftReportResponse400 | generatePtSaftReportResponse401 | generatePtSaftReportResponse403 | generatePtSaftReportResponse404 | generatePtSaftReportResponse500) & {\n  headers: Headers;\n};\n\nexport type generatePtSaftReportResponse = (generatePtSaftReportResponseSuccess | generatePtSaftReportResponseError)\n\nexport const getGeneratePtSaftReportUrl = (params?: GeneratePtSaftReportParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/fiscalization/pt/saft/report?${stringifiedParams}` : `/fiscalization/pt/saft/report`\n}\n\nexport const generatePtSaftReport = async (params?: GeneratePtSaftReportParams, options?: RequestInit): Promise<generatePtSaftReportResponse> => {\n  \n  return customFetch<generatePtSaftReportResponse>(getGeneratePtSaftReportUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * PtSafT API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { generatePtSaftReport } from \"../generated/pt-saf-t/pt-saf-t\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const ptSafT = {\n  /** @see generatePtSaftReport */\n  generateReport: wrapMethod(generatePtSaftReport),\n} as const;\n\nexport type PtSafTApi = typeof ptSafT;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateRecurringInvoiceBody,\n  Error,\n  GetRecurringInvoices200,\n  GetRecurringInvoicesParams,\n  RecurringInvoice,\n  UpdateRecurringInvoiceBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new recurring invoice schedule.\nLink an existing invoice as the template and configure the generation frequency.\nThe source invoice's data (items, customer, notes) is used when generating new invoices.\n * @summary Create a recurring invoice\n */\nexport type createRecurringInvoiceResponse201 = {\n  data: RecurringInvoice\n  status: 201\n}\n\nexport type createRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createRecurringInvoiceResponseSuccess = (createRecurringInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type createRecurringInvoiceResponseError = (createRecurringInvoiceResponse400 | createRecurringInvoiceResponse401 | createRecurringInvoiceResponse403 | createRecurringInvoiceResponse404 | createRecurringInvoiceResponse422 | createRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type createRecurringInvoiceResponse = (createRecurringInvoiceResponseSuccess | createRecurringInvoiceResponseError)\n\nexport const getCreateRecurringInvoiceUrl = () => {\n\n\n  \n\n  return `/recurring-invoices`\n}\n\nexport const createRecurringInvoice = async (createRecurringInvoiceBody: CreateRecurringInvoiceBody, options?: RequestInit): Promise<createRecurringInvoiceResponse> => {\n  \n  return customFetch<createRecurringInvoiceResponse>(getCreateRecurringInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createRecurringInvoiceBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of recurring invoice schedules with optional filtering and sorting.\nSupports cursor-based pagination, flexible JSON querying with MongoDB-style operators, full-text search, and sorting.\n * @summary List all recurring invoices\n */\nexport type getRecurringInvoicesResponse200 = {\n  data: GetRecurringInvoices200\n  status: 200\n}\n\nexport type getRecurringInvoicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getRecurringInvoicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getRecurringInvoicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getRecurringInvoicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getRecurringInvoicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getRecurringInvoicesResponseSuccess = (getRecurringInvoicesResponse200) & {\n  headers: Headers;\n};\nexport type getRecurringInvoicesResponseError = (getRecurringInvoicesResponse400 | getRecurringInvoicesResponse401 | getRecurringInvoicesResponse403 | getRecurringInvoicesResponse404 | getRecurringInvoicesResponse500) & {\n  headers: Headers;\n};\n\nexport type getRecurringInvoicesResponse = (getRecurringInvoicesResponseSuccess | getRecurringInvoicesResponseError)\n\nexport const getGetRecurringInvoicesUrl = (params?: GetRecurringInvoicesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/recurring-invoices?${stringifiedParams}` : `/recurring-invoices`\n}\n\nexport const getRecurringInvoices = async (params?: GetRecurringInvoicesParams, options?: RequestInit): Promise<getRecurringInvoicesResponse> => {\n  \n  return customFetch<getRecurringInvoicesResponse>(getGetRecurringInvoicesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single recurring invoice schedule by its unique identifier.\n * @summary Get recurring invoice by ID\n */\nexport type getRecurringInvoiceByIdResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type getRecurringInvoiceByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getRecurringInvoiceByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getRecurringInvoiceByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getRecurringInvoiceByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getRecurringInvoiceByIdResponseSuccess = (getRecurringInvoiceByIdResponse200) & {\n  headers: Headers;\n};\nexport type getRecurringInvoiceByIdResponseError = (getRecurringInvoiceByIdResponse401 | getRecurringInvoiceByIdResponse403 | getRecurringInvoiceByIdResponse404 | getRecurringInvoiceByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getRecurringInvoiceByIdResponse = (getRecurringInvoiceByIdResponseSuccess | getRecurringInvoiceByIdResponseError)\n\nexport const getGetRecurringInvoiceByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}`\n}\n\nexport const getRecurringInvoiceById = async (id: string, options?: RequestInit): Promise<getRecurringInvoiceByIdResponse> => {\n  \n  return customFetch<getRecurringInvoiceByIdResponse>(getGetRecurringInvoiceByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update an existing recurring invoice schedule.\nOnly the provided fields will be updated.\nSchedule changes automatically recalculate the next run date.\n * @summary Update a recurring invoice\n */\nexport type updateRecurringInvoiceResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type updateRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateRecurringInvoiceResponseSuccess = (updateRecurringInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type updateRecurringInvoiceResponseError = (updateRecurringInvoiceResponse400 | updateRecurringInvoiceResponse401 | updateRecurringInvoiceResponse403 | updateRecurringInvoiceResponse404 | updateRecurringInvoiceResponse422 | updateRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type updateRecurringInvoiceResponse = (updateRecurringInvoiceResponseSuccess | updateRecurringInvoiceResponseError)\n\nexport const getUpdateRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}`\n}\n\nexport const updateRecurringInvoice = async (id: string,\n    updateRecurringInvoiceBody: UpdateRecurringInvoiceBody, options?: RequestInit): Promise<updateRecurringInvoiceResponse> => {\n  \n  return customFetch<updateRecurringInvoiceResponse>(getUpdateRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateRecurringInvoiceBody,)\n  }\n);}\n  \n\n/**\n * Soft delete a recurring invoice schedule. The schedule is moved to the trash and can be restored.\n * @summary Delete a recurring invoice\n */\nexport type deleteRecurringInvoiceResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteRecurringInvoiceResponseSuccess = (deleteRecurringInvoiceResponse204) & {\n  headers: Headers;\n};\nexport type deleteRecurringInvoiceResponseError = (deleteRecurringInvoiceResponse400 | deleteRecurringInvoiceResponse401 | deleteRecurringInvoiceResponse403 | deleteRecurringInvoiceResponse404 | deleteRecurringInvoiceResponse422 | deleteRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteRecurringInvoiceResponse = (deleteRecurringInvoiceResponseSuccess | deleteRecurringInvoiceResponseError)\n\nexport const getDeleteRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}`\n}\n\nexport const deleteRecurringInvoice = async (id: string, options?: RequestInit): Promise<deleteRecurringInvoiceResponse> => {\n  \n  return customFetch<deleteRecurringInvoiceResponse>(getDeleteRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted recurring invoice schedule from the trash.\n * @summary Restore a deleted recurring invoice\n */\nexport type restoreRecurringInvoiceResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type restoreRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restoreRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restoreRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restoreRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restoreRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restoreRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restoreRecurringInvoiceResponseSuccess = (restoreRecurringInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type restoreRecurringInvoiceResponseError = (restoreRecurringInvoiceResponse400 | restoreRecurringInvoiceResponse401 | restoreRecurringInvoiceResponse403 | restoreRecurringInvoiceResponse404 | restoreRecurringInvoiceResponse422 | restoreRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type restoreRecurringInvoiceResponse = (restoreRecurringInvoiceResponseSuccess | restoreRecurringInvoiceResponseError)\n\nexport const getRestoreRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}/restore`\n}\n\nexport const restoreRecurringInvoice = async (id: string, options?: RequestInit): Promise<restoreRecurringInvoiceResponse> => {\n  \n  return customFetch<restoreRecurringInvoiceResponse>(getRestoreRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted recurring invoice schedule. Only schedules in the trash can be permanently deleted.\n * @summary Permanently delete a recurring invoice\n */\nexport type permanentDeleteRecurringInvoiceResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeleteRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type permanentDeleteRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeleteRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeleteRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeleteRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type permanentDeleteRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeleteRecurringInvoiceResponseSuccess = (permanentDeleteRecurringInvoiceResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeleteRecurringInvoiceResponseError = (permanentDeleteRecurringInvoiceResponse400 | permanentDeleteRecurringInvoiceResponse401 | permanentDeleteRecurringInvoiceResponse403 | permanentDeleteRecurringInvoiceResponse404 | permanentDeleteRecurringInvoiceResponse422 | permanentDeleteRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeleteRecurringInvoiceResponse = (permanentDeleteRecurringInvoiceResponseSuccess | permanentDeleteRecurringInvoiceResponseError)\n\nexport const getPermanentDeleteRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}/permanent`\n}\n\nexport const permanentDeleteRecurringInvoice = async (id: string, options?: RequestInit): Promise<permanentDeleteRecurringInvoiceResponse> => {\n  \n  return customFetch<permanentDeleteRecurringInvoiceResponse>(getPermanentDeleteRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Pause an active recurring invoice schedule. No invoices will be generated while paused. The next run date is cleared.\n * @summary Pause a recurring invoice\n */\nexport type pauseRecurringInvoiceResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type pauseRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type pauseRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type pauseRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type pauseRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type pauseRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type pauseRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type pauseRecurringInvoiceResponseSuccess = (pauseRecurringInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type pauseRecurringInvoiceResponseError = (pauseRecurringInvoiceResponse400 | pauseRecurringInvoiceResponse401 | pauseRecurringInvoiceResponse403 | pauseRecurringInvoiceResponse404 | pauseRecurringInvoiceResponse422 | pauseRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type pauseRecurringInvoiceResponse = (pauseRecurringInvoiceResponseSuccess | pauseRecurringInvoiceResponseError)\n\nexport const getPauseRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}/pause`\n}\n\nexport const pauseRecurringInvoice = async (id: string, options?: RequestInit): Promise<pauseRecurringInvoiceResponse> => {\n  \n  return customFetch<pauseRecurringInvoiceResponse>(getPauseRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Resume a paused recurring invoice schedule. The next run date is recalculated from the current date.\n * @summary Resume a paused recurring invoice\n */\nexport type resumeRecurringInvoiceResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type resumeRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type resumeRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type resumeRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type resumeRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type resumeRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type resumeRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type resumeRecurringInvoiceResponseSuccess = (resumeRecurringInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type resumeRecurringInvoiceResponseError = (resumeRecurringInvoiceResponse400 | resumeRecurringInvoiceResponse401 | resumeRecurringInvoiceResponse403 | resumeRecurringInvoiceResponse404 | resumeRecurringInvoiceResponse422 | resumeRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type resumeRecurringInvoiceResponse = (resumeRecurringInvoiceResponseSuccess | resumeRecurringInvoiceResponseError)\n\nexport const getResumeRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}/resume`\n}\n\nexport const resumeRecurringInvoice = async (id: string, options?: RequestInit): Promise<resumeRecurringInvoiceResponse> => {\n  \n  return customFetch<resumeRecurringInvoiceResponse>(getResumeRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Manually trigger invoice generation for a recurring invoice schedule. Creates a new invoice immediately using the source document as template.\n * @summary Manually trigger invoice generation\n */\nexport type triggerRecurringInvoiceResponse200 = {\n  data: RecurringInvoice\n  status: 200\n}\n\nexport type triggerRecurringInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type triggerRecurringInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type triggerRecurringInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type triggerRecurringInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type triggerRecurringInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type triggerRecurringInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type triggerRecurringInvoiceResponseSuccess = (triggerRecurringInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type triggerRecurringInvoiceResponseError = (triggerRecurringInvoiceResponse400 | triggerRecurringInvoiceResponse401 | triggerRecurringInvoiceResponse403 | triggerRecurringInvoiceResponse404 | triggerRecurringInvoiceResponse422 | triggerRecurringInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type triggerRecurringInvoiceResponse = (triggerRecurringInvoiceResponseSuccess | triggerRecurringInvoiceResponseError)\n\nexport const getTriggerRecurringInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/recurring-invoices/${id}/trigger`\n}\n\nexport const triggerRecurringInvoice = async (id: string, options?: RequestInit): Promise<triggerRecurringInvoiceResponse> => {\n  \n  return customFetch<triggerRecurringInvoiceResponse>(getTriggerRecurringInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * RecurringInvoices API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createRecurringInvoice,\n  deleteRecurringInvoice,\n  getRecurringInvoiceById,\n  getRecurringInvoices,\n  pauseRecurringInvoice,\n  permanentDeleteRecurringInvoice,\n  restoreRecurringInvoice,\n  resumeRecurringInvoice,\n  triggerRecurringInvoice,\n  updateRecurringInvoice,\n} from \"../generated/recurring-invoices/recurring-invoices\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const recurringInvoices = {\n  /** @see createRecurringInvoice */\n  create: wrapMethod(createRecurringInvoice),\n\n  /** @see getRecurringInvoices */\n  list: wrapListMethod(getRecurringInvoices),\n\n  /** @see getRecurringInvoiceById */\n  get: wrapMethod(getRecurringInvoiceById),\n\n  /** @see updateRecurringInvoice */\n  update: wrapMethod(updateRecurringInvoice),\n\n  /** @see deleteRecurringInvoice */\n  delete: wrapMethod(deleteRecurringInvoice),\n\n  /** @see restoreRecurringInvoice */\n  restoreRecurringInvoice: wrapMethod(restoreRecurringInvoice),\n\n  /** @see permanentDeleteRecurringInvoice */\n  permanentDeleteRecurringInvoice: wrapMethod(permanentDeleteRecurringInvoice),\n\n  /** @see pauseRecurringInvoice */\n  pauseRecurringInvoice: wrapMethod(pauseRecurringInvoice),\n\n  /** @see resumeRecurringInvoice */\n  resumeRecurringInvoice: wrapMethod(resumeRecurringInvoice),\n\n  /** @see triggerRecurringInvoice */\n  triggerRecurringInvoice: wrapMethod(triggerRecurringInvoice),\n} as const;\n\nexport type RecurringInvoicesApi = typeof recurringInvoices;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  StripeAppAuthorizeResponse,\n  StripeAppConnectBody,\n  StripeAppConnection,\n  StripeAppCreateInvoiceBody,\n  StripeAppDisconnect200,\n  StripeAppEntityDisconnect200,\n  StripeAppEntityUpdateSettingsBody,\n  StripeAppInvoice,\n  StripeAppInvoiceList,\n  StripeAppListInvoicesParams,\n  StripeAppLookupInvoiceParams,\n  StripeAppMarketplaceAuthorizeBody,\n  StripeAppOAuthCallbackParams,\n  StripeAppSettings,\n  StripeAppUpdateSettingsBody,\n  StripeAppWebhookResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Generate a state token and redirect URL for the Apollo onboarding flow.\n * @summary Start Stripe App connection\n */\nexport type stripeAppAuthorizeResponse200 = {\n  data: StripeAppAuthorizeResponse\n  status: 200\n}\n\nexport type stripeAppAuthorizeResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppAuthorizeResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppAuthorizeResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppAuthorizeResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppAuthorizeResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppAuthorizeResponseSuccess = (stripeAppAuthorizeResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppAuthorizeResponseError = (stripeAppAuthorizeResponse400 | stripeAppAuthorizeResponse401 | stripeAppAuthorizeResponse403 | stripeAppAuthorizeResponse404 | stripeAppAuthorizeResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppAuthorizeResponse = (stripeAppAuthorizeResponseSuccess | stripeAppAuthorizeResponseError)\n\nexport const getStripeAppAuthorizeUrl = () => {\n\n\n  \n\n  return `/stripe-app/authorize`\n}\n\nexport const stripeAppAuthorize = async ( options?: RequestInit): Promise<stripeAppAuthorizeResponse> => {\n  \n  return customFetch<stripeAppAuthorizeResponse>(getStripeAppAuthorizeUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Handles the OAuth callback from Stripe. Exchanges the authorization code for tokens and redirects to Apollo frontend.\n * @summary OAuth callback from Stripe\n */\nexport type stripeAppOAuthCallbackResponse302 = {\n  data: void\n  status: 302\n}\n\nexport type stripeAppOAuthCallbackResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppOAuthCallbackResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppOAuthCallbackResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppOAuthCallbackResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppOAuthCallbackResponse500 = {\n  data: Error\n  status: 500\n}\n\n;\nexport type stripeAppOAuthCallbackResponseError = (stripeAppOAuthCallbackResponse302 | stripeAppOAuthCallbackResponse400 | stripeAppOAuthCallbackResponse401 | stripeAppOAuthCallbackResponse403 | stripeAppOAuthCallbackResponse404 | stripeAppOAuthCallbackResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppOAuthCallbackResponse = (stripeAppOAuthCallbackResponseError)\n\nexport const getStripeAppOAuthCallbackUrl = (params: StripeAppOAuthCallbackParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/stripe-app/oauth/callback?${stringifiedParams}` : `/stripe-app/oauth/callback`\n}\n\nexport const stripeAppOAuthCallback = async (params: StripeAppOAuthCallbackParams, options?: RequestInit): Promise<stripeAppOAuthCallbackResponse> => {\n  \n  return customFetch<stripeAppOAuthCallbackResponse>(getStripeAppOAuthCallbackUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Receive and process Stripe webhook events for auto-invoice creation.\n * @summary Handle Stripe App webhook\n */\nexport type stripeAppWebhookResponse200 = {\n  data: StripeAppWebhookResponse\n  status: 200\n}\n\nexport type stripeAppWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppWebhookResponseSuccess = (stripeAppWebhookResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppWebhookResponseError = (stripeAppWebhookResponse400 | stripeAppWebhookResponse401 | stripeAppWebhookResponse403 | stripeAppWebhookResponse404 | stripeAppWebhookResponse422 | stripeAppWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppWebhookResponse = (stripeAppWebhookResponseSuccess | stripeAppWebhookResponseError)\n\nexport const getStripeAppWebhookUrl = () => {\n\n\n  \n\n  return `/stripe-app/webhooks`\n}\n\nexport const stripeAppWebhook = async ( options?: RequestInit): Promise<stripeAppWebhookResponse> => {\n  \n  return customFetch<stripeAppWebhookResponse>(getStripeAppWebhookUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Initiate the Stripe OAuth flow from the Apollo web app. Returns a Stripe OAuth URL that the frontend should redirect the user to.\n * @summary Start marketplace OAuth flow\n */\nexport type stripeAppMarketplaceAuthorizeResponse200 = {\n  data: StripeAppAuthorizeResponse\n  status: 200\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppMarketplaceAuthorizeResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppMarketplaceAuthorizeResponseSuccess = (stripeAppMarketplaceAuthorizeResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppMarketplaceAuthorizeResponseError = (stripeAppMarketplaceAuthorizeResponse400 | stripeAppMarketplaceAuthorizeResponse401 | stripeAppMarketplaceAuthorizeResponse403 | stripeAppMarketplaceAuthorizeResponse404 | stripeAppMarketplaceAuthorizeResponse422 | stripeAppMarketplaceAuthorizeResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppMarketplaceAuthorizeResponse = (stripeAppMarketplaceAuthorizeResponseSuccess | stripeAppMarketplaceAuthorizeResponseError)\n\nexport const getStripeAppMarketplaceAuthorizeUrl = () => {\n\n\n  \n\n  return `/stripe-app/marketplace-authorize`\n}\n\nexport const stripeAppMarketplaceAuthorize = async (stripeAppMarketplaceAuthorizeBody: StripeAppMarketplaceAuthorizeBody, options?: RequestInit): Promise<stripeAppMarketplaceAuthorizeResponse> => {\n  \n  return customFetch<stripeAppMarketplaceAuthorizeResponse>(getStripeAppMarketplaceAuthorizeUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      stripeAppMarketplaceAuthorizeBody,)\n  }\n);}\n  \n\n/**\n * Complete the connection between a Stripe account and a Space Invoices entity. Requires bearer authentication (user must be signed in to Apollo).\n * @summary Complete Stripe App connection\n */\nexport type stripeAppConnectResponse201 = {\n  data: StripeAppConnection\n  status: 201\n}\n\nexport type stripeAppConnectResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppConnectResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppConnectResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppConnectResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppConnectResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppConnectResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppConnectResponseSuccess = (stripeAppConnectResponse201) & {\n  headers: Headers;\n};\nexport type stripeAppConnectResponseError = (stripeAppConnectResponse400 | stripeAppConnectResponse401 | stripeAppConnectResponse403 | stripeAppConnectResponse404 | stripeAppConnectResponse422 | stripeAppConnectResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppConnectResponse = (stripeAppConnectResponseSuccess | stripeAppConnectResponseError)\n\nexport const getStripeAppConnectUrl = () => {\n\n\n  \n\n  return `/stripe-app/connect`\n}\n\nexport const stripeAppConnect = async (stripeAppConnectBody: StripeAppConnectBody, options?: RequestInit): Promise<stripeAppConnectResponse> => {\n  \n  return customFetch<stripeAppConnectResponse>(getStripeAppConnectUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      stripeAppConnectBody,)\n  }\n);}\n  \n\n/**\n * Get the current Stripe App connection status and configuration.\n * @summary Get connection status\n */\nexport type stripeAppGetConnectionResponse200 = {\n  data: StripeAppConnection\n  status: 200\n}\n\nexport type stripeAppGetConnectionResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppGetConnectionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppGetConnectionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppGetConnectionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppGetConnectionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppGetConnectionResponseSuccess = (stripeAppGetConnectionResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppGetConnectionResponseError = (stripeAppGetConnectionResponse400 | stripeAppGetConnectionResponse401 | stripeAppGetConnectionResponse403 | stripeAppGetConnectionResponse404 | stripeAppGetConnectionResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppGetConnectionResponse = (stripeAppGetConnectionResponseSuccess | stripeAppGetConnectionResponseError)\n\nexport const getStripeAppGetConnectionUrl = () => {\n\n\n  \n\n  return `/stripe-app/connection`\n}\n\nexport const stripeAppGetConnection = async ( options?: RequestInit): Promise<stripeAppGetConnectionResponse> => {\n  \n  return customFetch<stripeAppGetConnectionResponse>(getStripeAppGetConnectionUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Remove the connection between Stripe and Space Invoices. Deletes the stored API key.\n * @summary Disconnect Stripe App\n */\nexport type stripeAppDisconnectResponse200 = {\n  data: StripeAppDisconnect200\n  status: 200\n}\n\nexport type stripeAppDisconnectResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppDisconnectResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppDisconnectResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppDisconnectResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppDisconnectResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppDisconnectResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppDisconnectResponseSuccess = (stripeAppDisconnectResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppDisconnectResponseError = (stripeAppDisconnectResponse400 | stripeAppDisconnectResponse401 | stripeAppDisconnectResponse403 | stripeAppDisconnectResponse404 | stripeAppDisconnectResponse422 | stripeAppDisconnectResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppDisconnectResponse = (stripeAppDisconnectResponseSuccess | stripeAppDisconnectResponseError)\n\nexport const getStripeAppDisconnectUrl = () => {\n\n\n  \n\n  return `/stripe-app/connection`\n}\n\nexport const stripeAppDisconnect = async ( options?: RequestInit): Promise<stripeAppDisconnectResponse> => {\n  \n  return customFetch<stripeAppDisconnectResponse>(getStripeAppDisconnectUrl(),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Get the auto-invoice configuration for this connection.\n * @summary Get auto-invoice settings\n */\nexport type stripeAppGetSettingsResponse200 = {\n  data: StripeAppSettings\n  status: 200\n}\n\nexport type stripeAppGetSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppGetSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppGetSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppGetSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppGetSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppGetSettingsResponseSuccess = (stripeAppGetSettingsResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppGetSettingsResponseError = (stripeAppGetSettingsResponse400 | stripeAppGetSettingsResponse401 | stripeAppGetSettingsResponse403 | stripeAppGetSettingsResponse404 | stripeAppGetSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppGetSettingsResponse = (stripeAppGetSettingsResponseSuccess | stripeAppGetSettingsResponseError)\n\nexport const getStripeAppGetSettingsUrl = () => {\n\n\n  \n\n  return `/stripe-app/settings`\n}\n\nexport const stripeAppGetSettings = async ( options?: RequestInit): Promise<stripeAppGetSettingsResponse> => {\n  \n  return customFetch<stripeAppGetSettingsResponse>(getStripeAppGetSettingsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update the auto-invoice configuration for this connection.\n * @summary Update auto-invoice settings\n */\nexport type stripeAppUpdateSettingsResponse200 = {\n  data: StripeAppSettings\n  status: 200\n}\n\nexport type stripeAppUpdateSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppUpdateSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppUpdateSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppUpdateSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppUpdateSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppUpdateSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppUpdateSettingsResponseSuccess = (stripeAppUpdateSettingsResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppUpdateSettingsResponseError = (stripeAppUpdateSettingsResponse400 | stripeAppUpdateSettingsResponse401 | stripeAppUpdateSettingsResponse403 | stripeAppUpdateSettingsResponse404 | stripeAppUpdateSettingsResponse422 | stripeAppUpdateSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppUpdateSettingsResponse = (stripeAppUpdateSettingsResponseSuccess | stripeAppUpdateSettingsResponseError)\n\nexport const getStripeAppUpdateSettingsUrl = () => {\n\n\n  \n\n  return `/stripe-app/settings`\n}\n\nexport const stripeAppUpdateSettings = async (stripeAppUpdateSettingsBody: StripeAppUpdateSettingsBody, options?: RequestInit): Promise<stripeAppUpdateSettingsResponse> => {\n  \n  return customFetch<stripeAppUpdateSettingsResponse>(getStripeAppUpdateSettingsUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      stripeAppUpdateSettingsBody,)\n  }\n);}\n  \n\n/**\n * Create a Space Invoices invoice from a Stripe object ID. The backend fetches the full object from Stripe API and extracts customer, line items, and tax data.\n * @summary Create invoice from Stripe object\n */\nexport type stripeAppCreateInvoiceResponse201 = {\n  data: StripeAppInvoice\n  status: 201\n}\n\nexport type stripeAppCreateInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppCreateInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppCreateInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppCreateInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppCreateInvoiceResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppCreateInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppCreateInvoiceResponseSuccess = (stripeAppCreateInvoiceResponse201) & {\n  headers: Headers;\n};\nexport type stripeAppCreateInvoiceResponseError = (stripeAppCreateInvoiceResponse400 | stripeAppCreateInvoiceResponse401 | stripeAppCreateInvoiceResponse403 | stripeAppCreateInvoiceResponse404 | stripeAppCreateInvoiceResponse422 | stripeAppCreateInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppCreateInvoiceResponse = (stripeAppCreateInvoiceResponseSuccess | stripeAppCreateInvoiceResponseError)\n\nexport const getStripeAppCreateInvoiceUrl = () => {\n\n\n  \n\n  return `/stripe-app/invoices`\n}\n\nexport const stripeAppCreateInvoice = async (stripeAppCreateInvoiceBody: StripeAppCreateInvoiceBody, options?: RequestInit): Promise<stripeAppCreateInvoiceResponse> => {\n  \n  return customFetch<stripeAppCreateInvoiceResponse>(getStripeAppCreateInvoiceUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      stripeAppCreateInvoiceBody,)\n  }\n);}\n  \n\n/**\n * List recent invoices for the connected entity.\n * @summary List invoices\n */\nexport type stripeAppListInvoicesResponse200 = {\n  data: StripeAppInvoiceList\n  status: 200\n}\n\nexport type stripeAppListInvoicesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppListInvoicesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppListInvoicesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppListInvoicesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppListInvoicesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppListInvoicesResponseSuccess = (stripeAppListInvoicesResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppListInvoicesResponseError = (stripeAppListInvoicesResponse400 | stripeAppListInvoicesResponse401 | stripeAppListInvoicesResponse403 | stripeAppListInvoicesResponse404 | stripeAppListInvoicesResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppListInvoicesResponse = (stripeAppListInvoicesResponseSuccess | stripeAppListInvoicesResponseError)\n\nexport const getStripeAppListInvoicesUrl = (params?: StripeAppListInvoicesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/stripe-app/invoices?${stringifiedParams}` : `/stripe-app/invoices`\n}\n\nexport const stripeAppListInvoices = async (params?: StripeAppListInvoicesParams, options?: RequestInit): Promise<stripeAppListInvoicesResponse> => {\n  \n  return customFetch<stripeAppListInvoicesResponse>(getStripeAppListInvoicesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Find an Apollo invoice linked to a Stripe object (invoice or payment intent) via auto-invoicing events.\n * @summary Look up invoice by Stripe object ID\n */\nexport type stripeAppLookupInvoiceResponse200 = {\n  data: StripeAppInvoice\n  status: 200\n}\n\nexport type stripeAppLookupInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppLookupInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppLookupInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppLookupInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppLookupInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppLookupInvoiceResponseSuccess = (stripeAppLookupInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppLookupInvoiceResponseError = (stripeAppLookupInvoiceResponse400 | stripeAppLookupInvoiceResponse401 | stripeAppLookupInvoiceResponse403 | stripeAppLookupInvoiceResponse404 | stripeAppLookupInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppLookupInvoiceResponse = (stripeAppLookupInvoiceResponseSuccess | stripeAppLookupInvoiceResponseError)\n\nexport const getStripeAppLookupInvoiceUrl = (params: StripeAppLookupInvoiceParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/stripe-app/invoices/lookup?${stringifiedParams}` : `/stripe-app/invoices/lookup`\n}\n\nexport const stripeAppLookupInvoice = async (params: StripeAppLookupInvoiceParams, options?: RequestInit): Promise<stripeAppLookupInvoiceResponse> => {\n  \n  return customFetch<stripeAppLookupInvoiceResponse>(getStripeAppLookupInvoiceUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get a specific invoice with public link and compliance/fiscalization status.\n * @summary Get invoice detail\n */\nexport type stripeAppGetInvoiceResponse200 = {\n  data: StripeAppInvoice\n  status: 200\n}\n\nexport type stripeAppGetInvoiceResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppGetInvoiceResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppGetInvoiceResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppGetInvoiceResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppGetInvoiceResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppGetInvoiceResponseSuccess = (stripeAppGetInvoiceResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppGetInvoiceResponseError = (stripeAppGetInvoiceResponse400 | stripeAppGetInvoiceResponse401 | stripeAppGetInvoiceResponse403 | stripeAppGetInvoiceResponse404 | stripeAppGetInvoiceResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppGetInvoiceResponse = (stripeAppGetInvoiceResponseSuccess | stripeAppGetInvoiceResponseError)\n\nexport const getStripeAppGetInvoiceUrl = (id: string,) => {\n\n\n  \n\n  return `/stripe-app/invoices/${id}`\n}\n\nexport const stripeAppGetInvoice = async (id: string, options?: RequestInit): Promise<stripeAppGetInvoiceResponse> => {\n  \n  return customFetch<stripeAppGetInvoiceResponse>(getStripeAppGetInvoiceUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Get the Stripe App connection status for the current entity. Returns 404 when not connected.\n * @summary Get entity Stripe connection\n */\nexport type stripeAppEntityGetConnectionResponse200 = {\n  data: StripeAppConnection\n  status: 200\n}\n\nexport type stripeAppEntityGetConnectionResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppEntityGetConnectionResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppEntityGetConnectionResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppEntityGetConnectionResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppEntityGetConnectionResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppEntityGetConnectionResponseSuccess = (stripeAppEntityGetConnectionResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppEntityGetConnectionResponseError = (stripeAppEntityGetConnectionResponse400 | stripeAppEntityGetConnectionResponse401 | stripeAppEntityGetConnectionResponse403 | stripeAppEntityGetConnectionResponse404 | stripeAppEntityGetConnectionResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppEntityGetConnectionResponse = (stripeAppEntityGetConnectionResponseSuccess | stripeAppEntityGetConnectionResponseError)\n\nexport const getStripeAppEntityGetConnectionUrl = () => {\n\n\n  \n\n  return `/stripe-app/entity-connection`\n}\n\nexport const stripeAppEntityGetConnection = async ( options?: RequestInit): Promise<stripeAppEntityGetConnectionResponse> => {\n  \n  return customFetch<stripeAppEntityGetConnectionResponse>(getStripeAppEntityGetConnectionUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Remove the Stripe App connection for the current entity.\n * @summary Disconnect entity Stripe connection\n */\nexport type stripeAppEntityDisconnectResponse200 = {\n  data: StripeAppEntityDisconnect200\n  status: 200\n}\n\nexport type stripeAppEntityDisconnectResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppEntityDisconnectResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppEntityDisconnectResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppEntityDisconnectResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppEntityDisconnectResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppEntityDisconnectResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppEntityDisconnectResponseSuccess = (stripeAppEntityDisconnectResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppEntityDisconnectResponseError = (stripeAppEntityDisconnectResponse400 | stripeAppEntityDisconnectResponse401 | stripeAppEntityDisconnectResponse403 | stripeAppEntityDisconnectResponse404 | stripeAppEntityDisconnectResponse422 | stripeAppEntityDisconnectResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppEntityDisconnectResponse = (stripeAppEntityDisconnectResponseSuccess | stripeAppEntityDisconnectResponseError)\n\nexport const getStripeAppEntityDisconnectUrl = () => {\n\n\n  \n\n  return `/stripe-app/entity-connection`\n}\n\nexport const stripeAppEntityDisconnect = async ( options?: RequestInit): Promise<stripeAppEntityDisconnectResponse> => {\n  \n  return customFetch<stripeAppEntityDisconnectResponse>(getStripeAppEntityDisconnectUrl(),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Get auto-invoice settings for the current entity's Stripe App connection.\n * @summary Get entity Stripe settings\n */\nexport type stripeAppEntityGetSettingsResponse200 = {\n  data: StripeAppSettings\n  status: 200\n}\n\nexport type stripeAppEntityGetSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppEntityGetSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppEntityGetSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppEntityGetSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppEntityGetSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppEntityGetSettingsResponseSuccess = (stripeAppEntityGetSettingsResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppEntityGetSettingsResponseError = (stripeAppEntityGetSettingsResponse400 | stripeAppEntityGetSettingsResponse401 | stripeAppEntityGetSettingsResponse403 | stripeAppEntityGetSettingsResponse404 | stripeAppEntityGetSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppEntityGetSettingsResponse = (stripeAppEntityGetSettingsResponseSuccess | stripeAppEntityGetSettingsResponseError)\n\nexport const getStripeAppEntityGetSettingsUrl = () => {\n\n\n  \n\n  return `/stripe-app/entity-settings`\n}\n\nexport const stripeAppEntityGetSettings = async ( options?: RequestInit): Promise<stripeAppEntityGetSettingsResponse> => {\n  \n  return customFetch<stripeAppEntityGetSettingsResponse>(getStripeAppEntityGetSettingsUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update auto-invoice settings for the current entity's Stripe App connection.\n * @summary Update entity Stripe settings\n */\nexport type stripeAppEntityUpdateSettingsResponse200 = {\n  data: StripeAppSettings\n  status: 200\n}\n\nexport type stripeAppEntityUpdateSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type stripeAppEntityUpdateSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type stripeAppEntityUpdateSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type stripeAppEntityUpdateSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type stripeAppEntityUpdateSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type stripeAppEntityUpdateSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type stripeAppEntityUpdateSettingsResponseSuccess = (stripeAppEntityUpdateSettingsResponse200) & {\n  headers: Headers;\n};\nexport type stripeAppEntityUpdateSettingsResponseError = (stripeAppEntityUpdateSettingsResponse400 | stripeAppEntityUpdateSettingsResponse401 | stripeAppEntityUpdateSettingsResponse403 | stripeAppEntityUpdateSettingsResponse404 | stripeAppEntityUpdateSettingsResponse422 | stripeAppEntityUpdateSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type stripeAppEntityUpdateSettingsResponse = (stripeAppEntityUpdateSettingsResponseSuccess | stripeAppEntityUpdateSettingsResponseError)\n\nexport const getStripeAppEntityUpdateSettingsUrl = () => {\n\n\n  \n\n  return `/stripe-app/entity-settings`\n}\n\nexport const stripeAppEntityUpdateSettings = async (stripeAppEntityUpdateSettingsBody: StripeAppEntityUpdateSettingsBody, options?: RequestInit): Promise<stripeAppEntityUpdateSettingsResponse> => {\n  \n  return customFetch<stripeAppEntityUpdateSettingsResponse>(getStripeAppEntityUpdateSettingsUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      stripeAppEntityUpdateSettingsBody,)\n  }\n);}\n  \n\n",
    "/**\n * StripeApp API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  stripeAppAuthorize,\n  stripeAppConnect,\n  stripeAppCreateInvoice,\n  stripeAppDisconnect,\n  stripeAppEntityDisconnect,\n  stripeAppEntityGetConnection,\n  stripeAppEntityGetSettings,\n  stripeAppEntityUpdateSettings,\n  stripeAppGetConnection,\n  stripeAppGetInvoice,\n  stripeAppGetSettings,\n  stripeAppListInvoices,\n  stripeAppLookupInvoice,\n  stripeAppMarketplaceAuthorize,\n  stripeAppOAuthCallback,\n  stripeAppUpdateSettings,\n  stripeAppWebhook,\n} from \"../generated/stripe-app/stripe-app\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const stripeApp = {\n  /** @see stripeAppAuthorize */\n  stripeAppAuthorize: wrapMethod(stripeAppAuthorize),\n\n  /** @see stripeAppOAuthCallback */\n  stripeAppOAuthCallback: wrapMethod(stripeAppOAuthCallback),\n\n  /** @see stripeAppWebhook */\n  stripeAppWebhook: wrapMethod(stripeAppWebhook),\n\n  /** @see stripeAppMarketplaceAuthorize */\n  stripeAppMarketplaceAuthorize: wrapMethod(stripeAppMarketplaceAuthorize),\n\n  /** @see stripeAppConnect */\n  stripeAppConnect: wrapMethod(stripeAppConnect),\n\n  /** @see stripeAppGetConnection */\n  stripeAppGetConnection: wrapMethod(stripeAppGetConnection),\n\n  /** @see stripeAppDisconnect */\n  stripeAppDisconnect: wrapMethod(stripeAppDisconnect),\n\n  /** @see stripeAppGetSettings */\n  stripeAppGetSettings: wrapMethod(stripeAppGetSettings),\n\n  /** @see stripeAppUpdateSettings */\n  stripeAppUpdateSettings: wrapMethod(stripeAppUpdateSettings),\n\n  /** @see stripeAppCreateInvoice */\n  stripeAppCreateInvoice: wrapMethod(stripeAppCreateInvoice),\n\n  /** @see stripeAppListInvoices */\n  stripeAppListInvoices: wrapMethod(stripeAppListInvoices),\n\n  /** @see stripeAppLookupInvoice */\n  stripeAppLookupInvoice: wrapMethod(stripeAppLookupInvoice),\n\n  /** @see stripeAppGetInvoice */\n  stripeAppGetInvoice: wrapMethod(stripeAppGetInvoice),\n\n  /** @see stripeAppEntityGetConnection */\n  stripeAppEntityGetConnection: wrapMethod(stripeAppEntityGetConnection),\n\n  /** @see stripeAppEntityDisconnect */\n  stripeAppEntityDisconnect: wrapMethod(stripeAppEntityDisconnect),\n\n  /** @see stripeAppEntityGetSettings */\n  stripeAppEntityGetSettings: wrapMethod(stripeAppEntityGetSettings),\n\n  /** @see stripeAppEntityUpdateSettings */\n  stripeAppEntityUpdateSettings: wrapMethod(stripeAppEntityUpdateSettings),\n} as const;\n\nexport type StripeAppApi = typeof stripeApp;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateSupplierBody,\n  Error,\n  GetSuppliers200,\n  GetSuppliersParams,\n  Supplier,\n  UpdateSupplierBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * @summary Create supplier\n */\nexport type createSupplierResponse201 = {\n  data: Supplier\n  status: 201\n}\n\nexport type createSupplierResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createSupplierResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createSupplierResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createSupplierResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createSupplierResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createSupplierResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createSupplierResponseSuccess = (createSupplierResponse201) & {\n  headers: Headers;\n};\nexport type createSupplierResponseError = (createSupplierResponse400 | createSupplierResponse401 | createSupplierResponse403 | createSupplierResponse404 | createSupplierResponse422 | createSupplierResponse500) & {\n  headers: Headers;\n};\n\nexport type createSupplierResponse = (createSupplierResponseSuccess | createSupplierResponseError)\n\nexport const getCreateSupplierUrl = () => {\n\n\n  \n\n  return `/suppliers`\n}\n\nexport const createSupplier = async (createSupplierBody: CreateSupplierBody, options?: RequestInit): Promise<createSupplierResponse> => {\n  \n  return customFetch<createSupplierResponse>(getCreateSupplierUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createSupplierBody,)\n  }\n);}\n  \n\n/**\n * @summary List suppliers\n */\nexport type getSuppliersResponse200 = {\n  data: GetSuppliers200\n  status: 200\n}\n\nexport type getSuppliersResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getSuppliersResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getSuppliersResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getSuppliersResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getSuppliersResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getSuppliersResponseSuccess = (getSuppliersResponse200) & {\n  headers: Headers;\n};\nexport type getSuppliersResponseError = (getSuppliersResponse400 | getSuppliersResponse401 | getSuppliersResponse403 | getSuppliersResponse404 | getSuppliersResponse500) & {\n  headers: Headers;\n};\n\nexport type getSuppliersResponse = (getSuppliersResponseSuccess | getSuppliersResponseError)\n\nexport const getGetSuppliersUrl = (params?: GetSuppliersParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/suppliers?${stringifiedParams}` : `/suppliers`\n}\n\nexport const getSuppliers = async (params?: GetSuppliersParams, options?: RequestInit): Promise<getSuppliersResponse> => {\n  \n  return customFetch<getSuppliersResponse>(getGetSuppliersUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Get supplier by ID\n */\nexport type getSupplierByIdResponse200 = {\n  data: Supplier\n  status: 200\n}\n\nexport type getSupplierByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getSupplierByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getSupplierByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getSupplierByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getSupplierByIdResponseSuccess = (getSupplierByIdResponse200) & {\n  headers: Headers;\n};\nexport type getSupplierByIdResponseError = (getSupplierByIdResponse401 | getSupplierByIdResponse403 | getSupplierByIdResponse404 | getSupplierByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getSupplierByIdResponse = (getSupplierByIdResponseSuccess | getSupplierByIdResponseError)\n\nexport const getGetSupplierByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/suppliers/${id}`\n}\n\nexport const getSupplierById = async (id: string, options?: RequestInit): Promise<getSupplierByIdResponse> => {\n  \n  return customFetch<getSupplierByIdResponse>(getGetSupplierByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * @summary Update supplier\n */\nexport type updateSupplierResponse200 = {\n  data: Supplier\n  status: 200\n}\n\nexport type updateSupplierResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateSupplierResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateSupplierResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateSupplierResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateSupplierResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateSupplierResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateSupplierResponseSuccess = (updateSupplierResponse200) & {\n  headers: Headers;\n};\nexport type updateSupplierResponseError = (updateSupplierResponse400 | updateSupplierResponse401 | updateSupplierResponse403 | updateSupplierResponse404 | updateSupplierResponse422 | updateSupplierResponse500) & {\n  headers: Headers;\n};\n\nexport type updateSupplierResponse = (updateSupplierResponseSuccess | updateSupplierResponseError)\n\nexport const getUpdateSupplierUrl = (id: string,) => {\n\n\n  \n\n  return `/suppliers/${id}`\n}\n\nexport const updateSupplier = async (id: string,\n    updateSupplierBody: UpdateSupplierBody, options?: RequestInit): Promise<updateSupplierResponse> => {\n  \n  return customFetch<updateSupplierResponse>(getUpdateSupplierUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateSupplierBody,)\n  }\n);}\n  \n\n",
    "/**\n * Suppliers API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { createSupplier, getSupplierById, getSuppliers, updateSupplier } from \"../generated/suppliers/suppliers\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const suppliers = {\n  /** @see createSupplier */\n  create: wrapMethod(createSupplier),\n\n  /** @see getSuppliers */\n  list: wrapListMethod(getSuppliers),\n\n  /** @see getSupplierById */\n  get: wrapMethod(getSupplierById),\n\n  /** @see updateSupplier */\n  update: wrapMethod(updateSupplier),\n} as const;\n\nexport type SuppliersApi = typeof suppliers;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  ExportSloveniaVodXmlBody,\n  ExportSloveniaYearlyNormiraniReportBody,\n  GenerateKirExportParams,\n  GetSloveniaTaxProfile200,\n  ReviewSloveniaYearlyNormiraniReport200,\n  ReviewSloveniaYearlyNormiraniReportBody,\n  UpdateSloveniaTaxProfile200,\n  UpdateSloveniaTaxProfileBody\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * \nGenerate a KIR (Knjiga izdanih računov / Evidenca obračunanega DDV) export file for FURS.\n\nThis export contains all issued invoices and credit notes for the specified period in FURS-compliant XML format,\npackaged in a ZIP archive ready for upload to eDavki.\n\n**Period Selection:**\n- Use `month` for monthly exports (e.g., month=1 for January)\n- Use `quarter` for quarterly exports (e.g., quarter=1 for Q1)\n- Cannot use both month and quarter\n\n**Transaction Type Mapping:**\n- Domestic sales → P7 (taxable supplies) + P14/P15/P16 (VAT by rate)\n- Intra-EU B2B → P10 (reverse charge)\n- Intra-EU B2C → P7 + P14/P15/P16 (standard VAT)\n- Export (third country) → P27 (export exemption)\n\n**Credit Notes:**\n- Included with negative amounts as per FURS specification\n- Same field mapping as invoices, but amounts are negated\n\n**Important:**\n- Voided documents are included with zero amounts\n- Entity must have a valid Slovenian tax number (SI prefix is automatically removed)\n\n * @summary Generate KIR export (Issued Invoices Ledger)\n */\nexport type generateKirExportResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type generateKirExportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type generateKirExportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type generateKirExportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type generateKirExportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type generateKirExportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type generateKirExportResponseSuccess = (generateKirExportResponse200) & {\n  headers: Headers;\n};\nexport type generateKirExportResponseError = (generateKirExportResponse400 | generateKirExportResponse401 | generateKirExportResponse403 | generateKirExportResponse404 | generateKirExportResponse500) & {\n  headers: Headers;\n};\n\nexport type generateKirExportResponse = (generateKirExportResponseSuccess | generateKirExportResponseError)\n\nexport const getGenerateKirExportUrl = (params: GenerateKirExportParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/tax-reports/kir?${stringifiedParams}` : `/tax-reports/kir`\n}\n\nexport const generateKirExport = async (params: GenerateKirExportParams, options?: RequestInit): Promise<generateKirExportResponse> => {\n  \n  return customFetch<generateKirExportResponse>(getGenerateKirExportUrl(params),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve the normalized Slovenia-specific tax profile stored on the entity, including inferred business form and yearly-export support status.\n * @summary Get Slovenia yearly tax profile\n */\nexport type getSloveniaTaxProfileResponse200 = {\n  data: GetSloveniaTaxProfile200\n  status: 200\n}\n\nexport type getSloveniaTaxProfileResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getSloveniaTaxProfileResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getSloveniaTaxProfileResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getSloveniaTaxProfileResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getSloveniaTaxProfileResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getSloveniaTaxProfileResponseSuccess = (getSloveniaTaxProfileResponse200) & {\n  headers: Headers;\n};\nexport type getSloveniaTaxProfileResponseError = (getSloveniaTaxProfileResponse400 | getSloveniaTaxProfileResponse401 | getSloveniaTaxProfileResponse403 | getSloveniaTaxProfileResponse404 | getSloveniaTaxProfileResponse500) & {\n  headers: Headers;\n};\n\nexport type getSloveniaTaxProfileResponse = (getSloveniaTaxProfileResponseSuccess | getSloveniaTaxProfileResponseError)\n\nexport const getGetSloveniaTaxProfileUrl = () => {\n\n\n  \n\n  return `/tax-reports/si/profile`\n}\n\nexport const getSloveniaTaxProfile = async ( options?: RequestInit): Promise<getSloveniaTaxProfileResponse> => {\n  \n  return customFetch<getSloveniaTaxProfileResponse>(getGetSloveniaTaxProfileUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update the Slovenia-specific tax profile stored on the entity. Unsupported profiles are stored for future use but remain blocked for yearly export.\n * @summary Update Slovenia yearly tax profile\n */\nexport type updateSloveniaTaxProfileResponse200 = {\n  data: UpdateSloveniaTaxProfile200\n  status: 200\n}\n\nexport type updateSloveniaTaxProfileResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateSloveniaTaxProfileResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateSloveniaTaxProfileResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateSloveniaTaxProfileResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateSloveniaTaxProfileResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateSloveniaTaxProfileResponseSuccess = (updateSloveniaTaxProfileResponse200) & {\n  headers: Headers;\n};\nexport type updateSloveniaTaxProfileResponseError = (updateSloveniaTaxProfileResponse400 | updateSloveniaTaxProfileResponse401 | updateSloveniaTaxProfileResponse403 | updateSloveniaTaxProfileResponse404 | updateSloveniaTaxProfileResponse500) & {\n  headers: Headers;\n};\n\nexport type updateSloveniaTaxProfileResponse = (updateSloveniaTaxProfileResponseSuccess | updateSloveniaTaxProfileResponseError)\n\nexport const getUpdateSloveniaTaxProfileUrl = () => {\n\n\n  \n\n  return `/tax-reports/si/profile`\n}\n\nexport const updateSloveniaTaxProfile = async (updateSloveniaTaxProfileBody: UpdateSloveniaTaxProfileBody, options?: RequestInit): Promise<updateSloveniaTaxProfileResponse> => {\n  \n  return customFetch<updateSloveniaTaxProfileResponse>(getUpdateSloveniaTaxProfileUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateSloveniaTaxProfileBody,)\n  }\n);}\n  \n\n/**\n * Build a review draft for the yearly Slovenia DDD-DDD filing for the supported resident normirani s.p. path.\n * @summary Review yearly Slovenia normirani filing\n */\nexport type reviewSloveniaYearlyNormiraniReportResponse200 = {\n  data: ReviewSloveniaYearlyNormiraniReport200\n  status: 200\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type reviewSloveniaYearlyNormiraniReportResponseSuccess = (reviewSloveniaYearlyNormiraniReportResponse200) & {\n  headers: Headers;\n};\nexport type reviewSloveniaYearlyNormiraniReportResponseError = (reviewSloveniaYearlyNormiraniReportResponse400 | reviewSloveniaYearlyNormiraniReportResponse401 | reviewSloveniaYearlyNormiraniReportResponse403 | reviewSloveniaYearlyNormiraniReportResponse404 | reviewSloveniaYearlyNormiraniReportResponse500) & {\n  headers: Headers;\n};\n\nexport type reviewSloveniaYearlyNormiraniReportResponse = (reviewSloveniaYearlyNormiraniReportResponseSuccess | reviewSloveniaYearlyNormiraniReportResponseError)\n\nexport const getReviewSloveniaYearlyNormiraniReportUrl = () => {\n\n\n  \n\n  return `/tax-reports/si/yearly/normirani/review`\n}\n\nexport const reviewSloveniaYearlyNormiraniReport = async (reviewSloveniaYearlyNormiraniReportBody: ReviewSloveniaYearlyNormiraniReportBody, options?: RequestInit): Promise<reviewSloveniaYearlyNormiraniReportResponse> => {\n  \n  return customFetch<reviewSloveniaYearlyNormiraniReportResponse>(getReviewSloveniaYearlyNormiraniReportUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      reviewSloveniaYearlyNormiraniReportBody,)\n  }\n);}\n  \n\n/**\n * Generate a DDD-DDD XML file for the supported resident normirani s.p. path after the yearly review values are confirmed.\n * @summary Export yearly Slovenia normirani XML\n */\nexport type exportSloveniaYearlyNormiraniReportResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type exportSloveniaYearlyNormiraniReportResponseSuccess = (exportSloveniaYearlyNormiraniReportResponse200) & {\n  headers: Headers;\n};\nexport type exportSloveniaYearlyNormiraniReportResponseError = (exportSloveniaYearlyNormiraniReportResponse400 | exportSloveniaYearlyNormiraniReportResponse401 | exportSloveniaYearlyNormiraniReportResponse403 | exportSloveniaYearlyNormiraniReportResponse404 | exportSloveniaYearlyNormiraniReportResponse500) & {\n  headers: Headers;\n};\n\nexport type exportSloveniaYearlyNormiraniReportResponse = (exportSloveniaYearlyNormiraniReportResponseSuccess | exportSloveniaYearlyNormiraniReportResponseError)\n\nexport const getExportSloveniaYearlyNormiraniReportUrl = () => {\n\n\n  \n\n  return `/tax-reports/si/yearly/normirani/export`\n}\n\nexport const exportSloveniaYearlyNormiraniReport = async (exportSloveniaYearlyNormiraniReportBody: ExportSloveniaYearlyNormiraniReportBody, options?: RequestInit): Promise<exportSloveniaYearlyNormiraniReportResponse> => {\n  \n  return customFetch<exportSloveniaYearlyNormiraniReportResponse>(getExportSloveniaYearlyNormiraniReportUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      exportSloveniaYearlyNormiraniReportBody,)\n  }\n);}\n  \n\n/**\n * Generate a legacy-compatible Slovenian VOD ZIP export for issued documents. The first release contains only VOD_izdani.xml.\n * @summary Export Slovenia VOD XML ZIP\n */\nexport type exportSloveniaVodXmlResponse200 = {\n  data: Blob\n  status: 200\n}\n\nexport type exportSloveniaVodXmlResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type exportSloveniaVodXmlResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type exportSloveniaVodXmlResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type exportSloveniaVodXmlResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type exportSloveniaVodXmlResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type exportSloveniaVodXmlResponseSuccess = (exportSloveniaVodXmlResponse200) & {\n  headers: Headers;\n};\nexport type exportSloveniaVodXmlResponseError = (exportSloveniaVodXmlResponse400 | exportSloveniaVodXmlResponse401 | exportSloveniaVodXmlResponse403 | exportSloveniaVodXmlResponse404 | exportSloveniaVodXmlResponse500) & {\n  headers: Headers;\n};\n\nexport type exportSloveniaVodXmlResponse = (exportSloveniaVodXmlResponseSuccess | exportSloveniaVodXmlResponseError)\n\nexport const getExportSloveniaVodXmlUrl = () => {\n\n\n  \n\n  return `/tax-reports/si/accounting/vod/export`\n}\n\nexport const exportSloveniaVodXml = async (exportSloveniaVodXmlBody: ExportSloveniaVodXmlBody, options?: RequestInit): Promise<exportSloveniaVodXmlResponse> => {\n  \n  return customFetch<exportSloveniaVodXmlResponse>(getExportSloveniaVodXmlUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      exportSloveniaVodXmlBody,)\n  }\n);}\n  \n\n",
    "/**\n * TaxReports API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  exportSloveniaVodXml,\n  exportSloveniaYearlyNormiraniReport,\n  generateKirExport,\n  getSloveniaTaxProfile,\n  reviewSloveniaYearlyNormiraniReport,\n  updateSloveniaTaxProfile,\n} from \"../generated/tax-reports/tax-reports\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const taxReports = {\n  /** @see generateKirExport */\n  generateKirExport: wrapMethod(generateKirExport),\n\n  /** @see getSloveniaTaxProfile */\n  getSloveniaTaxProfile: wrapMethod(getSloveniaTaxProfile),\n\n  /** @see updateSloveniaTaxProfile */\n  updateSloveniaTaxProfile: wrapMethod(updateSloveniaTaxProfile),\n\n  /** @see reviewSloveniaYearlyNormiraniReport */\n  reviewSloveniaYearlyNormiraniReport: wrapMethod(reviewSloveniaYearlyNormiraniReport),\n\n  /** @see exportSloveniaYearlyNormiraniReport */\n  exportSloveniaYearlyNormiraniReport: wrapMethod(exportSloveniaYearlyNormiraniReport),\n\n  /** @see exportSloveniaVodXml */\n  exportSloveniaVodXml: wrapMethod(exportSloveniaVodXml),\n} as const;\n\nexport type TaxReportsApi = typeof taxReports;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateTaxBody,\n  Error,\n  GetTaxes200,\n  GetTaxesParams,\n  ReplaceTaxBody,\n  TaxResponse,\n  UpdateTaxBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a new tax with one or more tax rates.\nEach rate can specify a `valid_from` date to track historical changes (defaults to 1970-01-01 if not provided).\nRates are automatically sorted by `valid_from` date (newest first).\n * @summary Create a new tax\n */\nexport type createTaxResponse201 = {\n  data: TaxResponse\n  status: 201\n}\n\nexport type createTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createTaxResponseSuccess = (createTaxResponse201) & {\n  headers: Headers;\n};\nexport type createTaxResponseError = (createTaxResponse400 | createTaxResponse401 | createTaxResponse403 | createTaxResponse404 | createTaxResponse422 | createTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type createTaxResponse = (createTaxResponseSuccess | createTaxResponseError)\n\nexport const getCreateTaxUrl = () => {\n\n\n  \n\n  return `/taxes`\n}\n\nexport const createTax = async (createTaxBody: CreateTaxBody, options?: RequestInit): Promise<createTaxResponse> => {\n  \n  return customFetch<createTaxResponse>(getCreateTaxUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createTaxBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of taxes with optional filtering and sorting. Supports cursor-based pagination, flexible JSON querying with MongoDB-style operators, and sorting. Each tax may contain multiple historical rates.\n * @summary List all taxes\n */\nexport type getTaxesResponse200 = {\n  data: GetTaxes200\n  status: 200\n}\n\nexport type getTaxesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getTaxesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getTaxesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getTaxesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getTaxesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getTaxesResponseSuccess = (getTaxesResponse200) & {\n  headers: Headers;\n};\nexport type getTaxesResponseError = (getTaxesResponse400 | getTaxesResponse401 | getTaxesResponse403 | getTaxesResponse404 | getTaxesResponse500) & {\n  headers: Headers;\n};\n\nexport type getTaxesResponse = (getTaxesResponseSuccess | getTaxesResponseError)\n\nexport const getGetTaxesUrl = (params?: GetTaxesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/taxes?${stringifiedParams}` : `/taxes`\n}\n\nexport const getTaxes = async (params?: GetTaxesParams, options?: RequestInit): Promise<getTaxesResponse> => {\n  \n  return customFetch<getTaxesResponse>(getGetTaxesUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Add one or more new tax rates to an existing tax.\nNew rates are merged with existing rates and automatically sorted by `valid_from` date (newest first).\nUse this to track historical tax rate changes.\n * @summary Add new tax rate(s)\n */\nexport type updateTaxResponse200 = {\n  data: TaxResponse\n  status: 200\n}\n\nexport type updateTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateTaxResponseSuccess = (updateTaxResponse200) & {\n  headers: Headers;\n};\nexport type updateTaxResponseError = (updateTaxResponse400 | updateTaxResponse401 | updateTaxResponse403 | updateTaxResponse404 | updateTaxResponse422 | updateTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type updateTaxResponse = (updateTaxResponseSuccess | updateTaxResponseError)\n\nexport const getUpdateTaxUrl = (id: string,) => {\n\n\n  \n\n  return `/taxes/${id}`\n}\n\nexport const updateTax = async (id: string,\n    updateTaxBody: UpdateTaxBody, options?: RequestInit): Promise<updateTaxResponse> => {\n  \n  return customFetch<updateTaxResponse>(getUpdateTaxUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateTaxBody,)\n  }\n);}\n  \n\n/**\n * Replace all tax rates on a tax with a new set of rates.\nThis completely replaces the existing `tax_rates` array.\nUse this when you need to remove rates or completely restructure the rate history.\nOptionally update the name as well.\n * @summary Replace tax rates\n */\nexport type replaceTaxResponse200 = {\n  data: TaxResponse\n  status: 200\n}\n\nexport type replaceTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type replaceTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type replaceTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type replaceTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type replaceTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type replaceTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type replaceTaxResponseSuccess = (replaceTaxResponse200) & {\n  headers: Headers;\n};\nexport type replaceTaxResponseError = (replaceTaxResponse400 | replaceTaxResponse401 | replaceTaxResponse403 | replaceTaxResponse404 | replaceTaxResponse422 | replaceTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type replaceTaxResponse = (replaceTaxResponseSuccess | replaceTaxResponseError)\n\nexport const getReplaceTaxUrl = (id: string,) => {\n\n\n  \n\n  return `/taxes/${id}`\n}\n\nexport const replaceTax = async (id: string,\n    replaceTaxBody: ReplaceTaxBody, options?: RequestInit): Promise<replaceTaxResponse> => {\n  \n  return customFetch<replaceTaxResponse>(getReplaceTaxUrl(id),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      replaceTaxBody,)\n  }\n);}\n  \n\n/**\n * Soft delete a tax. The tax will be moved to the trash and can be restored later.\n * @summary Delete a tax\n */\nexport type deleteTaxResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type deleteTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteTaxResponseSuccess = (deleteTaxResponse204) & {\n  headers: Headers;\n};\nexport type deleteTaxResponseError = (deleteTaxResponse400 | deleteTaxResponse401 | deleteTaxResponse403 | deleteTaxResponse404 | deleteTaxResponse422 | deleteTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteTaxResponse = (deleteTaxResponseSuccess | deleteTaxResponseError)\n\nexport const getDeleteTaxUrl = (id: string,) => {\n\n\n  \n\n  return `/taxes/${id}`\n}\n\nexport const deleteTax = async (id: string, options?: RequestInit): Promise<deleteTaxResponse> => {\n  \n  return customFetch<deleteTaxResponse>(getDeleteTaxUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Restore a soft-deleted tax from the trash.\n * @summary Restore a deleted tax\n */\nexport type restoreTaxResponse200 = {\n  data: TaxResponse\n  status: 200\n}\n\nexport type restoreTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type restoreTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type restoreTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type restoreTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type restoreTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type restoreTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type restoreTaxResponseSuccess = (restoreTaxResponse200) & {\n  headers: Headers;\n};\nexport type restoreTaxResponseError = (restoreTaxResponse400 | restoreTaxResponse401 | restoreTaxResponse403 | restoreTaxResponse404 | restoreTaxResponse422 | restoreTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type restoreTaxResponse = (restoreTaxResponseSuccess | restoreTaxResponseError)\n\nexport const getRestoreTaxUrl = (id: string,) => {\n\n\n  \n\n  return `/taxes/${id}/restore`\n}\n\nexport const restoreTax = async (id: string, options?: RequestInit): Promise<restoreTaxResponse> => {\n  \n  return customFetch<restoreTaxResponse>(getRestoreTaxUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Permanently delete a soft-deleted tax. Only taxes in the trash can be permanently deleted.\n * @summary Permanently delete a tax\n */\nexport type permanentDeleteTaxResponse204 = {\n  data: void\n  status: 204\n}\n\nexport type permanentDeleteTaxResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type permanentDeleteTaxResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type permanentDeleteTaxResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type permanentDeleteTaxResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type permanentDeleteTaxResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type permanentDeleteTaxResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type permanentDeleteTaxResponseSuccess = (permanentDeleteTaxResponse204) & {\n  headers: Headers;\n};\nexport type permanentDeleteTaxResponseError = (permanentDeleteTaxResponse400 | permanentDeleteTaxResponse401 | permanentDeleteTaxResponse403 | permanentDeleteTaxResponse404 | permanentDeleteTaxResponse422 | permanentDeleteTaxResponse500) & {\n  headers: Headers;\n};\n\nexport type permanentDeleteTaxResponse = (permanentDeleteTaxResponseSuccess | permanentDeleteTaxResponseError)\n\nexport const getPermanentDeleteTaxUrl = (id: string,) => {\n\n\n  \n\n  return `/taxes/${id}/permanent`\n}\n\nexport const permanentDeleteTax = async (id: string, options?: RequestInit): Promise<permanentDeleteTaxResponse> => {\n  \n  return customFetch<permanentDeleteTaxResponse>(getPermanentDeleteTaxUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Taxes API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createTax,\n  deleteTax,\n  getTaxes,\n  permanentDeleteTax,\n  replaceTax,\n  restoreTax,\n  updateTax,\n} from \"../generated/taxes/taxes\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const taxes = {\n  /** @see createTax */\n  create: wrapMethod(createTax),\n\n  /** @see getTaxes */\n  list: wrapListMethod(getTaxes),\n\n  /** @see updateTax */\n  update: wrapMethod(updateTax),\n\n  /** @see replaceTax */\n  replaceTax: wrapMethod(replaceTax),\n\n  /** @see deleteTax */\n  delete: wrapMethod(deleteTax),\n\n  /** @see restoreTax */\n  restoreTax: wrapMethod(restoreTax),\n\n  /** @see permanentDeleteTax */\n  permanentDeleteTax: wrapMethod(permanentDeleteTax),\n} as const;\n\nexport type TaxesApi = typeof taxes;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  TransactionTypeCheckRequest,\n  TransactionTypeCheckResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Check transaction type and reverse charge applicability based on issuer and customer information.\n\n**Country Resolution:**\n- Country names are automatically resolved to ISO country codes (handles variations like \"Slovenija\" → \"SI\")\n- If both country and country_code are provided, country_code takes precedence\n\n**Transaction Types:**\n- `domestic`: Same country for issuer and customer\n- `intra_eu_b2b`: Cross-border EU sale to business with valid tax number\n- `intra_eu_b2c`: Cross-border EU sale to consumer (no tax number)\n- `3w_b2b`: Non-EU sale to business (with tax number)\n- `3w_b2c`: Non-EU sale to consumer (no tax number, or is_end_consumer=true)\n\n**Reverse Charge:**\nApplies when:\n- Issuer is an EU tax subject\n- Customer is in a different EU country with valid tax number, OR customer is outside EU\n\n**End Consumer Override:**\nWhen customer.is_end_consumer is true, forces B2C classification for non-EU transactions even if the customer has a tax number. For intra-EU transactions, VIES validation takes precedence.\n\n**Non-Tax Subjects:**\nWhen issuer.is_tax_subject is false, all transactions are treated as B2C (no VIES validation, no reverse charge).\n * @summary Check transaction type\n */\nexport type checkTransactionTypeResponse200 = {\n  data: TransactionTypeCheckResponse\n  status: 200\n}\n\nexport type checkTransactionTypeResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type checkTransactionTypeResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type checkTransactionTypeResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type checkTransactionTypeResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type checkTransactionTypeResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type checkTransactionTypeResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type checkTransactionTypeResponseSuccess = (checkTransactionTypeResponse200) & {\n  headers: Headers;\n};\nexport type checkTransactionTypeResponseError = (checkTransactionTypeResponse400 | checkTransactionTypeResponse401 | checkTransactionTypeResponse403 | checkTransactionTypeResponse404 | checkTransactionTypeResponse422 | checkTransactionTypeResponse500) & {\n  headers: Headers;\n};\n\nexport type checkTransactionTypeResponse = (checkTransactionTypeResponseSuccess | checkTransactionTypeResponseError)\n\nexport const getCheckTransactionTypeUrl = () => {\n\n\n  \n\n  return `/transaction-type/check`\n}\n\nexport const checkTransactionType = async (transactionTypeCheckRequest: TransactionTypeCheckRequest, options?: RequestInit): Promise<checkTransactionTypeResponse> => {\n  \n  return customFetch<checkTransactionTypeResponse>(getCheckTransactionTypeUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      transactionTypeCheckRequest,)\n  }\n);}\n  \n\n",
    "/**\n * TransactionType API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { checkTransactionType } from \"../generated/transaction-type/transaction-type\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const transactionType = {\n  /** @see checkTransactionType */\n  checkTransactionType: wrapMethod(checkTransactionType),\n} as const;\n\nexport type TransactionTypeApi = typeof transactionType;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  UploadImage200,\n  UploadImageBody,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Upload an image file to cloud storage.\nSupports PNG, JPG, WEBP, and GIF formats. Maximum file size: 5MB.\nImages are automatically optimized and stored in entity-specific folders.\nReturns secure URLs for use in entity settings, invoices, and other documents.\n * @summary Upload image\n */\nexport type uploadImageResponse200 = {\n  data: UploadImage200\n  status: 200\n}\n\nexport type uploadImageResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type uploadImageResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type uploadImageResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type uploadImageResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type uploadImageResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type uploadImageResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type uploadImageResponseSuccess = (uploadImageResponse200) & {\n  headers: Headers;\n};\nexport type uploadImageResponseError = (uploadImageResponse400 | uploadImageResponse401 | uploadImageResponse403 | uploadImageResponse404 | uploadImageResponse422 | uploadImageResponse500) & {\n  headers: Headers;\n};\n\nexport type uploadImageResponse = (uploadImageResponseSuccess | uploadImageResponseError)\n\nexport const getUploadImageUrl = () => {\n\n\n  \n\n  return `/upload/image`\n}\n\nexport const uploadImage = async (uploadImageBody: UploadImageBody, options?: RequestInit): Promise<uploadImageResponse> => {\n    const formData = new FormData();\nformData.append(`file`, uploadImageBody.file);\n\n  return customFetch<uploadImageResponse>(getUploadImageUrl(),\n  {      \n    ...options,\n    method: 'POST'\n    ,\n    body: \n      formData,\n  }\n);}\n  \n\n",
    "/**\n * Upload API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { uploadImage } from \"../generated/upload/upload\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const upload = {\n  /** @see uploadImage */\n  uploadImage: wrapMethod(uploadImage),\n} as const;\n\nexport type UploadApi = typeof upload;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  PatchMeBody,\n  UpdateUserFinaSettingsBody,\n  UpdateUserFursSettingsBody,\n  UpdateUserPtSettingsBody,\n  User,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Retrieve the authenticated user's profile information. Returns the user details associated with the provided Bearer token.\n * @summary Get current user\n */\nexport type getMeResponse200 = {\n  data: User\n  status: 200\n}\n\nexport type getMeResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getMeResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getMeResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getMeResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getMeResponseSuccess = (getMeResponse200) & {\n  headers: Headers;\n};\nexport type getMeResponseError = (getMeResponse401 | getMeResponse403 | getMeResponse404 | getMeResponse500) & {\n  headers: Headers;\n};\n\nexport type getMeResponse = (getMeResponseSuccess | getMeResponseError)\n\nexport const getGetMeUrl = () => {\n\n\n  \n\n  return `/users/me`\n}\n\nexport const getMe = async ( options?: RequestInit): Promise<getMeResponse> => {\n  \n  return customFetch<getMeResponse>(getGetMeUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update the authenticated user's profile. Currently supports updating the display name and preferred UI language (locale).\n * @summary Update current user\n */\nexport type patchMeResponse200 = {\n  data: User\n  status: 200\n}\n\nexport type patchMeResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type patchMeResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type patchMeResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type patchMeResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type patchMeResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type patchMeResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type patchMeResponseSuccess = (patchMeResponse200) & {\n  headers: Headers;\n};\nexport type patchMeResponseError = (patchMeResponse400 | patchMeResponse401 | patchMeResponse403 | patchMeResponse404 | patchMeResponse422 | patchMeResponse500) & {\n  headers: Headers;\n};\n\nexport type patchMeResponse = (patchMeResponseSuccess | patchMeResponseError)\n\nexport const getPatchMeUrl = () => {\n\n\n  \n\n  return `/users/me`\n}\n\nexport const patchMe = async (patchMeBody: PatchMeBody, options?: RequestInit): Promise<patchMeResponse> => {\n  \n  return customFetch<patchMeResponse>(getPatchMeUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      patchMeBody,)\n  }\n);}\n  \n\n/**\n * Update FURS operator settings (tax number, label) for the current user. Settings are stored per-entity using the x-entity-id header. These settings are used when the user creates invoices through the web interface.\n * @summary Update user FURS operator settings\n */\nexport type updateUserFursSettingsResponse200 = {\n  data: User\n  status: 200\n}\n\nexport type updateUserFursSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateUserFursSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateUserFursSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateUserFursSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateUserFursSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateUserFursSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateUserFursSettingsResponseSuccess = (updateUserFursSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateUserFursSettingsResponseError = (updateUserFursSettingsResponse400 | updateUserFursSettingsResponse401 | updateUserFursSettingsResponse403 | updateUserFursSettingsResponse404 | updateUserFursSettingsResponse422 | updateUserFursSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateUserFursSettingsResponse = (updateUserFursSettingsResponseSuccess | updateUserFursSettingsResponseError)\n\nexport const getUpdateUserFursSettingsUrl = () => {\n\n\n  \n\n  return `/users/me/settings/furs`\n}\n\nexport const updateUserFursSettings = async (updateUserFursSettingsBody: UpdateUserFursSettingsBody, options?: RequestInit): Promise<updateUserFursSettingsResponse> => {\n  \n  return customFetch<updateUserFursSettingsResponse>(getUpdateUserFursSettingsUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateUserFursSettingsBody,)\n  }\n);}\n  \n\n/**\n * Update FINA operator settings (OIB, label) for the current user. Settings are stored per-entity using the x-entity-id header. These settings are used when the user creates invoices through the web interface.\n * @summary Update user FINA operator settings\n */\nexport type updateUserFinaSettingsResponse200 = {\n  data: User\n  status: 200\n}\n\nexport type updateUserFinaSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateUserFinaSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateUserFinaSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateUserFinaSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateUserFinaSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateUserFinaSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateUserFinaSettingsResponseSuccess = (updateUserFinaSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateUserFinaSettingsResponseError = (updateUserFinaSettingsResponse400 | updateUserFinaSettingsResponse401 | updateUserFinaSettingsResponse403 | updateUserFinaSettingsResponse404 | updateUserFinaSettingsResponse422 | updateUserFinaSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateUserFinaSettingsResponse = (updateUserFinaSettingsResponseSuccess | updateUserFinaSettingsResponseError)\n\nexport const getUpdateUserFinaSettingsUrl = () => {\n\n\n  \n\n  return `/users/me/settings/fina`\n}\n\nexport const updateUserFinaSettings = async (updateUserFinaSettingsBody: UpdateUserFinaSettingsBody, options?: RequestInit): Promise<updateUserFinaSettingsResponse> => {\n  \n  return customFetch<updateUserFinaSettingsResponse>(getUpdateUserFinaSettingsUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateUserFinaSettingsBody,)\n  }\n);}\n  \n\n/**\n * Update PT operator snapshot settings for the current user. Settings are stored per-entity using the x-entity-id header and used to auto-fill PT operator fields when the user creates PT documents.\n * @summary Update user Portugal operator settings\n */\nexport type updateUserPtSettingsResponse200 = {\n  data: User\n  status: 200\n}\n\nexport type updateUserPtSettingsResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateUserPtSettingsResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateUserPtSettingsResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateUserPtSettingsResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateUserPtSettingsResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateUserPtSettingsResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateUserPtSettingsResponseSuccess = (updateUserPtSettingsResponse200) & {\n  headers: Headers;\n};\nexport type updateUserPtSettingsResponseError = (updateUserPtSettingsResponse400 | updateUserPtSettingsResponse401 | updateUserPtSettingsResponse403 | updateUserPtSettingsResponse404 | updateUserPtSettingsResponse422 | updateUserPtSettingsResponse500) & {\n  headers: Headers;\n};\n\nexport type updateUserPtSettingsResponse = (updateUserPtSettingsResponseSuccess | updateUserPtSettingsResponseError)\n\nexport const getUpdateUserPtSettingsUrl = () => {\n\n\n  \n\n  return `/users/me/settings/pt`\n}\n\nexport const updateUserPtSettings = async (updateUserPtSettingsBody: UpdateUserPtSettingsBody, options?: RequestInit): Promise<updateUserPtSettingsResponse> => {\n  \n  return customFetch<updateUserPtSettingsResponse>(getUpdateUserPtSettingsUrl(),\n  {      \n    ...options,\n    method: 'PUT',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateUserPtSettingsBody,)\n  }\n);}\n  \n\n",
    "/**\n * Users API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getMe, patchMe, updateUserFinaSettings, updateUserFursSettings } from \"../generated/users/users\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const users = {\n  /** @see getMe */\n  getMe: wrapMethod(getMe),\n\n  /** @see patchMe */\n  update: wrapMethod(patchMe),\n\n  /** @see updateUserFursSettings */\n  updateFursSettings: wrapMethod(updateUserFursSettings),\n\n  /** @see updateUserFinaSettings */\n  updateFinaSettings: wrapMethod(updateUserFinaSettings),\n} as const;\n\nexport type UsersApi = typeof users;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  Error,\n  TransactionTypeCheckRequest,\n  TransactionTypeCheckResponse,\n  ValidationError\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * **Deprecated:** Use `POST /transaction-type/check` instead. This endpoint is kept for backward compatibility.\n * @deprecated\n * @summary Check VIES status (deprecated)\n */\nexport type checkViesResponse200 = {\n  data: TransactionTypeCheckResponse\n  status: 200\n}\n\nexport type checkViesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type checkViesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type checkViesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type checkViesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type checkViesResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type checkViesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type checkViesResponseSuccess = (checkViesResponse200) & {\n  headers: Headers;\n};\nexport type checkViesResponseError = (checkViesResponse400 | checkViesResponse401 | checkViesResponse403 | checkViesResponse404 | checkViesResponse422 | checkViesResponse500) & {\n  headers: Headers;\n};\n\nexport type checkViesResponse = (checkViesResponseSuccess | checkViesResponseError)\n\nexport const getCheckViesUrl = () => {\n\n\n  \n\n  return `/vies/check`\n}\n\nexport const checkVies = async (transactionTypeCheckRequest: TransactionTypeCheckRequest, options?: RequestInit): Promise<checkViesResponse> => {\n  \n  return customFetch<checkViesResponse>(getCheckViesUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      transactionTypeCheckRequest,)\n  }\n);}\n  \n\n",
    "/**\n * Vies API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { checkVies } from \"../generated/vies/vies\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const vies = {\n  /** @see checkVies */\n  checkVies: wrapMethod(checkVies),\n} as const;\n\nexport type ViesApi = typeof vies;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  CreateWebhookBody,\n  DeleteWebhook200,\n  Error,\n  GetWebhookDeliveries200,\n  GetWebhookDeliveriesParams,\n  GetWebhooks200,\n  GetWebhooksParams,\n  UpdateWebhookBody,\n  ValidationError,\n  WebhookDelivery,\n  WebhookResponse,\n  WebhookWithSecret\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Create a webhook endpoint. The response includes the full secret which is only visible on creation and when rotated.\n * @summary Create a new webhook\n */\nexport type createWebhookResponse201 = {\n  data: WebhookWithSecret\n  status: 201\n}\n\nexport type createWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type createWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type createWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type createWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type createWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type createWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type createWebhookResponseSuccess = (createWebhookResponse201) & {\n  headers: Headers;\n};\nexport type createWebhookResponseError = (createWebhookResponse400 | createWebhookResponse401 | createWebhookResponse403 | createWebhookResponse404 | createWebhookResponse422 | createWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type createWebhookResponse = (createWebhookResponseSuccess | createWebhookResponseError)\n\nexport const getCreateWebhookUrl = () => {\n\n\n  \n\n  return `/webhooks`\n}\n\nexport const createWebhook = async (createWebhookBody: CreateWebhookBody, options?: RequestInit): Promise<createWebhookResponse> => {\n  \n  return customFetch<createWebhookResponse>(getCreateWebhookUrl(),\n  {      \n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      createWebhookBody,)\n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of webhooks for the entity. Secrets are masked in the response.\n * @summary List all webhooks\n */\nexport type getWebhooksResponse200 = {\n  data: GetWebhooks200\n  status: 200\n}\n\nexport type getWebhooksResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getWebhooksResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getWebhooksResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getWebhooksResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getWebhooksResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getWebhooksResponseSuccess = (getWebhooksResponse200) & {\n  headers: Headers;\n};\nexport type getWebhooksResponseError = (getWebhooksResponse400 | getWebhooksResponse401 | getWebhooksResponse403 | getWebhooksResponse404 | getWebhooksResponse500) & {\n  headers: Headers;\n};\n\nexport type getWebhooksResponse = (getWebhooksResponseSuccess | getWebhooksResponseError)\n\nexport const getGetWebhooksUrl = (params?: GetWebhooksParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/webhooks?${stringifiedParams}` : `/webhooks`\n}\n\nexport const getWebhooks = async (params?: GetWebhooksParams, options?: RequestInit): Promise<getWebhooksResponse> => {\n  \n  return customFetch<getWebhooksResponse>(getGetWebhooksUrl(params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a single webhook. The secret is masked in the response.\n * @summary Get a webhook by ID\n */\nexport type getWebhookByIdResponse200 = {\n  data: WebhookResponse\n  status: 200\n}\n\nexport type getWebhookByIdResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getWebhookByIdResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getWebhookByIdResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getWebhookByIdResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getWebhookByIdResponseSuccess = (getWebhookByIdResponse200) & {\n  headers: Headers;\n};\nexport type getWebhookByIdResponseError = (getWebhookByIdResponse401 | getWebhookByIdResponse403 | getWebhookByIdResponse404 | getWebhookByIdResponse500) & {\n  headers: Headers;\n};\n\nexport type getWebhookByIdResponse = (getWebhookByIdResponseSuccess | getWebhookByIdResponseError)\n\nexport const getGetWebhookByIdUrl = (id: string,) => {\n\n\n  \n\n  return `/webhooks/${id}`\n}\n\nexport const getWebhookById = async (id: string, options?: RequestInit): Promise<getWebhookByIdResponse> => {\n  \n  return customFetch<getWebhookByIdResponse>(getGetWebhookByIdUrl(id),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Update webhook URL, events, active status, or description.\n * @summary Update a webhook\n */\nexport type updateWebhookResponse200 = {\n  data: WebhookResponse\n  status: 200\n}\n\nexport type updateWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type updateWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type updateWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type updateWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type updateWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type updateWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type updateWebhookResponseSuccess = (updateWebhookResponse200) & {\n  headers: Headers;\n};\nexport type updateWebhookResponseError = (updateWebhookResponse400 | updateWebhookResponse401 | updateWebhookResponse403 | updateWebhookResponse404 | updateWebhookResponse422 | updateWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type updateWebhookResponse = (updateWebhookResponseSuccess | updateWebhookResponseError)\n\nexport const getUpdateWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/webhooks/${id}`\n}\n\nexport const updateWebhook = async (id: string,\n    updateWebhookBody: UpdateWebhookBody, options?: RequestInit): Promise<updateWebhookResponse> => {\n  \n  return customFetch<updateWebhookResponse>(getUpdateWebhookUrl(id),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      updateWebhookBody,)\n  }\n);}\n  \n\n/**\n * Permanently delete a webhook endpoint. Pending deliveries will be cancelled.\n * @summary Delete a webhook\n */\nexport type deleteWebhookResponse200 = {\n  data: DeleteWebhook200\n  status: 200\n}\n\nexport type deleteWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type deleteWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type deleteWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type deleteWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type deleteWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type deleteWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type deleteWebhookResponseSuccess = (deleteWebhookResponse200) & {\n  headers: Headers;\n};\nexport type deleteWebhookResponseError = (deleteWebhookResponse400 | deleteWebhookResponse401 | deleteWebhookResponse403 | deleteWebhookResponse404 | deleteWebhookResponse422 | deleteWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type deleteWebhookResponse = (deleteWebhookResponseSuccess | deleteWebhookResponseError)\n\nexport const getDeleteWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/webhooks/${id}`\n}\n\nexport const deleteWebhook = async (id: string, options?: RequestInit): Promise<deleteWebhookResponse> => {\n  \n  return customFetch<deleteWebhookResponse>(getDeleteWebhookUrl(id),\n  {      \n    ...options,\n    method: 'DELETE'\n    \n    \n  }\n);}\n  \n\n/**\n * Send a test event to the webhook endpoint to verify connectivity.\n * @summary Test a webhook\n */\nexport type testWebhookResponse200 = {\n  data: WebhookDelivery\n  status: 200\n}\n\nexport type testWebhookResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type testWebhookResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type testWebhookResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type testWebhookResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type testWebhookResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type testWebhookResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type testWebhookResponseSuccess = (testWebhookResponse200) & {\n  headers: Headers;\n};\nexport type testWebhookResponseError = (testWebhookResponse400 | testWebhookResponse401 | testWebhookResponse403 | testWebhookResponse404 | testWebhookResponse422 | testWebhookResponse500) & {\n  headers: Headers;\n};\n\nexport type testWebhookResponse = (testWebhookResponseSuccess | testWebhookResponseError)\n\nexport const getTestWebhookUrl = (id: string,) => {\n\n\n  \n\n  return `/webhooks/${id}/test`\n}\n\nexport const testWebhook = async (id: string, options?: RequestInit): Promise<testWebhookResponse> => {\n  \n  return customFetch<testWebhookResponse>(getTestWebhookUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n/**\n * Retrieve a paginated list of delivery attempts for a specific webhook.\n * @summary List webhook deliveries\n */\nexport type getWebhookDeliveriesResponse200 = {\n  data: GetWebhookDeliveries200\n  status: 200\n}\n\nexport type getWebhookDeliveriesResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type getWebhookDeliveriesResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type getWebhookDeliveriesResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type getWebhookDeliveriesResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type getWebhookDeliveriesResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type getWebhookDeliveriesResponseSuccess = (getWebhookDeliveriesResponse200) & {\n  headers: Headers;\n};\nexport type getWebhookDeliveriesResponseError = (getWebhookDeliveriesResponse400 | getWebhookDeliveriesResponse401 | getWebhookDeliveriesResponse403 | getWebhookDeliveriesResponse404 | getWebhookDeliveriesResponse500) & {\n  headers: Headers;\n};\n\nexport type getWebhookDeliveriesResponse = (getWebhookDeliveriesResponseSuccess | getWebhookDeliveriesResponseError)\n\nexport const getGetWebhookDeliveriesUrl = (id: string,\n    params?: GetWebhookDeliveriesParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n    \n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/webhooks/${id}/deliveries?${stringifiedParams}` : `/webhooks/${id}/deliveries`\n}\n\nexport const getWebhookDeliveries = async (id: string,\n    params?: GetWebhookDeliveriesParams, options?: RequestInit): Promise<getWebhookDeliveriesResponse> => {\n  \n  return customFetch<getWebhookDeliveriesResponse>(getGetWebhookDeliveriesUrl(id,params),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Generate a new signing secret for the webhook. The previous secret is immediately invalidated.\n * @summary Rotate webhook secret\n */\nexport type rotateWebhookSecretResponse200 = {\n  data: WebhookWithSecret\n  status: 200\n}\n\nexport type rotateWebhookSecretResponse400 = {\n  data: Error\n  status: 400\n}\n\nexport type rotateWebhookSecretResponse401 = {\n  data: Error\n  status: 401\n}\n\nexport type rotateWebhookSecretResponse403 = {\n  data: Error\n  status: 403\n}\n\nexport type rotateWebhookSecretResponse404 = {\n  data: Error\n  status: 404\n}\n\nexport type rotateWebhookSecretResponse422 = {\n  data: ValidationError\n  status: 422\n}\n\nexport type rotateWebhookSecretResponse500 = {\n  data: Error\n  status: 500\n}\n\nexport type rotateWebhookSecretResponseSuccess = (rotateWebhookSecretResponse200) & {\n  headers: Headers;\n};\nexport type rotateWebhookSecretResponseError = (rotateWebhookSecretResponse400 | rotateWebhookSecretResponse401 | rotateWebhookSecretResponse403 | rotateWebhookSecretResponse404 | rotateWebhookSecretResponse422 | rotateWebhookSecretResponse500) & {\n  headers: Headers;\n};\n\nexport type rotateWebhookSecretResponse = (rotateWebhookSecretResponseSuccess | rotateWebhookSecretResponseError)\n\nexport const getRotateWebhookSecretUrl = (id: string,) => {\n\n\n  \n\n  return `/webhooks/${id}/rotate-secret`\n}\n\nexport const rotateWebhookSecret = async (id: string, options?: RequestInit): Promise<rotateWebhookSecretResponse> => {\n  \n  return customFetch<rotateWebhookSecretResponse>(getRotateWebhookSecretUrl(id),\n  {      \n    ...options,\n    method: 'POST'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * Webhooks API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  createWebhook,\n  deleteWebhook,\n  getWebhookById,\n  getWebhooks,\n  rotateWebhookSecret,\n  testWebhook,\n  updateWebhook,\n} from \"../generated/webhooks/webhooks\";\n\nimport { wrapListMethod, wrapMethod } from \"./utils\";\n\nexport const webhooks = {\n  /** @see createWebhook */\n  create: wrapMethod(createWebhook),\n\n  /** @see getWebhooks */\n  list: wrapListMethod(getWebhooks),\n\n  /** @see getWebhookById */\n  get: wrapMethod(getWebhookById),\n\n  /** @see updateWebhook */\n  update: wrapMethod(updateWebhook),\n\n  /** @see deleteWebhook */\n  delete: wrapMethod(deleteWebhook),\n\n  /** @see testWebhook */\n  testWebhook: wrapMethod(testWebhook),\n\n  /** @see rotateWebhookSecret */\n  rotateWebhookSecret: wrapMethod(rotateWebhookSecret),\n} as const;\n\nexport type WebhooksApi = typeof webhooks;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  AvailablePlans,\n  CurrentSubscription,\n  FeatureCheck,\n  LimitCheck,\n  UpdateWLSubscriptionBillingEmail200,\n  WLUpdateBillingEmailRequest\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Returns the current entity subscription with plan details and usage stats. Requires entity context.\n * @summary Get current subscription\n */\nexport type getCurrentWLSubscriptionResponse200 = {\n  data: CurrentSubscription\n  status: 200\n}\n\nexport type getCurrentWLSubscriptionResponseSuccess = (getCurrentWLSubscriptionResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type getCurrentWLSubscriptionResponse = (getCurrentWLSubscriptionResponseSuccess)\n\nexport const getGetCurrentWLSubscriptionUrl = () => {\n\n\n  \n\n  return `/white-label-subscriptions`\n}\n\nexport const getCurrentWLSubscription = async ( options?: RequestInit): Promise<getCurrentWLSubscriptionResponse> => {\n  \n  return customFetch<getCurrentWLSubscriptionResponse>(getGetCurrentWLSubscriptionUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Returns available subscription plans for the current white-label.\n * @summary Get available plans\n */\nexport type getWLSubscriptionPlansResponse200 = {\n  data: AvailablePlans\n  status: 200\n}\n\nexport type getWLSubscriptionPlansResponseSuccess = (getWLSubscriptionPlansResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type getWLSubscriptionPlansResponse = (getWLSubscriptionPlansResponseSuccess)\n\nexport const getGetWLSubscriptionPlansUrl = () => {\n\n\n  \n\n  return `/white-label-subscriptions/plans`\n}\n\nexport const getWLSubscriptionPlans = async ( options?: RequestInit): Promise<getWLSubscriptionPlansResponse> => {\n  \n  return customFetch<getWLSubscriptionPlansResponse>(getGetWLSubscriptionPlansUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Checks if a specific feature is available on the current subscription plan.\n * @summary Check feature access\n */\nexport type checkWLFeatureResponse200 = {\n  data: FeatureCheck\n  status: 200\n}\n\nexport type checkWLFeatureResponseSuccess = (checkWLFeatureResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type checkWLFeatureResponse = (checkWLFeatureResponseSuccess)\n\nexport const getCheckWLFeatureUrl = (feature: string,) => {\n\n\n  \n\n  return `/white-label-subscriptions/check-feature/${feature}`\n}\n\nexport const checkWLFeature = async (feature: string, options?: RequestInit): Promise<checkWLFeatureResponse> => {\n  \n  return customFetch<checkWLFeatureResponse>(getCheckWLFeatureUrl(feature),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Checks if the current usage allows creating more of a resource type.\n * @summary Check resource limit\n */\nexport type checkWLLimitResponse200 = {\n  data: LimitCheck\n  status: 200\n}\n\nexport type checkWLLimitResponseSuccess = (checkWLLimitResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type checkWLLimitResponse = (checkWLLimitResponseSuccess)\n\nexport const getCheckWLLimitUrl = (resource: string,) => {\n\n\n  \n\n  return `/white-label-subscriptions/check-limit/${resource}`\n}\n\nexport const checkWLLimit = async (resource: string, options?: RequestInit): Promise<checkWLLimitResponse> => {\n  \n  return customFetch<checkWLLimitResponse>(getCheckWLLimitUrl(resource),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n/**\n * Updates the billing email used for white-label subscription notifications and invoices.\n * @summary Update billing email\n */\nexport type updateWLSubscriptionBillingEmailResponse200 = {\n  data: UpdateWLSubscriptionBillingEmail200\n  status: 200\n}\n\nexport type updateWLSubscriptionBillingEmailResponseSuccess = (updateWLSubscriptionBillingEmailResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type updateWLSubscriptionBillingEmailResponse = (updateWLSubscriptionBillingEmailResponseSuccess)\n\nexport const getUpdateWLSubscriptionBillingEmailUrl = () => {\n\n\n  \n\n  return `/white-label-subscriptions/billing-email`\n}\n\nexport const updateWLSubscriptionBillingEmail = async (wLUpdateBillingEmailRequest: WLUpdateBillingEmailRequest, options?: RequestInit): Promise<updateWLSubscriptionBillingEmailResponse> => {\n  \n  return customFetch<updateWLSubscriptionBillingEmailResponse>(getUpdateWLSubscriptionBillingEmailUrl(),\n  {      \n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      wLUpdateBillingEmailRequest,)\n  }\n);}\n  \n\n",
    "/**\n * WhiteLabelSubscriptions API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport {\n  checkWLFeature,\n  checkWLLimit,\n  getCurrentWLSubscription,\n  getWLSubscriptionPlans,\n  updateWLSubscriptionBillingEmail,\n} from \"../generated/white-label-subscriptions/white-label-subscriptions\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const whiteLabelSubscriptions = {\n  /** @see getCurrentWLSubscription */\n  getCurrentWLSubscription: wrapMethod(getCurrentWLSubscription),\n\n  /** @see getWLSubscriptionPlans */\n  list: wrapMethod(getWLSubscriptionPlans),\n\n  /** @see checkWLFeature */\n  checkWLFeature: wrapMethod(checkWLFeature),\n\n  /** @see checkWLLimit */\n  checkWLLimit: wrapMethod(checkWLLimit),\n\n  /** @see updateWLSubscriptionBillingEmail */\n  update: wrapMethod(updateWLSubscriptionBillingEmail),\n} as const;\n\nexport type WhiteLabelSubscriptionsApi = typeof whiteLabelSubscriptions;\n",
    "/**\n * Generated by orval v8.5.3 🍺\n * Do not edit manually.\n * Space Invoices API\n * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking.\n * OpenAPI spec version: 1.0.0\n */\nimport type {\n  WhiteLabelConfig\n} from '../model';\n\nimport { customFetch } from '../../mutator/custom-fetch';\n\n/**\n * Returns the white-label configuration for the current domain. Uses the Origin or Referer header to detect the domain. This is used by the web app to determine which features to enable/disable.\n * @summary Get current white-label configuration\n */\nexport type getCurrentWhiteLabelResponse200 = {\n  data: WhiteLabelConfig\n  status: 200\n}\n\nexport type getCurrentWhiteLabelResponseSuccess = (getCurrentWhiteLabelResponse200) & {\n  headers: Headers;\n};\n;\n\nexport type getCurrentWhiteLabelResponse = (getCurrentWhiteLabelResponseSuccess)\n\nexport const getGetCurrentWhiteLabelUrl = () => {\n\n\n  \n\n  return `/white-labels/current`\n}\n\nexport const getCurrentWhiteLabel = async ( options?: RequestInit): Promise<getCurrentWhiteLabelResponse> => {\n  \n  return customFetch<getCurrentWhiteLabelResponse>(getGetCurrentWhiteLabelUrl(),\n  {      \n    ...options,\n    method: 'GET'\n    \n    \n  }\n);}\n  \n\n",
    "/**\n * WhiteLabels API - Auto-generated typed wrapper.\n * DO NOT EDIT - Regenerate with: bun run generate\n * @generated\n */\n\nimport { getCurrentWhiteLabel } from \"../generated/white-labels/white-labels\";\n\nimport { wrapMethod } from \"./utils\";\n\nexport const whiteLabels = {\n  /** @see getCurrentWhiteLabel */\n  getCurrentWhiteLabel: wrapMethod(getCurrentWhiteLabel),\n} as const;\n\nexport type WhiteLabelsApi = typeof whiteLabels;\n"
  ],
  "mappings": "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ChD,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,ECnBO,IAAM,GAAmC,CAC9C,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,ECnBO,IAAM,GAAoC,CAC/C,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,ECnBO,IAAM,GAAkC,CAC7C,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,ECnBO,IAAM,GAAuC,CAClD,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,ECnBO,IAAM,GAAqC,CAChD,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,QACT,QAAS,OACX,E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",
  "debugId": "26E6C4843C54ACB664756E2164756E21",
  "names": []
}