{"version":3,"sources":["../../src/invoices-invoices-v4-invoice-invoices.public.ts","../../src/invoices-invoices-v4-invoice-invoices.universal.ts","../../src/invoices-invoices-v4-invoice-invoices.http.ts","../../src/invoices-invoices-v4-invoice-invoices.context.ts"],"sourcesContent":["import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTAddressToSDKAddress } from '@wix/sdk-runtime/transformations/address';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  ArchiveInvoiceApplicationErrors,\n  ArchiveInvoiceResponse,\n  BulkCreateInvoicesApplicationErrors,\n  BulkCreateInvoicesOptions,\n  BulkCreateInvoicesResponse,\n  BulkCreateInvoicesValidationErrors,\n  BulkDeleteInvoicesResponse,\n  BulkUpdateInvoiceTagsApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterOptions,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoicesApplicationErrors,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoicesResponse,\n  BulkUpdateInvoicesValidationErrors,\n  CalculateInvoiceApplicationErrors,\n  CalculateInvoiceOptions,\n  CalculateInvoiceResponse,\n  CreateInvoiceApplicationErrors,\n  CreateInvoiceValidationErrors,\n  DeleteInvoiceApplicationErrors,\n  EnableInvoicePaymentsApplicationErrors,\n  EnableInvoicePaymentsResponse,\n  GeneratePdfDocumentApplicationErrors,\n  GeneratePdfDocumentResponse,\n  GenerateReceiptResponse,\n  GetInvoiceApplicationErrors,\n  GetLatestInvoiceNumberOptions,\n  GetLatestInvoiceNumberResponse,\n  InitiatePaymentApplicationErrors,\n  InitiatePaymentResponse,\n  Invoice,\n  InvoiceCreatedEnvelope,\n  InvoiceDeletedEnvelope,\n  InvoiceQuery,\n  InvoiceSearch,\n  InvoiceSentEnvelope,\n  InvoiceTagsModifiedEnvelope,\n  InvoiceUpdatedEnvelope,\n  InvoicesQueryBuilder,\n  MarkInvoiceAsSentResponse,\n  MarkInvoiceAsViewedResponse,\n  MaskedInvoice,\n  PublishInvoiceApplicationErrors,\n  PublishInvoiceResponse,\n  QueryInvoicesApplicationErrors,\n  QueryInvoicesResponse,\n  SearchInvoicesResponse,\n  SendInvoiceApplicationErrors,\n  SendInvoiceOptions,\n  SendInvoiceResponse,\n  UnarchiveInvoiceApplicationErrors,\n  UnarchiveInvoiceResponse,\n  UpdateInvoice,\n  UpdateInvoiceApplicationErrors,\n  UpdateInvoiceValidationErrors,\n  VoidInvoiceApplicationErrors,\n  VoidInvoiceResponse,\n  archiveInvoice as universalArchiveInvoice,\n  bulkCreateInvoices as universalBulkCreateInvoices,\n  bulkDeleteInvoices as universalBulkDeleteInvoices,\n  bulkUpdateInvoiceTags as universalBulkUpdateInvoiceTags,\n  bulkUpdateInvoiceTagsByFilter as universalBulkUpdateInvoiceTagsByFilter,\n  bulkUpdateInvoices as universalBulkUpdateInvoices,\n  calculateInvoice as universalCalculateInvoice,\n  createInvoice as universalCreateInvoice,\n  deleteInvoice as universalDeleteInvoice,\n  enableInvoicePayments as universalEnableInvoicePayments,\n  generatePdfDocument as universalGeneratePdfDocument,\n  generateReceipt as universalGenerateReceipt,\n  getInvoice as universalGetInvoice,\n  getLatestInvoiceNumber as universalGetLatestInvoiceNumber,\n  initiatePayment as universalInitiatePayment,\n  markInvoiceAsSent as universalMarkInvoiceAsSent,\n  markInvoiceAsViewed as universalMarkInvoiceAsViewed,\n  publishInvoice as universalPublishInvoice,\n  queryInvoices as universalQueryInvoices,\n  searchInvoices as universalSearchInvoices,\n  sendInvoice as universalSendInvoice,\n  typedQueryInvoices as universalTypedQueryInvoices,\n  unarchiveInvoice as universalUnarchiveInvoice,\n  updateInvoice as universalUpdateInvoice,\n  voidInvoice as universalVoidInvoice,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/get-paid' };\n\nexport function createInvoice(httpClient: HttpClient): CreateInvoiceSignature {\n  return (\n    invoice: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.lineItemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.code`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >\n  ) =>\n    universalCreateInvoice(\n      invoice,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CreateInvoiceSignature {\n  /**\n   * Creates an invoice.\n   *\n   *\n   * To create multiple invoices in a single API call, call [Bulk Create Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-create-invoices).\n   * @param - Invoice to create.\n   * @returns Created invoice.\n   */\n  (\n    invoice: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.lineItemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.code`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >\n  ): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.migratedReference.limitActions`\n      | `reference.autoChargeReference.limitActions`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.lineItemType`\n      | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `discounts.${number}.appliedAmount`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `payments.${number}.cashRounding.roundingAmount`\n      | `payments.${number}.cashRounding.unroundedAmount`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `presetProperties.invoicePreset.defaultPreset`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `activityInfo.sentToContactIds`\n      | `hasSubscriptions`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: CreateInvoiceApplicationErrors;\n      __validationErrorsType?: CreateInvoiceValidationErrors;\n    }\n  >;\n}\n\nexport function getInvoice(httpClient: HttpClient): GetInvoiceSignature {\n  return (invoiceId: string) =>\n    universalGetInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetInvoiceSignature {\n  /**\n   * Retrieves an invoice.\n   * @param - Invoice ID.\n   * @returns Retrieved invoice.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.migratedReference.limitActions`\n      | `reference.autoChargeReference.limitActions`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.lineItemType`\n      | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `discounts.${number}.appliedAmount`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `payments.${number}.cashRounding.roundingAmount`\n      | `payments.${number}.cashRounding.unroundedAmount`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `presetProperties.invoicePreset.defaultPreset`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `activityInfo.sentToContactIds`\n      | `hasSubscriptions`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: GetInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function updateInvoice(httpClient: HttpClient): UpdateInvoiceSignature {\n  return (\n    _id: string,\n    invoice: NonNullablePaths<\n      UpdateInvoice,\n      `lineItems.${number}.customItem.name` | `revision`,\n      5\n    >\n  ) =>\n    universalUpdateInvoice(\n      _id,\n      invoice,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UpdateInvoiceSignature {\n  /**\n   * Updates an invoice.\n   *\n   *\n   * To update multiple invoices in a single API call, call [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices).\n   * @param - Invoice ID.\n   * @returns Updated invoice.\n   */\n  (\n    _id: string,\n    invoice: NonNullablePaths<\n      UpdateInvoice,\n      `lineItems.${number}.customItem.name` | `revision`,\n      5\n    >\n  ): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.migratedReference.limitActions`\n      | `reference.autoChargeReference.limitActions`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.lineItemType`\n      | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `discounts.${number}.appliedAmount`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `payments.${number}.cashRounding.roundingAmount`\n      | `payments.${number}.cashRounding.unroundedAmount`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `presetProperties.invoicePreset.defaultPreset`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `activityInfo.sentToContactIds`\n      | `hasSubscriptions`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: UpdateInvoiceApplicationErrors;\n      __validationErrorsType?: UpdateInvoiceValidationErrors;\n    }\n  >;\n}\n\nexport function deleteInvoice(httpClient: HttpClient): DeleteInvoiceSignature {\n  return (invoiceId: string) =>\n    universalDeleteInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface DeleteInvoiceSignature {\n  /**\n   * Deletes an invoice.\n   *\n   *\n   * Deleting an invoice permanently removes it from the invoice list. Only invoices in `DRAFT` status can be deleted.\n   *\n   * To delete multiple invoices in a single API call, call [Bulk Delete Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-delete-invoices).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    void & {\n      __applicationErrorsType?: DeleteInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function queryInvoices(httpClient: HttpClient): QueryInvoicesSignature {\n  return () =>\n    universalQueryInvoices(\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryInvoicesSignature {\n  /**\n   * Retrieves a list of up to 1,000 invoices, given the provided paging, filtering, and sorting.\n   *\n   *\n   * Query Invoices runs with these defaults, which you can override:\n   *\n   * - `createdDate` is sorted in `DESC` order\n   * - `paging.limit` is `50`\n   * - `paging.offset` is `0`\n   *\n   * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n   */\n  (): InvoicesQueryBuilder;\n}\n\nexport function typedQueryInvoices(\n  httpClient: HttpClient\n): TypedQueryInvoicesSignature {\n  return (query: InvoiceQuery) =>\n    universalTypedQueryInvoices(\n      query,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface TypedQueryInvoicesSignature {\n  /** */\n  (query: InvoiceQuery): Promise<\n    NonNullablePaths<\n      QueryInvoicesResponse,\n      | `invoices`\n      | `invoices.${number}.status`\n      | `invoices.${number}.sourceReference.appId`\n      | `invoices.${number}.reference.standaloneReference.limitActions`\n      | `invoices.${number}.reference.orderReference.orderId`\n      | `invoices.${number}.reference.migratedReference.limitActions`\n      | `invoices.${number}.reference.autoChargeReference.limitActions`\n      | `invoices.${number}.reference.referenceType`\n      | `invoices.${number}.regionalProperties.locale.languageCode`\n      | `invoices.${number}.regionalProperties.language`\n      | `invoices.${number}.numbering.displayNumber`\n      | `invoices.${number}.currency`\n      | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n      | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n      | `invoices.${number}.deposit.fixedDeposit`\n      | `invoices.${number}.deposit.percentageDeposit`\n      | `invoices.${number}.deposit.depositType`\n      | `invoices.${number}.taxInfo.taxExempt`\n      | `invoices.${number}.totals.subtotal`\n      | `invoices.${number}.totals.total`\n      | `invoices.${number}.totals.paidAmount`\n      | `invoices.${number}.totals.balance`\n      | `invoices.${number}.archived`\n      | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n      | `invoices.${number}.presetProperties.invoicePreset.name`\n      | `invoices.${number}.presetProperties.invoicePreset.defaultPreset`\n      | `invoices.${number}.documentInfo.status`\n      | `invoices.${number}.links.relativePath`\n      | `invoices.${number}.businessLocation._id`\n      | `invoices.${number}.hasSubscriptions`,\n      6\n    > & {\n      __applicationErrorsType?: QueryInvoicesApplicationErrors;\n    }\n  >;\n}\n\nexport function searchInvoices(\n  httpClient: HttpClient\n): SearchInvoicesSignature {\n  return (search: InvoiceSearch) =>\n    universalSearchInvoices(\n      search,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface SearchInvoicesSignature {\n  /**\n   * Retrieves a list of up to 100 invoices, given the provided filtering, search expression, sorting, and cursor paging.\n   *\n   *\n   * Unlike [Query Invoices], Search Invoices supports free-text search across fields like `title`, `numbering.displayNumber`, and customer contact details. It also returns aggregation data.\n   * @param - Search options.\n   */\n  (search: InvoiceSearch): Promise<\n    NonNullablePaths<\n      SearchInvoicesResponse,\n      | `invoices`\n      | `invoices.${number}.status`\n      | `invoices.${number}.sourceReference.appId`\n      | `invoices.${number}.reference.standaloneReference.limitActions`\n      | `invoices.${number}.reference.orderReference.orderId`\n      | `invoices.${number}.reference.migratedReference.limitActions`\n      | `invoices.${number}.reference.autoChargeReference.limitActions`\n      | `invoices.${number}.reference.referenceType`\n      | `invoices.${number}.regionalProperties.locale.languageCode`\n      | `invoices.${number}.regionalProperties.language`\n      | `invoices.${number}.numbering.displayNumber`\n      | `invoices.${number}.currency`\n      | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n      | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n      | `invoices.${number}.deposit.fixedDeposit`\n      | `invoices.${number}.deposit.percentageDeposit`\n      | `invoices.${number}.deposit.depositType`\n      | `invoices.${number}.taxInfo.taxExempt`\n      | `invoices.${number}.totals.subtotal`\n      | `invoices.${number}.totals.total`\n      | `invoices.${number}.totals.paidAmount`\n      | `invoices.${number}.totals.balance`\n      | `invoices.${number}.archived`\n      | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n      | `invoices.${number}.presetProperties.invoicePreset.name`\n      | `invoices.${number}.presetProperties.invoicePreset.defaultPreset`\n      | `invoices.${number}.documentInfo.status`\n      | `invoices.${number}.links.relativePath`\n      | `invoices.${number}.businessLocation._id`\n      | `invoices.${number}.hasSubscriptions`\n      | `aggregationData.results`\n      | `aggregationData.results.${number}.scalar.type`\n      | `aggregationData.results.${number}.scalar.value`\n      | `aggregationData.results.${number}.name`\n      | `aggregationData.results.${number}.type`\n      | `aggregationData.results.${number}.fieldPath`,\n      6\n    >\n  >;\n}\n\nexport function sendInvoice(httpClient: HttpClient): SendInvoiceSignature {\n  return (invoiceId: string, options?: SendInvoiceOptions) =>\n    universalSendInvoice(\n      invoiceId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface SendInvoiceSignature {\n  /**\n   * Sends an invoice to one or more contacts.\n   *\n   *\n   * Specify `contactIds` in the request to choose recipients. If `contactIds` isn't provided, the invoice is sent to the customer contact on the invoice.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string, options?: SendInvoiceOptions): Promise<\n    NonNullablePaths<\n      SendInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`\n      | `sendResults`\n      | `sendResults.${number}.contactId`\n      | `sendResults.${number}.success`\n      | `sendResults.${number}.errorType`,\n      8\n    > & {\n      __applicationErrorsType?: SendInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function publishInvoice(\n  httpClient: HttpClient\n): PublishInvoiceSignature {\n  return (invoiceId: string) =>\n    universalPublishInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface PublishInvoiceSignature {\n  /**\n   * Publishes an invoice.\n   *\n   *\n   * Transitions the invoice status from `DRAFT` to `PUBLISHED`, finalizing it and assigning an invoice number. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      PublishInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: PublishInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function voidInvoice(httpClient: HttpClient): VoidInvoiceSignature {\n  return (invoiceId: string) =>\n    universalVoidInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface VoidInvoiceSignature {\n  /**\n   * Voids an invoice.\n   *\n   *\n   * Transitions the invoice status to `VOIDED`, canceling it and making it no longer valid. Any payments made before voiding are preserved for the audit trail. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      VoidInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: VoidInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function archiveInvoice(\n  httpClient: HttpClient\n): ArchiveInvoiceSignature {\n  return (invoiceId: string) =>\n    universalArchiveInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface ArchiveInvoiceSignature {\n  /**\n   * Archives an invoice.\n   *\n   *\n   * Use archiving to filter and organize invoices. Archiving is available for all statuses except `DRAFT`.\n   *\n   * To remove an invoice from the archive, call [Unarchive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/unarchive-invoice).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      ArchiveInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: ArchiveInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function unarchiveInvoice(\n  httpClient: HttpClient\n): UnarchiveInvoiceSignature {\n  return (invoiceId: string) =>\n    universalUnarchiveInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UnarchiveInvoiceSignature {\n  /**\n   * Unarchives an invoice.\n   *\n   *\n   * Removes the invoice from the archived state. To archive an invoice, call [Archive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/archive-invoice).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      UnarchiveInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: UnarchiveInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function initiatePayment(\n  httpClient: HttpClient\n): InitiatePaymentSignature {\n  return (invoiceId: string) =>\n    universalInitiatePayment(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface InitiatePaymentSignature {\n  /**\n   * Initiates payment for an invoice.\n   *\n   *\n   * Creates a Wix eCommerce order if one doesn't exist, generates a payment request, and returns a checkout URL for the customer.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<InitiatePaymentResponse, `url` | `paymentRequestId`, 2> & {\n      __applicationErrorsType?: InitiatePaymentApplicationErrors;\n    }\n  >;\n}\n\nexport function enableInvoicePayments(\n  httpClient: HttpClient\n): EnableInvoicePaymentsSignature {\n  return (invoiceId: string) =>\n    universalEnableInvoicePayments(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface EnableInvoicePaymentsSignature {\n  /**\n   * Enables payments for an invoice.\n   *\n   *\n   * Use this to record manual (offline) or MOTO (Mail Order/Telephone Order) payments against an invoice. Creates a Wix eCommerce order if one doesn't exist, which enables payment recording against the invoice. To generate a checkout URL for online payment instead, call [Initiate Payment](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/initiate-payment).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<EnableInvoicePaymentsResponse, `orderId`, 2> & {\n      __applicationErrorsType?: EnableInvoicePaymentsApplicationErrors;\n    }\n  >;\n}\n\nexport function generatePdfDocument(\n  httpClient: HttpClient\n): GeneratePdfDocumentSignature {\n  return (invoiceId: string) =>\n    universalGeneratePdfDocument(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GeneratePdfDocumentSignature {\n  /**\n   * Generates a PDF document for an invoice.\n   *\n   *\n   * PDF generation is asynchronous. Poll the invoice using [Get Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/get-invoice) and check `documentInfo.status` until it's `AVAILABLE`, then use `documentInfo.downloadUrl` to access the file.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      GeneratePdfDocumentResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: GeneratePdfDocumentApplicationErrors;\n    }\n  >;\n}\n\nexport function markInvoiceAsViewed(\n  httpClient: HttpClient\n): MarkInvoiceAsViewedSignature {\n  return (invoiceId: string) =>\n    universalMarkInvoiceAsViewed(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface MarkInvoiceAsViewedSignature {\n  /**\n   * Marks an invoice as viewed.\n   *\n   *\n   * Adds the `VIEWED` status qualifier to the invoice and records the view timestamp in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      MarkInvoiceAsViewedResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    >\n  >;\n}\n\nexport function markInvoiceAsSent(\n  httpClient: HttpClient\n): MarkInvoiceAsSentSignature {\n  return (invoiceId: string) =>\n    universalMarkInvoiceAsSent(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface MarkInvoiceAsSentSignature {\n  /**\n   * Marks an invoice as sent.\n   *\n   *\n   * Adds the `SENT` status qualifier to the invoice and records the send timestamp and recipient in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      MarkInvoiceAsSentResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    >\n  >;\n}\n\nexport function calculateInvoice(\n  httpClient: HttpClient\n): CalculateInvoiceSignature {\n  return (\n    invoice: NonNullablePaths<\n      Invoice,\n      `reference` | `reference.referenceType`,\n      3\n    >,\n    options?: CalculateInvoiceOptions\n  ) =>\n    universalCalculateInvoice(\n      invoice,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CalculateInvoiceSignature {\n  /**\n   * Calculates totals, taxes, and available shipping options for a standalone invoice. Supports both custom and catalog line items.\n   *\n   *\n   * Use this method before creating or updating an invoice to preview calculated values. Pass the returned `correlationId` in subsequent calculations to optimize incremental recalculations.\n   * @param - Invoice to calculate.\n   */\n  (\n    invoice: NonNullablePaths<\n      Invoice,\n      `reference` | `reference.referenceType`,\n      3\n    >,\n    options?: CalculateInvoiceOptions\n  ): Promise<\n    NonNullablePaths<\n      CalculateInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.migratedReference.limitActions`\n      | `invoice.reference.autoChargeReference.limitActions`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.lineItemType`\n      | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.discounts.${number}.appliedAmount`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.payments.${number}.cashRounding.roundingAmount`\n      | `invoice.payments.${number}.cashRounding.unroundedAmount`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n      | `invoice.presetProperties.invoicePreset.defaultPreset`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.activityInfo.sentToContactIds`\n      | `invoice.hasSubscriptions`\n      | `invoice.tags.privateTags.tagIds`\n      | `shipmentOptions`\n      | `shipmentOptions.${number}.logistics.pickupDetails.pickupMethod`\n      | `calculationErrors.generalShippingCalculationError.applicationError.code`\n      | `calculationErrors.generalShippingCalculationError.applicationError.description`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.field`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.description`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.violatedRule`\n      | `calculationErrors.carrierErrors.errors`\n      | `calculationErrors.carrierErrors.errors.${number}.carrierId`\n      | `correlationId`,\n      8\n    > & {\n      __applicationErrorsType?: CalculateInvoiceApplicationErrors;\n    }\n  >;\n}\n\nexport function getLatestInvoiceNumber(\n  httpClient: HttpClient\n): GetLatestInvoiceNumberSignature {\n  return (options?: GetLatestInvoiceNumberOptions) =>\n    universalGetLatestInvoiceNumber(\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetLatestInvoiceNumberSignature {\n  /**\n   * Retrieves the highest invoice number currently in use.\n   *\n   *\n   * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n   */\n  (\n    options?: GetLatestInvoiceNumberOptions\n  ): Promise<GetLatestInvoiceNumberResponse>;\n}\n\nexport function generateReceipt(\n  httpClient: HttpClient\n): GenerateReceiptSignature {\n  return (invoiceId: string, paymentId: string) =>\n    universalGenerateReceipt(\n      invoiceId,\n      paymentId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GenerateReceiptSignature {\n  /**\n   * Generates a receipt document for a specific payment on an invoice. Requires the `paymentId` of a confirmed payment on the invoice.\n   * @param - Invoice ID.\n   * @param - Payment ID.\n   */\n  (invoiceId: string, paymentId: string): Promise<\n    NonNullablePaths<GenerateReceiptResponse, `receiptId`, 2>\n  >;\n}\n\nexport function bulkCreateInvoices(\n  httpClient: HttpClient\n): BulkCreateInvoicesSignature {\n  return (\n    invoices: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.lineItemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.code`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >[],\n    options?: BulkCreateInvoicesOptions\n  ) =>\n    universalBulkCreateInvoices(\n      invoices,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkCreateInvoicesSignature {\n  /**\n   * Creates multiple invoices.\n   *\n   *\n   * To create a single invoice, call [Create Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/create-invoice).\n   * @param - Invoices to create.\n   */\n  (\n    invoices: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.lineItemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.code`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >[],\n    options?: BulkCreateInvoicesOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkCreateInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.status`\n      | `results.${number}.item.sourceReference.appId`\n      | `results.${number}.item.reference.referenceType`\n      | `results.${number}.item.regionalProperties.language`\n      | `results.${number}.item.numbering.displayNumber`\n      | `results.${number}.item.currency`\n      | `results.${number}.item.deposit.fixedDeposit`\n      | `results.${number}.item.deposit.percentageDeposit`\n      | `results.${number}.item.deposit.depositType`\n      | `results.${number}.item.taxInfo.taxExempt`\n      | `results.${number}.item.totals.subtotal`\n      | `results.${number}.item.totals.total`\n      | `results.${number}.item.totals.paidAmount`\n      | `results.${number}.item.totals.balance`\n      | `results.${number}.item.archived`\n      | `results.${number}.item.documentInfo.status`\n      | `results.${number}.item.links.relativePath`\n      | `results.${number}.item.businessLocation._id`\n      | `results.${number}.item.hasSubscriptions`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkCreateInvoicesApplicationErrors;\n      __validationErrorsType?: BulkCreateInvoicesValidationErrors;\n    }\n  >;\n}\n\nexport function bulkUpdateInvoices(\n  httpClient: HttpClient\n): BulkUpdateInvoicesSignature {\n  return (\n    invoices: NonNullablePaths<\n      MaskedInvoice,\n      | `invoice`\n      | `invoice._id`\n      | `invoice.lineItems.${number}.customItem.name`\n      | `invoice.revision`,\n      6\n    >[],\n    options?: BulkUpdateInvoicesOptions\n  ) =>\n    universalBulkUpdateInvoices(\n      invoices,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoicesSignature {\n  /**\n   * Updates multiple invoices.\n   *\n   *\n   * To update a single invoice, call [Update Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/update-invoice).\n   * @param - Invoices to update.\n   */\n  (\n    invoices: NonNullablePaths<\n      MaskedInvoice,\n      | `invoice`\n      | `invoice._id`\n      | `invoice.lineItems.${number}.customItem.name`\n      | `invoice.revision`,\n      6\n    >[],\n    options?: BulkUpdateInvoicesOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.status`\n      | `results.${number}.item.sourceReference.appId`\n      | `results.${number}.item.reference.referenceType`\n      | `results.${number}.item.regionalProperties.language`\n      | `results.${number}.item.numbering.displayNumber`\n      | `results.${number}.item.currency`\n      | `results.${number}.item.deposit.fixedDeposit`\n      | `results.${number}.item.deposit.percentageDeposit`\n      | `results.${number}.item.deposit.depositType`\n      | `results.${number}.item.taxInfo.taxExempt`\n      | `results.${number}.item.totals.subtotal`\n      | `results.${number}.item.totals.total`\n      | `results.${number}.item.totals.paidAmount`\n      | `results.${number}.item.totals.balance`\n      | `results.${number}.item.archived`\n      | `results.${number}.item.documentInfo.status`\n      | `results.${number}.item.links.relativePath`\n      | `results.${number}.item.businessLocation._id`\n      | `results.${number}.item.hasSubscriptions`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkUpdateInvoicesApplicationErrors;\n      __validationErrorsType?: BulkUpdateInvoicesValidationErrors;\n    }\n  >;\n}\n\nexport function bulkDeleteInvoices(\n  httpClient: HttpClient\n): BulkDeleteInvoicesSignature {\n  return (invoiceIds: string[]) =>\n    universalBulkDeleteInvoices(\n      invoiceIds,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkDeleteInvoicesSignature {\n  /**\n   * Deletes multiple invoices.\n   *\n   *\n   * To delete a single invoice, call [Delete Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/delete-invoice).\n   * @param - IDs of invoices to delete.\n   */\n  (invoiceIds: string[]): Promise<\n    NonNullablePaths<\n      BulkDeleteInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    >\n  >;\n}\n\nexport function bulkUpdateInvoiceTags(\n  httpClient: HttpClient\n): BulkUpdateInvoiceTagsSignature {\n  return (invoiceIds: string[], options?: BulkUpdateInvoiceTagsOptions) =>\n    universalBulkUpdateInvoiceTags(\n      invoiceIds,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoiceTagsSignature {\n  /**\n   * Adds or removes tags on multiple invoices. Tags are labels used to organize and filter invoices — they can be public (visible to anyone with access to the invoice) or private (restricted to site owners).\n   *\n   * Unlike [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices), which replaces fields entirely, this method lets you specify individual tags to assign or unassign without affecting other existing tags. A tag that appears in both the list to assign and the list to unassign is assigned. Tags that don't exist are ignored.\n   *\n   * To update tags on all invoices matching a filter, call [Bulk Update Invoice Tags By Filter](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags-by-filter).\n   * @param - IDs of invoices to update tags for.\n   */\n  (invoiceIds: string[], options?: BulkUpdateInvoiceTagsOptions): Promise<\n    NonNullablePaths<\n      BulkUpdateInvoiceTagsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkUpdateInvoiceTagsApplicationErrors;\n    }\n  >;\n}\n\nexport function bulkUpdateInvoiceTagsByFilter(\n  httpClient: HttpClient\n): BulkUpdateInvoiceTagsByFilterSignature {\n  return (\n    filter: Record<string, any>,\n    options?: BulkUpdateInvoiceTagsByFilterOptions\n  ) =>\n    universalBulkUpdateInvoiceTagsByFilter(\n      filter,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoiceTagsByFilterSignature {\n  /**\n   * Asynchronously updates tags on multiple invoices that match the provided filter criteria.\n   *\n   *\n   * To check the status of the bulk update, pass the returned `jobId` to [Get Async Job](https://dev.wix.com/docs/api-reference/business-management/async-job/get-async-job).\n   *\n   * To update tags on specific invoices by ID, call [Bulk Update Invoice Tags](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags).\n   * @param - Filter for selecting invoices to update.\n   */\n  (\n    filter: Record<string, any>,\n    options?: BulkUpdateInvoiceTagsByFilterOptions\n  ): Promise<\n    NonNullablePaths<BulkUpdateInvoiceTagsByFilterResponse, `jobId`, 2> & {\n      __applicationErrorsType?: BulkUpdateInvoiceTagsByFilterApplicationErrors;\n    }\n  >;\n}\n\nexport const onInvoiceCreated = /*#__PURE__*/ EventDefinition(\n  'wix.invoices.invoices.v4.invoice_created',\n  true,\n  (event: InvoiceCreatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.issueDate' },\n            { path: 'entity.dueDate' },\n            { path: 'entity.lineItems.customItem.subscriptionInfo.startDate' },\n            { path: 'entity.lineItems.catalogItem.subscriptionInfo.startDate' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.from' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.to' },\n            { path: 'entity.payments.createdDate' },\n            { path: 'entity.payments.updatedDate' },\n            { path: 'entity.payments.paymentDate' },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            { path: 'entity.presetProperties.invoicePreset.createdDate' },\n            { path: 'entity.presetProperties.invoicePreset.updatedDate' },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'entity.documentInfo.documentExpirationDate' },\n            { path: 'entity.activityInfo.lastSentDate' },\n            { path: 'entity.activityInfo.lastViewedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'entity.customerInfo.billingAddress' },\n            { path: 'entity.shippingInfo.shippingAddress' },\n            { path: 'entity.businessDetails.address' },\n            { path: 'entity.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: [\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n          ],\n        },\n      ])\n    )\n)<InvoiceCreatedEnvelope>();\nexport const onInvoiceDeleted = /*#__PURE__*/ EventDefinition(\n  'wix.invoices.invoices.v4.invoice_deleted',\n  true,\n  (event: InvoiceDeletedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.issueDate' },\n            { path: 'entity.dueDate' },\n            { path: 'entity.lineItems.customItem.subscriptionInfo.startDate' },\n            { path: 'entity.lineItems.catalogItem.subscriptionInfo.startDate' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.from' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.to' },\n            { path: 'entity.payments.createdDate' },\n            { path: 'entity.payments.updatedDate' },\n            { path: 'entity.payments.paymentDate' },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            { path: 'entity.presetProperties.invoicePreset.createdDate' },\n            { path: 'entity.presetProperties.invoicePreset.updatedDate' },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'entity.documentInfo.documentExpirationDate' },\n            { path: 'entity.activityInfo.lastSentDate' },\n            { path: 'entity.activityInfo.lastViewedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'entity.customerInfo.billingAddress' },\n            { path: 'entity.shippingInfo.shippingAddress' },\n            { path: 'entity.businessDetails.address' },\n            { path: 'entity.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: [\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n          ],\n        },\n      ])\n    )\n)<InvoiceDeletedEnvelope>();\nexport const onInvoiceSent = /*#__PURE__*/ EventDefinition(\n  'wix.invoices.invoices.v4.invoice_invoice_sent',\n  true,\n  (event: InvoiceSentEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'data.invoice.createdDate' },\n            { path: 'data.invoice.updatedDate' },\n            { path: 'data.invoice.issueDate' },\n            { path: 'data.invoice.dueDate' },\n            {\n              path: 'data.invoice.lineItems.customItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'data.invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'data.invoice.shipmentInfo.logistics.deliveryTimeSlot.from',\n            },\n            { path: 'data.invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n            { path: 'data.invoice.payments.createdDate' },\n            { path: 'data.invoice.payments.updatedDate' },\n            { path: 'data.invoice.payments.paymentDate' },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            { path: 'data.invoice.presetProperties.invoicePreset.createdDate' },\n            { path: 'data.invoice.presetProperties.invoicePreset.updatedDate' },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'data.invoice.documentInfo.documentExpirationDate' },\n            { path: 'data.invoice.activityInfo.lastSentDate' },\n            { path: 'data.invoice.activityInfo.lastViewedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'data.invoice.customerInfo.billingAddress' },\n            { path: 'data.invoice.shippingInfo.shippingAddress' },\n            { path: 'data.invoice.businessDetails.address' },\n            {\n              path: 'data.invoice.shipmentInfo.logistics.pickupDetails.address',\n            },\n          ],\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: [\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n          ],\n        },\n      ])\n    )\n)<InvoiceSentEnvelope>();\nexport const onInvoiceTagsModified = /*#__PURE__*/ EventDefinition(\n  'wix.invoices.invoices.v4.invoice_tags_modified',\n  true,\n  (event: InvoiceTagsModifiedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'data.invoice.createdDate' },\n            { path: 'data.invoice.updatedDate' },\n            { path: 'data.invoice.issueDate' },\n            { path: 'data.invoice.dueDate' },\n            {\n              path: 'data.invoice.lineItems.customItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'data.invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'data.invoice.shipmentInfo.logistics.deliveryTimeSlot.from',\n            },\n            { path: 'data.invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n            { path: 'data.invoice.payments.createdDate' },\n            { path: 'data.invoice.payments.updatedDate' },\n            { path: 'data.invoice.payments.paymentDate' },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            { path: 'data.invoice.presetProperties.invoicePreset.createdDate' },\n            { path: 'data.invoice.presetProperties.invoicePreset.updatedDate' },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'data.invoice.documentInfo.documentExpirationDate' },\n            { path: 'data.invoice.activityInfo.lastSentDate' },\n            { path: 'data.invoice.activityInfo.lastViewedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'data.invoice.customerInfo.billingAddress' },\n            { path: 'data.invoice.shippingInfo.shippingAddress' },\n            { path: 'data.invoice.businessDetails.address' },\n            {\n              path: 'data.invoice.shipmentInfo.logistics.pickupDetails.address',\n            },\n          ],\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: [\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'data.invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'data.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n          ],\n        },\n      ])\n    )\n)<InvoiceTagsModifiedEnvelope>();\nexport const onInvoiceUpdated = /*#__PURE__*/ EventDefinition(\n  'wix.invoices.invoices.v4.invoice_updated',\n  true,\n  (event: InvoiceUpdatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'entity.issueDate' },\n            { path: 'entity.dueDate' },\n            { path: 'entity.lineItems.customItem.subscriptionInfo.startDate' },\n            { path: 'entity.lineItems.catalogItem.subscriptionInfo.startDate' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.from' },\n            { path: 'entity.shipmentInfo.logistics.deliveryTimeSlot.to' },\n            { path: 'entity.payments.createdDate' },\n            { path: 'entity.payments.updatedDate' },\n            { path: 'entity.payments.paymentDate' },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            { path: 'entity.presetProperties.invoicePreset.createdDate' },\n            { path: 'entity.presetProperties.invoicePreset.updatedDate' },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'entity.documentInfo.documentExpirationDate' },\n            { path: 'entity.activityInfo.lastSentDate' },\n            { path: 'entity.activityInfo.lastViewedDate' },\n            { path: 'metadata.eventTime' },\n            { path: 'modifiedFields.createdDate' },\n            { path: 'modifiedFields.updatedDate' },\n            { path: 'modifiedFields.issueDate' },\n            { path: 'modifiedFields.dueDate' },\n            {\n              path: 'modifiedFields.lineItems.customItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'modifiedFields.lineItems.catalogItem.subscriptionInfo.startDate',\n            },\n            {\n              path: 'modifiedFields.shipmentInfo.logistics.deliveryTimeSlot.from',\n            },\n            {\n              path: 'modifiedFields.shipmentInfo.logistics.deliveryTimeSlot.to',\n            },\n            { path: 'modifiedFields.payments.createdDate' },\n            { path: 'modifiedFields.payments.updatedDate' },\n            { path: 'modifiedFields.payments.paymentDate' },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.metadata.createdTimestamp',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.metadata.updatedTimestamp',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.createdDate',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.updatedDate',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n            },\n            { path: 'modifiedFields.documentInfo.documentExpirationDate' },\n            { path: 'modifiedFields.activityInfo.lastSentDate' },\n            { path: 'modifiedFields.activityInfo.lastViewedDate' },\n          ],\n        },\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'entity.customerInfo.billingAddress' },\n            { path: 'entity.shippingInfo.shippingAddress' },\n            { path: 'entity.businessDetails.address' },\n            { path: 'entity.shipmentInfo.logistics.pickupDetails.address' },\n            { path: 'modifiedFields.customerInfo.billingAddress' },\n            { path: 'modifiedFields.shippingInfo.shippingAddress' },\n            { path: 'modifiedFields.businessDetails.address' },\n            {\n              path: 'modifiedFields.shipmentInfo.logistics.pickupDetails.address',\n            },\n          ],\n        },\n        {\n          transformFn: transformRESTFloatToSDKFloat,\n          paths: [\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'entity.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.imageData.image.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.imageData.crop.x',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.imageData.crop.y',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.imageData.crop.width',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.imageData.crop.height',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.videoData.video.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.tocData.fontSize',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'modifiedFields.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n            },\n            {\n              path: 'modifiedFields.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n            },\n          ],\n        },\n      ])\n    )\n)<InvoiceUpdatedEnvelope>();\n\nexport {\n  AccountInfo,\n  AccountInfoMetadata,\n  Action,\n  ActionEvent,\n  ActivityInfo,\n  AddPaymentRequest,\n  AddPaymentResponse,\n  AdditionalFee,\n  AdditionalFeeSource,\n  Address,\n  AddressLocation,\n  Aggregation,\n  AggregationData,\n  AggregationKindOneOf,\n  AggregationResults,\n  AggregationResultsResultOneOf,\n  AggregationResultsScalarResult,\n  AggregationType,\n  Alignment,\n  AnchorData,\n  Animation,\n  AppEmbedData,\n  AppEmbedDataAppDataOneOf,\n  AppType,\n  ApplicationError,\n  ArchiveInvoiceRequest,\n  ArchiveInvoiceResponse,\n  AspectRatio,\n  Attachment,\n  AudioData,\n  AutoCharge,\n  Backdrop,\n  BackdropType,\n  Background,\n  BackgroundGradient,\n  BackgroundImage,\n  BackgroundType,\n  Banner,\n  BannerPosition,\n  BaseEventMetadata,\n  BlockquoteData,\n  BookingData,\n  Border,\n  BorderColors,\n  BorderWidths,\n  BulkActionMetadata,\n  BulkCreateInvoicesOptions,\n  BulkCreateInvoicesRequest,\n  BulkCreateInvoicesResponse,\n  BulkDeleteInvoicesRequest,\n  BulkDeleteInvoicesResponse,\n  BulkDeleteInvoicesResponseBulkInvoiceResult,\n  BulkInvoiceResult,\n  BulkUpdateInvoiceTagsByFilterOptions,\n  BulkUpdateInvoiceTagsByFilterRequest,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsRequest,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoiceTagsResult,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoicesRequest,\n  BulkUpdateInvoicesResponse,\n  BulkUpdateInvoicesResponseBulkInvoiceResult,\n  BulletedListData,\n  BusinessDetails,\n  BusinessDisplayOptions,\n  BusinessLocation,\n  ButtonData,\n  ButtonDataType,\n  ButtonStyles,\n  CalculateInvoiceOptions,\n  CalculateInvoiceRequest,\n  CalculateInvoiceResponse,\n  CalculationErrors,\n  CalculationErrorsShippingCalculationErrorOneOf,\n  CaptionData,\n  CardData,\n  CardDataBackground,\n  CardDataBackgroundType,\n  CardStyles,\n  CardStylesType,\n  CarrierError,\n  CarrierErrors,\n  CashRounding,\n  CatalogItem,\n  CatalogReference,\n  CellStyle,\n  CheckboxListData,\n  CodeBlockData,\n  CollapsibleListData,\n  ColorData,\n  Colors,\n  ColumnSize,\n  ConvertInvoiceRequest,\n  ConvertInvoiceResponse,\n  CreateInvoiceRequest,\n  CreateInvoiceResponse,\n  CreditCardDetails,\n  Crop,\n  CursorPaging,\n  CursorPagingMetadata,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  CursorSearch,\n  CursorSearchPagingMethodOneOf,\n  Cursors,\n  CustomField,\n  CustomFieldPlaceholder,\n  CustomFields,\n  CustomItem,\n  CustomerDisplayOptions,\n  CustomerInfo,\n  Cycle,\n  CycleCycleOptionsOneOf,\n  DateHistogramAggregation,\n  DateHistogramResult,\n  DateHistogramResults,\n  Decoration,\n  DecorationDataOneOf,\n  DecorationType,\n  DeleteInvoiceRequest,\n  DeleteInvoiceResponse,\n  DeliveryLogistics,\n  DeliveryLogisticsOption,\n  DeliveryTimeSlot,\n  Deposit,\n  DepositDepositOptionsOneOf,\n  DepositType,\n  Design,\n  DesignTarget,\n  Details,\n  DetailsKindOneOf,\n  Dimensions,\n  Direction,\n  Discount,\n  DiscountDiscountOptionsOneOf,\n  DiscountType,\n  DisplaySettings,\n  DisplayValues,\n  DividerData,\n  DividerDataAlignment,\n  DividerDataStyles,\n  DocumentInfo,\n  DocumentStatus,\n  DocumentStyle,\n  DomainCustomField,\n  DomainCustomFields,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EmbedData,\n  Empty,\n  EnableInvoicePaymentsRequest,\n  EnableInvoicePaymentsResponse,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  EntranceAnimation,\n  EntranceEffect,\n  EntranceEffectType,\n  ErrorType,\n  EventData,\n  EventMetadata,\n  ExternalReceipt,\n  Failed,\n  FieldViolation,\n  FileData,\n  FileSource,\n  FileSourceDataOneOf,\n  FileState,\n  FontFamilyData,\n  FontSizeData,\n  FontType,\n  FooterContent,\n  FullAddressContactDetails,\n  GIF,\n  GIFData,\n  GIFType,\n  GalleryData,\n  GalleryOptions,\n  GalleryOptionsLayout,\n  GeneratePdfDocumentRequest,\n  GeneratePdfDocumentResponse,\n  GenerateReceiptRequest,\n  GenerateReceiptResponse,\n  GetInvoiceRequest,\n  GetInvoiceResponse,\n  GetLatestInvoiceNumberOptions,\n  GetLatestInvoiceNumberRequest,\n  GetLatestInvoiceNumberResponse,\n  GiftCardPaymentDetails,\n  Gradient,\n  GradientType,\n  GroupByAggregation,\n  GroupByAggregationKindOneOf,\n  GroupByValueResults,\n  HTMLData,\n  HTMLDataDataOneOf,\n  HeadingData,\n  Height,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  IllegalActionErrorData,\n  Image,\n  ImageData,\n  ImageDataCrop,\n  ImageDataStyles,\n  ImagePosition,\n  ImagePositionPosition,\n  ImageScalingScaling,\n  ImageStyles,\n  IncludeMissingValuesOptions,\n  Indentation,\n  InitialExpandedItems,\n  InitiatePaymentRequest,\n  InitiatePaymentResponse,\n  InternalCountInvoicesRequest,\n  InternalCountInvoicesResponse,\n  Interval,\n  Invoice,\n  InvoiceCreatedEnvelope,\n  InvoiceDeletedEnvelope,\n  InvoiceDocumentHandled,\n  InvoiceDocumentHandledResultOneOf,\n  InvoiceDocumentProcess,\n  InvoiceNumberingProcess,\n  InvoicePreset,\n  InvoiceQuerySpec,\n  InvoiceSearchSpec,\n  InvoiceSent,\n  InvoiceSentEnvelope,\n  InvoiceTagsModifiedEnvelope,\n  InvoiceUpdatedEnvelope,\n  InvoicesQueryBuilder,\n  InvoicesQueryResult,\n  Item,\n  ItemDataOneOf,\n  ItemMetadata,\n  ItemStyle,\n  ItemType,\n  ItemTypeItemTypeDataOneOf,\n  ItemsDisplayOptions,\n  LayerEffect,\n  Layers,\n  Layout,\n  LayoutCellData,\n  LayoutData,\n  LayoutDataBackground,\n  LayoutDataBackgroundImage,\n  LayoutDataBackgroundType,\n  LayoutType,\n  LineCap,\n  LineItem,\n  LineItemDiscount,\n  LineItemDiscountDiscountOptionsOneOf,\n  LineItemDiscountDiscountType,\n  LineItemLineItemOptionsOneOf,\n  LineItemTaxBreakdown,\n  LineItemTaxInfo,\n  LineItemTotals,\n  LineItemType,\n  LineStyle,\n  Link,\n  LinkData,\n  LinkDataOneOf,\n  LinkPreviewData,\n  LinkPreviewDataStyles,\n  Links,\n  ListItemNodeData,\n  ListStyle,\n  ListValue,\n  Locale,\n  LoopAnimation,\n  LoopEffect,\n  LoopEffectType,\n  MapData,\n  MapSettings,\n  MapType,\n  MarkInvoiceAsSentRequest,\n  MarkInvoiceAsSentResponse,\n  MarkInvoiceAsViewedRequest,\n  MarkInvoiceAsViewedResponse,\n  MaskedInvoice,\n  Media,\n  MediaFileStateChanged,\n  MentionData,\n  MessageEnvelope,\n  Metadata,\n  Migrated,\n  MissingValues,\n  Mode,\n  Monthly,\n  NestedAggregation,\n  NestedAggregationItem,\n  NestedAggregationItemKindOneOf,\n  NestedAggregationResults,\n  NestedAggregationResultsResultOneOf,\n  NestedAggregationType,\n  NestedResultValue,\n  NestedResultValueResultOneOf,\n  NestedResults,\n  NestedValueAggregationResult,\n  Node,\n  NodeDataOneOf,\n  NodeStyle,\n  NodeType,\n  NullValue,\n  Numbering,\n  Oembed,\n  Option,\n  OptionDesign,\n  OptionLayout,\n  Order,\n  OrderedListData,\n  Orientation,\n  Origin,\n  PDFSettings,\n  PagingMetadataV2,\n  ParagraphData,\n  Payment,\n  PaymentPaymentOptionsOneOf,\n  PaymentReceiptOptionsOneOf,\n  PaymentStatus,\n  PaymentType,\n  PaymentsDisplayOptions,\n  Permissions,\n  PickupDetails,\n  PickupMethod,\n  Placement,\n  PlaybackOptions,\n  PluginContainerData,\n  PluginContainerDataAlignment,\n  PluginContainerDataWidth,\n  PluginContainerDataWidthDataOneOf,\n  PointerEffect,\n  PointerEffectType,\n  Poll,\n  PollData,\n  PollDataLayout,\n  PollDesign,\n  PollDesignBackground,\n  PollDesignBackgroundBackgroundOneOf,\n  PollDesignBackgroundType,\n  PollLayout,\n  PollLayoutDirection,\n  PollLayoutType,\n  Position,\n  PresetProperties,\n  PresetType,\n  PricingData,\n  PublishInvoiceRequest,\n  PublishInvoiceResponse,\n  QueryInvoicesRequest,\n  QueryInvoicesResponse,\n  RangeAggregation,\n  RangeAggregationResult,\n  RangeBucket,\n  RangeResult,\n  RangeResults,\n  ReceiptType,\n  Reference,\n  ReferenceReferenceOptionsOneOf,\n  ReferenceType,\n  RegionalProperties,\n  RegularPaymentDetails,\n  Rel,\n  Resizing,\n  ResponsivenessBehaviour,\n  RestoreInfo,\n  Results,\n  RibbonStyles,\n  RichContent,\n  RuleType,\n  ScalarAggregation,\n  ScalarResult,\n  ScalarType,\n  Scaling,\n  SearchDetails,\n  SearchInvoicesRequest,\n  SearchInvoicesResponse,\n  SectionDivider,\n  SendErrorType,\n  SendInvoiceOptions,\n  SendInvoiceRequest,\n  SendInvoiceResponse,\n  SendResult,\n  Settings,\n  Shape,\n  ShapeData,\n  ShapeDataStyles,\n  ShipmentInfo,\n  ShipmentOption,\n  ShipmentRegion,\n  ShipmentTaxBreakdown,\n  ShipmentTaxInfo,\n  ShipmentTotals,\n  ShippingInfo,\n  SideEffectsTriggerRequested,\n  SiteTaxesMigrationRequested,\n  SketchData,\n  SmartBlockCellData,\n  SmartBlockData,\n  SmartBlockDataType,\n  SortDirection,\n  SortOrder,\n  SortType,\n  Sorting,\n  Source,\n  SourceReference,\n  Spoiler,\n  SpoilerData,\n  Standalone,\n  Status,\n  StatusQualifier,\n  Stop,\n  StreetAddress,\n  Styles,\n  StylesBorder,\n  StylesPosition,\n  SubscriptionInfo,\n  Succeeded,\n  SystemError,\n  TableCellData,\n  TableData,\n  TagList,\n  Tags,\n  TagsModified,\n  Target,\n  TaxBreakdown,\n  TaxInfo,\n  TextAlignment,\n  TextData,\n  TextNodeStyle,\n  TextStyle,\n  Thumbnails,\n  ThumbnailsAlignment,\n  TocData,\n  Totals,\n  TotalsDisplayOptions,\n  Type,\n  UnarchiveInvoiceRequest,\n  UnarchiveInvoiceResponse,\n  UpdateInvoice,\n  UpdateInvoiceRequest,\n  UpdateInvoiceResponse,\n  ValidationError,\n  ValueAggregation,\n  ValueAggregationOptionsOneOf,\n  ValueAggregationResult,\n  ValueResult,\n  ValueResults,\n  Variant,\n  VatId,\n  VatType,\n  VerticalAlignment,\n  VerticalAlignmentAlignment,\n  Video,\n  VideoData,\n  ViewMode,\n  ViewRole,\n  VoidInvoiceRequest,\n  VoidInvoiceResponse,\n  VoteRole,\n  WebhookIdentityType,\n  Weekly,\n  Width,\n  WidthType,\n  WixReceipt,\n  Yearly,\n  utils,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n  HttpClient,\n  HttpResponse,\n  Search as SearchSdkType,\n  NonNullablePaths,\n  QuerySpec,\n  Query as QuerySdkType,\n  SearchSpec,\n} from '@wix/sdk-types';\nimport * as ambassadorWixInvoicesInvoicesV4Invoice from './invoices-invoices-v4-invoice-invoices.http.js';\n// @ts-ignore\nimport { transformSDKAddressToRESTAddress } from '@wix/sdk-runtime/transformations/address';\nimport { transformRESTAddressToSDKAddress } from '@wix/sdk-runtime/transformations/address';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { createQueryUtils } from '@wix/sdk-runtime/query-builder-utils';\nimport { createSearchUtils } from '@wix/sdk-runtime/search-builder-utils';\n\n/** A request for payment issued by a business to a customer, containing line items, taxes, discounts, and payment terms. */\nexport interface Invoice {\n  /**\n   * Invoice ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the invoice is updated.\n   * To prevent conflicting changes,\n   * the current revision must be passed when updating the invoice.\n   *\n   * Ignored when creating an invoice.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the invoice was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the invoice was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Invoice status.\n   * @readonly\n   */\n  status?: StatusWithLiterals;\n  /**\n   * Additional flags providing context about the invoice's state, independent of its primary status. These flags are system-managed and read-only.\n   * @readonly\n   * @maxSize 2\n   */\n  statusQualifiers?: StatusQualifierWithLiterals[];\n  /**\n   * Actions that can be performed on this invoice based on its current status.\n   * @readonly\n   * @maxSize 12\n   */\n  availableActions?: ActionWithLiterals[];\n  /**\n   * Information about the app that created the invoice.\n   * @immutable\n   */\n  sourceReference?: SourceReference;\n  /**\n   * Invoice type and Wix eCommerce association. May change when an eligible legacy invoice is converted.\n   * @immutable\n   */\n  reference?: Reference;\n  /** Regional properties for the invoice. When not provided, defaults are taken from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction). */\n  regionalProperties?: RegionalProperties;\n  /**\n   * Invoice numbering. Assigned when the invoice is published.\n   * @readonly\n   */\n  numbering?: Numbering;\n  /** Date the invoice was issued. */\n  issueDate?: Date | null;\n  /** Date when payment is due. Cannot be before `issueDate`. */\n  dueDate?: Date | null;\n  /**\n   * Invoice title.\n   * @minLength 1\n   * @maxLength 200\n   */\n  title?: string | null;\n  /**\n   * Currency code for all monetary amounts on the invoice.\n   * Three-letter code in [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format.\n   * Set at creation and can't be changed.\n   * @format CURRENCY\n   * @immutable\n   */\n  currency?: string;\n  /** Customer information including contact details and billing address. */\n  customerInfo?: CustomerInfo;\n  /** Shipping destination for the invoice, including the recipient's contact details and address. Can exist independently without a shipment. When a shipment is configured, `shipmentInfo` uses this address as the delivery destination unless a pickup address is specified. */\n  shippingInfo?: ShippingInfo;\n  /** Business details displayed on the invoice, such as company name, address, email, phone, and logo. Automatically populated from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction) when the invoice is created, if not explicitly provided. These details aren't synced with Site Properties after creation and become permanently fixed once `status` reaches `PARTIALLY_PAID`, `PAID`, or `VOIDED`. */\n  businessDetails?: BusinessDetails;\n  /**\n   * Line items on the invoice.\n   * @maxSize 300\n   */\n  lineItems?: LineItem[];\n  /** Delivery and shipping cost details (carrier, method, price, tax) tied to the Wix eCommerce integration. Defaults to using `shippingInfo.shippingAddress` as the delivery destination unless `shipmentInfo.logistics.pickupDetails` is specified. */\n  shipmentInfo?: ShipmentInfo;\n  /**\n   * Additional fees applied to the invoice.\n   * @maxSize 20\n   */\n  additionalFees?: AdditionalFee[];\n  /**\n   * Invoice-level discounts.\n   * @maxSize 20\n   */\n  discounts?: Discount[];\n  /** Deposit payment configuration. */\n  deposit?: Deposit;\n  /**\n   * Tax information.\n   * @readonly\n   */\n  taxInfo?: TaxInfo;\n  /**\n   * Payment records.\n   * @maxSize 100\n   * @readonly\n   */\n  payments?: Payment[];\n  /**\n   * Financial summary including subtotal, taxes, and total amount.\n   * @readonly\n   */\n  totals?: Totals;\n  /**\n   * Whether the invoice is archived.\n   * @readonly\n   */\n  archived?: boolean;\n  /** Custom fields displayed on the invoice document. */\n  customFields?: CustomFields;\n  /** Invoice preset applied to this invoice. Determines the appearance and custom fields on the invoice document. If not provided, the [default preset](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoice-presets/set-default-invoice-preset) is used. */\n  presetProperties?: PresetProperties;\n  /**\n   * Files attached to the invoice.\n   * @maxSize 5\n   */\n  attachments?: Attachment[];\n  /**\n   * PDF document generation status.\n   * @readonly\n   */\n  documentInfo?: DocumentInfo;\n  /**\n   * Invoice URL.\n   * @readonly\n   */\n  links?: Links;\n  /** Business location. */\n  businessLocation?: BusinessLocation;\n  /**\n   * Read-only record of when the invoice was last sent and last viewed.\n   * @readonly\n   */\n  activityInfo?: ActivityInfo;\n  /**\n   * Whether the invoice contains subscription line items. `true` when at least one line item carries subscription info.\n   * @readonly\n   */\n  hasSubscriptions?: boolean;\n  /** Tags for organizing invoices. `publicTags` are visible to anyone with access to the invoice. `privateTags` are restricted to site owners and require additional permissions to access. */\n  tags?: Tags;\n}\n\nexport enum Status {\n  /** Invoice is in draft status. Can be edited before publishing. */\n  DRAFT = 'DRAFT',\n  /** Invoice number is being allocated. */\n  PUBLISHING = 'PUBLISHING',\n  /** Invoice is published and ready for payment. */\n  PUBLISHED = 'PUBLISHED',\n  /** Invoice has received at least one payment but isn't fully paid. */\n  PARTIALLY_PAID = 'PARTIALLY_PAID',\n  /** Invoice is fully paid. */\n  PAID = 'PAID',\n  /** Invoice is voided and no longer valid. */\n  VOIDED = 'VOIDED',\n}\n\n/** @enumType */\nexport type StatusWithLiterals =\n  | Status\n  | 'DRAFT'\n  | 'PUBLISHING'\n  | 'PUBLISHED'\n  | 'PARTIALLY_PAID'\n  | 'PAID'\n  | 'VOIDED';\n\nexport enum StatusQualifier {\n  /** Invoice was sent to a customer. */\n  SENT = 'SENT',\n  /** Mark Viewed was called for the invoice. */\n  VIEWED = 'VIEWED',\n  /** Invoice `dueDate` has passed and the invoice isn't fully paid or voided. */\n  OVERDUE = 'OVERDUE',\n}\n\n/** @enumType */\nexport type StatusQualifierWithLiterals =\n  | StatusQualifier\n  | 'SENT'\n  | 'VIEWED'\n  | 'OVERDUE';\n\nexport enum Action {\n  /** Invoice can be deleted. Available when invoice is in `DRAFT` status. */\n  DELETE = 'DELETE',\n  /** Invoice can be updated. Available when invoice is in `DRAFT`, `PUBLISHED`, or `PARTIALLY_PAID` status. */\n  UPDATE = 'UPDATE',\n  /** Invoice can be published. Available when invoice is in `DRAFT` status. */\n  PUBLISH = 'PUBLISH',\n  /** Payment can be recorded. Available when invoice is in `PUBLISHED` or `PARTIALLY_PAID` status. */\n  PAY = 'PAY',\n  /** Invoice can be voided. Available when invoice is in `PUBLISHED` or `PARTIALLY_PAID` status. */\n  VOID = 'VOID',\n  /** Invoice can be sent. Available when invoice is in `PUBLISHED` or later status. */\n  SEND = 'SEND',\n  /** Invoice can be marked as viewed. Available when invoice isn't in `DRAFT` status. */\n  MARK_AS_VIEWED = 'MARK_AS_VIEWED',\n  /** PDF document can be generated. Not available while another PDF is being processed. */\n  GENERATE_PDF_DOCUMENT = 'GENERATE_PDF_DOCUMENT',\n  /** Invoice can be archived. Available when invoice isn't in `DRAFT` status and isn't already archived. */\n  ARCHIVE = 'ARCHIVE',\n  /** Invoice can be unarchived. Available when invoice is archived. */\n  UNARCHIVE = 'UNARCHIVE',\n  /** Invoice can be marked as sent. Available when invoice isn't in `DRAFT` status. */\n  MARK_AS_SENT = 'MARK_AS_SENT',\n  /** Invoice can be converted into the standard standalone or auto-charge flow. Available for eligible legacy invoices without payments or an initialized payment flow. */\n  CONVERT = 'CONVERT',\n}\n\n/** @enumType */\nexport type ActionWithLiterals =\n  | Action\n  | 'DELETE'\n  | 'UPDATE'\n  | 'PUBLISH'\n  | 'PAY'\n  | 'VOID'\n  | 'SEND'\n  | 'MARK_AS_VIEWED'\n  | 'GENERATE_PDF_DOCUMENT'\n  | 'ARCHIVE'\n  | 'UNARCHIVE'\n  | 'MARK_AS_SENT'\n  | 'CONVERT';\n\nexport interface SourceReference {\n  /**\n   * ID of the app that created the invoice.\n   * @format GUID\n   */\n  appId?: string;\n  /**\n   * Developer-provided ID for linking this invoice to a record in an external system. For example, an order ID in a third-party platform.\n   * @format GUID\n   */\n  externalReferenceId?: string | null;\n  /**\n   * Additional metadata provided by the source app. Used for passing app-specific context\n   * that does not fit into the standard fields, such as internal IDs or configuration details.\n   * @maxSize 10\n   */\n  externalProperties?: Record<string, string>;\n}\n\n/** Reference linking the invoice to a Wix eCommerce order or standalone context. */\nexport interface Reference extends ReferenceReferenceOptionsOneOf {\n  /** Standalone invoice details. Wix eCommerce order is assigned when payment is initiated. */\n  standaloneReference?: Standalone;\n  /** Invoice reference to the existing Wix eCommerce order. */\n  orderReference?: Order;\n  /** Reference for invoices migrated from an older invoicing system. */\n  migratedReference?: Migrated;\n  /** Auto-charge invoice details. Wix eCommerce order is assigned when payment is initiated. */\n  autoChargeReference?: AutoCharge;\n  /** Invoice type. */\n  referenceType?: ReferenceTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface ReferenceReferenceOptionsOneOf {\n  /** Standalone invoice details. Wix eCommerce order is assigned when payment is initiated. */\n  standaloneReference?: Standalone;\n  /** Invoice reference to the existing Wix eCommerce order. */\n  orderReference?: Order;\n  /** Reference for invoices migrated from an older invoicing system. */\n  migratedReference?: Migrated;\n  /** Auto-charge invoice details. Wix eCommerce order is assigned when payment is initiated. */\n  autoChargeReference?: AutoCharge;\n}\n\nexport enum ReferenceType {\n  /** Independent invoice. An eCommerce order is created automatically when the first payment is made. */\n  STANDALONE = 'STANDALONE',\n  /** Invoice created for an existing Wix eCommerce order. Lifecycle is bound to that order. */\n  ORDER = 'ORDER',\n  /** Invoice migrated from an older invoicing system. */\n  MIGRATED = 'MIGRATED',\n  /**\n   * Auto-charged invoice. Required for invoices carrying subscription line items.\n   * @documentationMaturity preview\n   * @internal\n   */\n  AUTO_CHARGE = 'AUTO_CHARGE',\n}\n\n/** @enumType */\nexport type ReferenceTypeWithLiterals =\n  | ReferenceType\n  | 'STANDALONE'\n  | 'ORDER'\n  | 'MIGRATED';\n\nexport interface Standalone {\n  /**\n   * Wix eCommerce order ID. Assigned automatically when payments are enabled.\n   * @readonly\n   * @format GUID\n   */\n  orderId?: string | null;\n  /**\n   * Whether to restrict modification actions to the app that created the invoice.\n   * @immutable\n   */\n  limitActions?: boolean;\n}\n\nexport interface Order {\n  /**\n   * Wix eCommerce order ID.\n   * @format GUID\n   */\n  orderId?: string;\n  /**\n   * Wix eCommerce order number.\n   * @min 1\n   */\n  orderNumber?: string | null;\n}\n\n/** Details for invoices migrated from an older invoicing system. */\nexport interface Migrated {\n  /**\n   * Wix eCommerce order ID. Assigned automatically when payments are enabled.\n   * @readonly\n   * @format GUID\n   */\n  orderId?: string | null;\n  /**\n   * Limit changes to the application identified by `sourceReference.appId` only. If set to true, the invoice will be locked for direct actions: `PUBLISH`, `UPDATE`, `DELETE`.\n   * @immutable\n   */\n  limitActions?: boolean;\n  /**\n   * Wix eCommerce order number.\n   * @readonly\n   * @min 1\n   */\n  orderNumber?: string | null;\n}\n\n/** Auto-charge invoice details. Behaves like a standalone invoice; required for subscription line items. */\nexport interface AutoCharge {\n  /**\n   * Wix eCommerce order ID. Assigned automatically when payments are enabled.\n   * @readonly\n   * @format GUID\n   */\n  orderId?: string | null;\n  /**\n   * Whether to restrict modification actions to the app that created the invoice.\n   * @immutable\n   */\n  limitActions?: boolean;\n}\n\nexport interface RegionalProperties {\n  /** Locale used for formatting numbers, dates, and times. */\n  locale?: Locale;\n  /**\n   * Time zone in UTC offset or IANA format.\n   * @minLength 1\n   * @maxLength 32\n   */\n  timeZone?: string | null;\n  /**\n   * Invoice language in ISO 639-1 format.\n   * @format LANGUAGE\n   */\n  language?: string;\n}\n\nexport interface Locale {\n  /**\n   * 2-letter language code in ISO 639-1 format.\n   * @format LANGUAGE\n   */\n  languageCode?: string;\n  /**\n   * 2-letter country code in ISO 3166 format.\n   * @format COUNTRY\n   */\n  country?: string | null;\n}\n\n/** Assigned invoice number. This is set automatically when the invoice is published, based on the numbering configuration in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction). */\nexport interface Numbering {\n  /** Sequential invoice number. */\n  number?: number | null;\n  /**\n   * Prefix before the invoice number.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n  /**\n   * Suffix after the invoice number.\n   * @minLength 1\n   * @maxLength 10\n   */\n  suffix?: string | null;\n  /**\n   * Full display number in `[prefix][number][suffix]` format.\n   * @maxLength 30\n   */\n  displayNumber?: string;\n}\n\n/** Customer information. */\nexport interface CustomerInfo {\n  /**\n   * ID of the customer's contact in the [Contacts API](https://dev.wix.com/docs/rest/crm/members-contacts/contacts/introduction).\n   * @format GUID\n   */\n  contactId?: string | null;\n  /** Customer's contact details including name, email, and phone. */\n  contactDetails?: FullAddressContactDetails;\n  /** Customer's billing address. */\n  billingAddress?: Address;\n}\n\n/** Full contact details for an address */\nexport interface FullAddressContactDetails {\n  /**\n   * Contact's first name.\n   * @maxLength 100\n   */\n  firstName?: string | null;\n  /**\n   * Contact's last name.\n   * @maxLength 100\n   */\n  lastName?: string | null;\n  /**\n   * Contact's full name.\n   * @internal\n   * @maxLength 200\n   */\n  fullName?: string | null;\n  /**\n   * Contact's phone number.\n   * @format PHONE\n   */\n  phone?: string | null;\n  /**\n   * Contact's company name.\n   * @maxLength 100\n   */\n  company?: string | null;\n  /**\n   * Email associated with the address.\n   * @format EMAIL\n   */\n  email?: string | null;\n  /** Tax info. Currently usable only in Brazil. */\n  vatId?: VatId;\n}\n\nexport interface VatId {\n  /**\n   * Customer's tax ID.\n   * @maxLength 100\n   */\n  _id?: string;\n  /**\n   * Tax type.\n   *\n   * Supported values:\n   * + `CPF`: for individual tax payers\n   * + `CNPJ`: for corporations\n   */\n  type?: VatTypeWithLiterals;\n}\n\n/** tax info types */\nexport enum VatType {\n  UNSPECIFIED = 'UNSPECIFIED',\n  /** CPF - for individual tax payers. */\n  CPF = 'CPF',\n  /** CNPJ - for corporations */\n  CNPJ = 'CNPJ',\n}\n\n/** @enumType */\nexport type VatTypeWithLiterals = VatType | 'UNSPECIFIED' | 'CPF' | 'CNPJ';\n\n/** Physical address */\nexport interface Address {\n  /**\n   * Two-letter country code in [ISO-3166 alpha-2](https://www.iso.org/obp/ui/#search/code/) format.\n   * @format COUNTRY\n   */\n  country?: string | null;\n  /**\n   * Code for a subdivision (such as state, prefecture, or province) in [ISO 3166-2](https://www.iso.org/standard/72483.html) format.\n   * @maxLength 50\n   */\n  subdivision?: string | null;\n  /**\n   * City name.\n   * @maxLength 50\n   */\n  city?: string | null;\n  /**\n   * Postal or zip code.\n   * @maxLength 50\n   */\n  postalCode?: string | null;\n  /** Street address. */\n  streetAddress?: StreetAddress;\n  /**\n   * Main address line (usually street name and number).\n   * @maxLength 150\n   */\n  addressLine1?: string | null;\n  /**\n   * Free text providing more detailed address info. Usually contains apt, suite, floor.\n   * @maxLength 100\n   */\n  addressLine2?: string | null;\n  /**\n   * Free text to help find the address.\n   * @maxLength 100\n   */\n  hint?: string | null;\n  /** Geocode object containing latitude and longitude coordinates. */\n  location?: AddressLocation;\n  /**\n   * Country's full name.\n   * @readonly\n   */\n  countryFullname?: string | null;\n  /**\n   * Subdivision full-name.\n   * @readonly\n   */\n  subdivisionFullname?: string | null;\n}\n\nexport interface StreetAddress {\n  /**\n   * Street number.\n   * @maxLength 50\n   */\n  number?: string;\n  /**\n   * Street name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Apartment number.\n   * @internal\n   * @maxLength 50\n   */\n  apt?: string;\n  /**\n   * Optional address line 1\n   * @internal\n   * @maxLength 300\n   */\n  formattedAddressLine?: string | null;\n}\n\nexport interface AddressLocation {\n  /** Address latitude. */\n  latitude?: number | null;\n  /** Address longitude. */\n  longitude?: number | null;\n}\n\n/** Shipping recipient information. */\nexport interface ShippingInfo {\n  /** Recipient's contact details. */\n  contactDetails?: FullAddressContactDetails;\n  /** Recipient's shipping address. */\n  shippingAddress?: Address;\n}\n\n/** Business details displayed on the invoice. */\nexport interface BusinessDetails {\n  /**\n   * Business name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  companyName?: string | null;\n  /**\n   * Business email.\n   * @format EMAIL\n   */\n  email?: string | null;\n  /**\n   * Business phone.\n   * @format PHONE\n   */\n  phone?: string | null;\n  /** Business address. */\n  address?: Address;\n  /**\n   * Wix Media image ID for the business logo.\n   * @minLength 1\n   * @maxLength 100\n   */\n  imageId?: string | null;\n  /**\n   * Company registration number or other business identifier displayed on the invoice.\n   * @maxLength 30\n   */\n  companyId?: string | null;\n}\n\n/** An item on the invoice. */\nexport interface LineItem extends LineItemLineItemOptionsOneOf {\n  /** Custom item. */\n  customItem?: CustomItem;\n  /** Catalog item. */\n  catalogItem?: CatalogItem;\n  /** Line item type. */\n  lineItemType?: LineItemTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface LineItemLineItemOptionsOneOf {\n  /** Custom item. */\n  customItem?: CustomItem;\n  /** Catalog item. */\n  catalogItem?: CatalogItem;\n}\n\nexport enum LineItemType {\n  /** Custom line item with manually specified details. */\n  CUSTOM = 'CUSTOM',\n  /** Line item from a product catalog. */\n  CATALOG = 'CATALOG',\n}\n\n/** @enumType */\nexport type LineItemTypeWithLiterals = LineItemType | 'CUSTOM' | 'CATALOG';\n\nexport interface CustomItem {\n  /**\n   * Item ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Item name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /**\n   * Item description.\n   * @minLength 1\n   * @maxLength 600\n   */\n  description?: string | null;\n  /**\n   * Number of items.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100000, maxScale:4 }\n   */\n  quantity?: string;\n  /**\n   * Price per item.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string;\n  /** References to the line item's origin catalog. */\n  catalogReference?: CatalogReference;\n  /**\n   * Line item discounts.\n   * @maxSize 2\n   */\n  discounts?: LineItemDiscount[];\n  /** Line item tax info. */\n  taxInfo?: LineItemTaxInfo;\n  /**\n   * Line item totals.\n   * @readonly\n   */\n  totals?: LineItemTotals;\n  /**\n   * Subscription configuration. Line item subscription starts after invoice is fully paid. Only one subscription line item is supported per invoice.\n   * @internal\n   */\n  subscriptionInfo?: SubscriptionInfo;\n}\n\nexport interface CatalogReference {\n  /**\n   * ID of the item in the catalog.\n   * @format GUID\n   */\n  catalogItemId?: string;\n  /**\n   * ID of the app providing the catalog.\n   *\n   * For items from Wix catalogs, the following values always apply:\n   *\n   * - Wix Stores: `215238eb-22a5-4c36-9e7b-e7c08025e04e`\n   * - Wix Bookings: `13d21c63-b5ec-5912-8397-c3a5ddb27a97`\n   * - Wix Restaurants: `9a5d83fd-8570-482e-81ab-cfa88942ee60`\n   * @format GUID\n   */\n  appId?: string;\n  /** Additional item details in key-value pairs. Values differ depending on the catalog. */\n  options?: Record<string, any> | null;\n}\n\nexport interface LineItemDiscount extends LineItemDiscountDiscountOptionsOneOf {\n  /**\n   * Fixed discount amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n  /**\n   * Discount ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Discount name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /** Type of the discount. */\n  discountType?: LineItemDiscountDiscountTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface LineItemDiscountDiscountOptionsOneOf {\n  /**\n   * Fixed discount amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n}\n\nexport enum LineItemDiscountDiscountType {\n  /** Fixed monetary amount. */\n  FIXED = 'FIXED',\n  /** Percentage-based discount. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type LineItemDiscountDiscountTypeWithLiterals =\n  | LineItemDiscountDiscountType\n  | 'FIXED'\n  | 'PERCENTAGE';\n\nexport interface LineItemTaxInfo {\n  /**\n   * Reference to a tax group that defines the tax rules applicable to this line item.\n   * Use the Tax Groups API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/billing/tax-groups/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/tax/tax-groups/introduction)) to retrieve available tax groups for the business.\n   * If not specified, the default tax rules for the business will apply.\n   * @format GUID\n   */\n  taxGroupId?: string | null;\n  /**\n   * Tax breakdown for this line item.\n   * @readonly\n   * @maxSize 7\n   */\n  taxBreakdown?: LineItemTaxBreakdown[];\n  /**\n   * Whether tax is included in the item price.\n   * @readonly\n   */\n  taxIncludedInPrice?: boolean | null;\n}\n\nexport interface LineItemTaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate as a decimal. For example, `0.13` for 13%.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Amount subject to this tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount exempt from this tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Tax amount applied.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\nexport interface LineItemTotals {\n  /**\n   * Subtotal before discounts and taxes.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  subtotal?: string | null;\n  /**\n   * Total discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Total price before discounts.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceBeforeDiscount?: string | null;\n  /**\n   * Total price after discounts and before taxes.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceBeforeTax?: string | null;\n  /**\n   * Total tax-exempt amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Total tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Total price after taxes and discounts.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceAfterTax?: string | null;\n}\n\n/** Subscription configuration for a line item. When present, the line item creates a subscription after the invoice is fully paid. */\nexport interface SubscriptionInfo {\n  /**\n   * Wix eCommerce subscription ID. Available once payment is initiated.\n   * @readonly\n   * @format GUID\n   */\n  _id?: string | null;\n  /** Subscription billing cycle that defines how often a new invoice is produced. */\n  cycle?: Cycle;\n  /**\n   * The billing cycle number this invoice represents in the subscription sequence. For example, 1 for the first invoice, 2 for the second.\n   * @min 1\n   * @max 1000000\n   */\n  currentCycle?: number;\n  /**\n   * Total number of billing cycles. When set to 0, the subscription runs indefinitely. When set to a positive value, the subscription ends after that many cycles.\n   * @max 500\n   */\n  numberOfCycles?: number;\n  /** The start date of subscription. If not defined, subscription starts immediately after first invoice is paid. */\n  startDate?: Date | null;\n  /**\n   * Billing subscription ID. Populated after the invoice is fully paid.\n   * @readonly\n   * @format GUID\n   */\n  billingSubscriptionId?: string | null;\n}\n\n/** Billing frequency for the subscription. Set one of weekly, monthly , or yearly to specify how often a new invoice is generated. For weekly cycles, the billing day of the week is derived from start_date. For monthly cycles, set day_of_month . */\nexport interface Cycle extends CycleCycleOptionsOneOf {\n  /** Recurs every week. The billing weekday is derived from the subscription start date. */\n  weekly?: Weekly;\n  /** Recurs every month on a given day of month. */\n  monthly?: Monthly;\n  /** Recurs every year. The billing month and day are derived from the subscription start date. */\n  yearly?: Yearly;\n  /**\n   * Interval multiplier for the billing frequency. For example, a weekly cycle with interval 3 recurs every 3 weeks. A monthly cycle with interval 3 recurs every 3 months. A yearly cycle with interval 2 recurs every 2 years.\n   * @min 1\n   * @max 30\n   */\n  interval?: number | null;\n}\n\n/** @oneof */\nexport interface CycleCycleOptionsOneOf {\n  /** Recurs every week. The billing weekday is derived from the subscription start date. */\n  weekly?: Weekly;\n  /** Recurs every month on a given day of month. */\n  monthly?: Monthly;\n  /** Recurs every year. The billing month and day are derived from the subscription start date. */\n  yearly?: Yearly;\n}\n\n/** Weekly subscription cycle. No additional configuration needed — use interval to bill every N weeks. */\nexport interface Weekly {}\n\n/** Monthly subscription cycle settings. */\nexport interface Monthly {\n  /**\n   * Day of month.\n   * @min 1\n   * @max 28\n   */\n  dayOfMonth?: number;\n}\n\n/** Yearly subscription cycle settings. The billing month and day are derived from the subscription start date. */\nexport interface Yearly {}\n\nexport interface CatalogItem {\n  /**\n   * Item ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Item name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /**\n   * Item description.\n   * @minLength 1\n   * @maxLength 600\n   */\n  description?: string | null;\n  /**\n   * Number of items.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100000, maxScale:4 }\n   */\n  quantity?: string;\n  /**\n   * Price override. If not provided, the catalog price is used.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string | null;\n  /** References to the line item's origin catalog. */\n  catalogReference?: CatalogReference;\n  /**\n   * Item type.\n   * @readonly\n   */\n  itemType?: ItemType;\n  /**\n   * Line item discounts.\n   * @maxSize 2\n   */\n  discounts?: LineItemDiscount[];\n  /** Line item tax info. */\n  taxInfo?: LineItemTaxInfo;\n  /**\n   * Line item totals.\n   * @readonly\n   */\n  totals?: LineItemTotals;\n  /**\n   * Subscription configuration. Line item subscription starts after invoice is fully paid. Only one subscription line item is supported per invoice.\n   * @internal\n   */\n  subscriptionInfo?: SubscriptionInfo;\n}\n\nexport interface ItemType extends ItemTypeItemTypeDataOneOf {\n  /** Preset item type. */\n  preset?: PresetTypeWithLiterals;\n  /**\n   * Custom item type.\n   * @maxLength 200\n   */\n  custom?: string;\n}\n\n/** @oneof */\nexport interface ItemTypeItemTypeDataOneOf {\n  /** Preset item type. */\n  preset?: PresetTypeWithLiterals;\n  /**\n   * Custom item type.\n   * @maxLength 200\n   */\n  custom?: string;\n}\n\nexport enum PresetType {\n  /** Service item. */\n  SERVICE = 'SERVICE',\n  /** Gift card item. */\n  GIFT_CARD = 'GIFT_CARD',\n  /** Digital item. */\n  DIGITAL = 'DIGITAL',\n  /** Physical item. */\n  PHYSICAL = 'PHYSICAL',\n}\n\n/** @enumType */\nexport type PresetTypeWithLiterals =\n  | PresetType\n  | 'SERVICE'\n  | 'GIFT_CARD'\n  | 'DIGITAL'\n  | 'PHYSICAL';\n\nexport interface ShipmentInfo {\n  /**\n   * Shipping carrier ID.\n   * @format GUID\n   */\n  carrierId?: string | null;\n  /**\n   * Shipping method code.\n   * @minLength 1\n   * @maxLength 100\n   */\n  code?: string | null;\n  /**\n   * Shipping method title.\n   * @minLength 1\n   * @maxLength 250\n   */\n  title?: string | null;\n  /** Delivery logistics details. */\n  logistics?: DeliveryLogistics;\n  /** Shipping region. */\n  region?: ShipmentRegion;\n  /**\n   * Shipping price.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string | null;\n  /** Tax information for shipping. */\n  taxInfo?: ShipmentTaxInfo;\n  /**\n   * Shipping cost totals.\n   * @readonly\n   */\n  totals?: ShipmentTotals;\n}\n\nexport interface DeliveryLogistics {\n  /**\n   * Expected delivery time as free text.\n   * @minLength 1\n   * @maxLength 500\n   */\n  deliveryTime?: string | null;\n  /** Expected delivery time window. */\n  deliveryTimeSlot?: DeliveryTimeSlot;\n  /**\n   * Carrier delivery instructions.\n   * @minLength 1\n   * @maxLength 1000\n   */\n  instructions?: string | null;\n  /** Pickup address override. If not provided, the delivery destination defaults to the invoice's `shippingInfo.shippingAddress`. */\n  pickupDetails?: PickupDetails;\n}\n\nexport interface DeliveryTimeSlot {\n  /** Start of the delivery window. */\n  from?: Date | null;\n  /** End of the delivery window. */\n  to?: Date | null;\n}\n\nexport interface PickupDetails {\n  /** Pickup address. */\n  address?: Address;\n  /** Pickup method. */\n  pickupMethod?: PickupMethodWithLiterals;\n}\n\nexport enum PickupMethod {\n  PICKUP_POINT = 'PICKUP_POINT',\n  STORE_PICKUP = 'STORE_PICKUP',\n}\n\n/** @enumType */\nexport type PickupMethodWithLiterals =\n  | PickupMethod\n  | 'PICKUP_POINT'\n  | 'STORE_PICKUP';\n\nexport interface ShipmentRegion {\n  /**\n   * Region name.\n   * @minLength 1\n   * @maxLength 100\n   */\n  name?: string | null;\n}\n\nexport interface ShipmentTaxInfo {\n  /**\n   * Reference to a tax group that defines the tax rules applicable to the shipment.\n   * Use the Tax Groups API ([SDK](https://dev.wix.com/docs/sdk/backend-modules/billing/tax-groups/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/tax/tax-groups/introduction)) to retrieve available tax groups for the business.\n   * If not specified, the default tax rules for the business will apply.\n   * @format GUID\n   */\n  taxGroupId?: string | null;\n  /**\n   * Tax breakdown for shipping.\n   * @readonly\n   * @maxSize 7\n   */\n  taxBreakdown?: ShipmentTaxBreakdown[];\n  /**\n   * Whether tax is included in the shipping price.\n   * @readonly\n   */\n  taxIncludedInPrice?: boolean | null;\n}\n\nexport interface ShipmentTaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate as a decimal. For example, `0.13` for 13%.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Taxable amount this tax applies to.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount of the price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Applied tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\nexport interface ShipmentTotals {\n  /**\n   * Shipping discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Shipping price before tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceBeforeTax?: string;\n  /**\n   * Tax-exempt shipping amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Shipping tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Shipping price after tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceAfterTax?: string;\n}\n\nexport interface AdditionalFee {\n  /**\n   * Fee ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Fee name.\n   * @minLength 1\n   * @maxLength 50\n   */\n  name?: string;\n  /**\n   * Fee amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  amount?: string;\n  /**\n   * Entity that added the fee.\n   * @internal\n   */\n  source?: AdditionalFeeSourceWithLiterals;\n}\n\nexport enum AdditionalFeeSource {\n  /** Fee was added by an additional fee service plugin. */\n  SERVICE_PLUGIN = 'SERVICE_PLUGIN',\n  /** Fee was added to the item by a catalog or custom line item. */\n  ITEM = 'ITEM',\n  /** Fee was added manually on request. */\n  MANUAL = 'MANUAL',\n  /** Fee was added by the shipping provider. */\n  SHIPPING = 'SHIPPING',\n  /** Fee was added by the Wix eCommerce platform. */\n  PLATFORM = 'PLATFORM',\n}\n\n/** @enumType */\nexport type AdditionalFeeSourceWithLiterals =\n  | AdditionalFeeSource\n  | 'SERVICE_PLUGIN'\n  | 'ITEM'\n  | 'MANUAL'\n  | 'SHIPPING'\n  | 'PLATFORM';\n\n/** Invoice-level discount. */\nexport interface Discount extends DiscountDiscountOptionsOneOf {\n  /**\n   * Fixed discount amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n  /**\n   * Discount ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Discount name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /** Type of the discount. */\n  discountType?: DiscountTypeWithLiterals;\n  /**\n   * Calculated discount amount actually applied.\n   * @readonly\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  appliedAmount?: string;\n}\n\n/** @oneof */\nexport interface DiscountDiscountOptionsOneOf {\n  /**\n   * Fixed discount amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n}\n\nexport enum DiscountType {\n  /** Fixed monetary amount. */\n  FIXED = 'FIXED',\n  /** Percentage-based discount. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type DiscountTypeWithLiterals = DiscountType | 'FIXED' | 'PERCENTAGE';\n\n/** Deposit configuration for the invoice. The deposit defines the initial payment amount presented at checkout. */\nexport interface Deposit extends DepositDepositOptionsOneOf {\n  /**\n   * Fixed deposit amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDeposit?: string;\n  /**\n   * Deposit as a percentage of the invoice total.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lt:100, maxScale:2 }\n   */\n  percentageDeposit?: string;\n  /** Type of the deposit. */\n  depositType?: DepositTypeWithLiterals;\n  /**\n   * Calculated deposit amount.\n   * @readonly\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  total?: string | null;\n}\n\n/** @oneof */\nexport interface DepositDepositOptionsOneOf {\n  /**\n   * Fixed deposit amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDeposit?: string;\n  /**\n   * Deposit as a percentage of the invoice total.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lt:100, maxScale:2 }\n   */\n  percentageDeposit?: string;\n}\n\nexport enum DepositType {\n  /** Fixed monetary amount. */\n  FIXED = 'FIXED',\n  /** Percentage-based deposit. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type DepositTypeWithLiterals = DepositType | 'FIXED' | 'PERCENTAGE';\n\n/** Tax information for the invoice. */\nexport interface TaxInfo {\n  /**\n   * Breakdown of taxes applied.\n   * @maxSize 50\n   */\n  taxBreakdown?: TaxBreakdown[];\n  /**\n   * Whether the invoice is tax-exempt.\n   * @readonly\n   */\n  taxExempt?: boolean;\n}\n\n/** Breakdown of an individual tax applied to the invoice. */\nexport interface TaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate as a decimal. For example, `0.13` for 13%.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Amount subject to this tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount exempt from this tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Tax amount applied.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\n/** Record of a payment made on the invoice. */\nexport interface Payment\n  extends PaymentPaymentOptionsOneOf,\n    PaymentReceiptOptionsOneOf {\n  /** Regular payment details. */\n  regularPayment?: RegularPaymentDetails;\n  /** Gift card payment details. */\n  giftCardPayment?: GiftCardPaymentDetails;\n  /**\n   * Wix receipt.\n   * @internal\n   */\n  wixReceipt?: WixReceipt;\n  /**\n   * External receipt.\n   * @internal\n   */\n  externalReceipt?: ExternalReceipt;\n  /**\n   * Payment ID.\n   * @format GUID\n   */\n  _id?: string;\n  /** Date and time the payment was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  _createdDate?: Date | null;\n  /** Date and time the payment was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  _updatedDate?: Date | null;\n  /**\n   * Payment amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  amount?: string;\n  /** Date and time the payment was made. */\n  paymentDate?: Date | null;\n  /** Type of payment method used. */\n  paymentType?: PaymentTypeWithLiterals;\n  /** Type of receipt. */\n  receiptType?: ReceiptTypeWithLiterals;\n  /** Details about cash rounding applied to this payment, when relevant. */\n  cashRounding?: CashRounding;\n}\n\n/** @oneof */\nexport interface PaymentPaymentOptionsOneOf {\n  /** Regular payment details. */\n  regularPayment?: RegularPaymentDetails;\n  /** Gift card payment details. */\n  giftCardPayment?: GiftCardPaymentDetails;\n}\n\n/** @oneof */\nexport interface PaymentReceiptOptionsOneOf {\n  /**\n   * Wix receipt.\n   * @internal\n   */\n  wixReceipt?: WixReceipt;\n  /**\n   * External receipt.\n   * @internal\n   */\n  externalReceipt?: ExternalReceipt;\n}\n\nexport enum PaymentType {\n  /** Standard payment made through Wix Payments, Stripe, or other [supported payment gateways](https://www.wix.com/payments/payment-gateways). Doesn't include gift cards. */\n  REGULAR = 'REGULAR',\n  /** Payment using a Wix eCommerce gift card. */\n  GIFT_CARD = 'GIFT_CARD',\n}\n\n/** @enumType */\nexport type PaymentTypeWithLiterals = PaymentType | 'REGULAR' | 'GIFT_CARD';\n\nexport interface RegularPaymentDetails {\n  /**\n   * Wix Payments order ID. Only populated for online payments.\n   * @maxLength 100\n   */\n  paymentOrderId?: string;\n  /**\n   * Payment gateway's transaction ID. Only returned when `offlinePayment` is `false`.\n   * @maxLength 100\n   */\n  gatewayTransactionId?: string | null;\n  /**\n   * Payment method used. Non-exhaustive list of supported values:\n   *\n   * - CreditCard, Alipay, AstropayCash, AstropayDBT, AstropayMBT, Bitcoin, BitPay, Cash, ConvenienceStore, EPay, Fake, Giropay, IDeal, InPerson, Klarna, MercadoPago, Netpay, NordeaSolo, Offline, PagSeguro, PayEasy, PayPal, Paysafecard, Paysafecash, PointOfSale, Poli, Privat24, Przelewy24, RapidTransfer, Sepa, Skrill, Sofort, Trustly, Neteller, Unionpay, UniPay, Yandex\n   * @maxLength 100\n   */\n  paymentMethod?: string;\n  /**\n   * Transaction ID in the payment provider's system (e.g., PayPal, Square, Stripe). Not returned for offline payments.\n   * @maxLength 100\n   */\n  providerTransactionId?: string | null;\n  /** Whether the payment was made offline. */\n  offlinePayment?: boolean;\n  /** Payment status. */\n  paymentStatus?: PaymentStatusWithLiterals;\n  /**\n   * Payment provider name (e.g., Wix Payments, PayPal, Square, Stripe).\n   * @maxLength 300\n   */\n  paymentProvider?: string | null;\n  /** Credit card details. Only populated when a credit card was used for payment. */\n  creditCardDetails?: CreditCardDetails;\n}\n\nexport enum PaymentStatus {\n  /** Payment was voided. */\n  VOIDED = 'VOIDED',\n  /** Payment was authorized. */\n  AUTHORIZED = 'AUTHORIZED',\n  /** Payment was partially refunded. */\n  PARTIALLY_REFUNDED = 'PARTIALLY_REFUNDED',\n  /** Payment was refunded. */\n  REFUNDED = 'REFUNDED',\n  /** Payment was declined. */\n  DECLINED = 'DECLINED',\n  /** Payment was canceled. */\n  CANCELED = 'CANCELED',\n  /** Payment is pending merchant. */\n  PENDING_MERCHANT = 'PENDING_MERCHANT',\n  /** Payment is pending. */\n  PENDING = 'PENDING',\n  /** Payment was approved. */\n  APPROVED = 'APPROVED',\n}\n\n/** @enumType */\nexport type PaymentStatusWithLiterals =\n  | PaymentStatus\n  | 'VOIDED'\n  | 'AUTHORIZED'\n  | 'PARTIALLY_REFUNDED'\n  | 'REFUNDED'\n  | 'DECLINED'\n  | 'CANCELED'\n  | 'PENDING_MERCHANT'\n  | 'PENDING'\n  | 'APPROVED';\n\nexport interface CreditCardDetails {\n  /**\n   * Last 4 digits of the card number.\n   * @maxLength 4\n   */\n  lastFourDigits?: string;\n  /**\n   * Card brand.\n   * @maxLength 100\n   */\n  brand?: string;\n}\n\nexport interface GiftCardPaymentDetails {\n  /**\n   * Gift card payment ID.\n   * @minLength 1\n   * @maxLength 100\n   */\n  giftCardPaymentId?: string;\n  /**\n   * ID of the app that created the gift card.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum ReceiptType {\n  /** Wix receipt. */\n  WIX = 'WIX',\n  /** External receipt. */\n  EXTERNAL = 'EXTERNAL',\n}\n\n/** @enumType */\nexport type ReceiptTypeWithLiterals = ReceiptType | 'WIX' | 'EXTERNAL';\n\nexport interface WixReceipt {\n  /**\n   * Receipt ID.\n   * @format GUID\n   */\n  receiptId?: string;\n  /**\n   * Receipt display number.\n   * @minLength 1\n   * @maxLength 40\n   */\n  displayNumber?: string | null;\n}\n\nexport interface ExternalReceipt {\n  /**\n   * External receipt ID.\n   * @maxLength 100\n   */\n  receiptId?: string | null;\n  /**\n   * ID of the app providing the receipt.\n   * @format GUID\n   */\n  appId?: string | null;\n  /**\n   * Receipt display number.\n   * @minLength 1\n   * @maxLength 40\n   */\n  displayNumber?: string | null;\n}\n\nexport interface CashRounding {\n  /**\n   * The difference between 'amount' and 'unroundedAmount'.\n   * A positive value indicates the price was rounded up; a negative value indicates a round-down.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:-1000000000000000, lte:1000000000000000, maxScale:4 }\n   */\n  roundingAmount?: string;\n  /**\n   * Payment amount before cash rounding was applied.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  unroundedAmount?: string;\n}\n\n/** Financial summary of the invoice. */\nexport interface Totals {\n  /**\n   * Subtotal before taxes, discounts, and fees.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  subtotal?: string;\n  /**\n   * Total discount amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Total shipping costs.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  shipping?: string | null;\n  /**\n   * Total tax-exempt amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Total tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Total amount due.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  total?: string;\n  /**\n   * Total amount already paid.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  paidAmount?: string;\n  /**\n   * Outstanding balance.\n   * @readonly\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  balance?: string;\n}\n\nexport interface CustomFields {\n  /**\n   * Custom fields in the invoice header.\n   * @maxSize 4\n   */\n  headerCustomFields?: CustomField[];\n  /**\n   * Custom fields in the business details section.\n   * @maxSize 5\n   */\n  businessCustomFields?: CustomField[];\n  /**\n   * Custom fields in the customer information section.\n   * @maxSize 4\n   */\n  customerCustomFields?: CustomField[];\n  /** Footer content. */\n  footerCustomField?: FooterContent;\n}\n\nexport interface CustomField {\n  /**\n   * Field title.\n   * @minLength 1\n   * @maxLength 100\n   */\n  title?: string | null;\n  /**\n   * Field value.\n   * @maxLength 100\n   */\n  value?: string;\n}\n\nexport interface FooterContent {\n  /** Whether to override the invoice preset's footer content. When `true`, the `content` in this field replaces the preset's default footer on the generated invoice. When `false`, the preset's footer content is used. */\n  overridePresetContent?: boolean;\n  /** Footer content in rich text format. Used only when `overridePresetContent` is `true`. */\n  content?: RichContent;\n}\n\nexport interface RichContent {\n  /** Node objects representing a rich content document. */\n  nodes?: Node[];\n  /** Object metadata. */\n  metadata?: Metadata;\n  /** Global styling for header, paragraph, block quote, and code block nodes in the object. */\n  documentStyle?: DocumentStyle;\n}\n\nexport interface Node extends NodeDataOneOf {\n  /** Data for a button node. */\n  buttonData?: ButtonData;\n  /** Data for a code block node. */\n  codeBlockData?: CodeBlockData;\n  /** Data for a divider node. */\n  dividerData?: DividerData;\n  /** Data for a file node. */\n  fileData?: FileData;\n  /** Data for a gallery node. */\n  galleryData?: GalleryData;\n  /** Data for a GIF node. */\n  gifData?: GIFData;\n  /** Data for a heading node. */\n  headingData?: HeadingData;\n  /** Data for an embedded HTML node. */\n  htmlData?: HTMLData;\n  /** Data for an image node. */\n  imageData?: ImageData;\n  /** Data for a link preview node. */\n  linkPreviewData?: LinkPreviewData;\n  /** @deprecated */\n  mapData?: MapData;\n  /** Data for a paragraph node. */\n  paragraphData?: ParagraphData;\n  /** Data for a poll node. */\n  pollData?: PollData;\n  /** Data for a text node. Used to apply decorations to text. */\n  textData?: TextData;\n  /** Data for an app embed node. */\n  appEmbedData?: AppEmbedData;\n  /** Data for a video node. */\n  videoData?: VideoData;\n  /** Data for an oEmbed node. */\n  embedData?: EmbedData;\n  /** Data for a collapsible list node. */\n  collapsibleListData?: CollapsibleListData;\n  /** Data for a table node. */\n  tableData?: TableData;\n  /** Data for a table cell node. */\n  tableCellData?: TableCellData;\n  /** Data for a custom external node. */\n  externalData?: Record<string, any> | null;\n  /** Data for an audio node. */\n  audioData?: AudioData;\n  /** Data for an ordered list node. */\n  orderedListData?: OrderedListData;\n  /** Data for a bulleted list node. */\n  bulletedListData?: BulletedListData;\n  /** Data for a block quote node. */\n  blockquoteData?: BlockquoteData;\n  /** Data for a caption node. */\n  captionData?: CaptionData;\n  /** Data for a layout node. Reserved for future use. */\n  layoutData?: LayoutData;\n  /** Data for a cell node. */\n  layoutCellData?: LayoutCellData;\n  /** Data for a shape node. */\n  shapeData?: ShapeData;\n  /** Data for a card node. */\n  cardData?: CardData;\n  /** Data for a table of contents node. */\n  tocData?: TocData;\n  /** Data for a smart block node. */\n  smartBlockData?: SmartBlockData;\n  /** Data for a smart block cell node. */\n  smartBlockCellData?: SmartBlockCellData;\n  /** Data for a checkbox list node. */\n  checkboxListData?: CheckboxListData;\n  /** Data for a list item node. */\n  listItemData?: ListItemNodeData;\n  /** Node type. Use `APP_EMBED` for nodes that embed content from other Wix apps. Use `EMBED` to embed content in [oEmbed](https://oembed.com/) format. */\n  type?: NodeTypeWithLiterals;\n  /** Node ID. */\n  id?: string;\n  /** A list of child nodes. */\n  nodes?: Node[];\n  /** Padding and background color styling for the node. */\n  style?: NodeStyle;\n}\n\n/** @oneof */\nexport interface NodeDataOneOf {\n  /** Data for a button node. */\n  buttonData?: ButtonData;\n  /** Data for a code block node. */\n  codeBlockData?: CodeBlockData;\n  /** Data for a divider node. */\n  dividerData?: DividerData;\n  /** Data for a file node. */\n  fileData?: FileData;\n  /** Data for a gallery node. */\n  galleryData?: GalleryData;\n  /** Data for a GIF node. */\n  gifData?: GIFData;\n  /** Data for a heading node. */\n  headingData?: HeadingData;\n  /** Data for an embedded HTML node. */\n  htmlData?: HTMLData;\n  /** Data for an image node. */\n  imageData?: ImageData;\n  /** Data for a link preview node. */\n  linkPreviewData?: LinkPreviewData;\n  /** @deprecated */\n  mapData?: MapData;\n  /** Data for a paragraph node. */\n  paragraphData?: ParagraphData;\n  /** Data for a poll node. */\n  pollData?: PollData;\n  /** Data for a text node. Used to apply decorations to text. */\n  textData?: TextData;\n  /** Data for an app embed node. */\n  appEmbedData?: AppEmbedData;\n  /** Data for a video node. */\n  videoData?: VideoData;\n  /** Data for an oEmbed node. */\n  embedData?: EmbedData;\n  /** Data for a collapsible list node. */\n  collapsibleListData?: CollapsibleListData;\n  /** Data for a table node. */\n  tableData?: TableData;\n  /** Data for a table cell node. */\n  tableCellData?: TableCellData;\n  /** Data for a custom external node. */\n  externalData?: Record<string, any> | null;\n  /** Data for an audio node. */\n  audioData?: AudioData;\n  /** Data for an ordered list node. */\n  orderedListData?: OrderedListData;\n  /** Data for a bulleted list node. */\n  bulletedListData?: BulletedListData;\n  /** Data for a block quote node. */\n  blockquoteData?: BlockquoteData;\n  /** Data for a caption node. */\n  captionData?: CaptionData;\n  /** Data for a layout node. Reserved for future use. */\n  layoutData?: LayoutData;\n  /** Data for a cell node. */\n  layoutCellData?: LayoutCellData;\n  /** Data for a shape node. */\n  shapeData?: ShapeData;\n  /** Data for a card node. */\n  cardData?: CardData;\n  /** Data for a table of contents node. */\n  tocData?: TocData;\n  /** Data for a smart block node. */\n  smartBlockData?: SmartBlockData;\n  /** Data for a smart block cell node. */\n  smartBlockCellData?: SmartBlockCellData;\n  /** Data for a checkbox list node. */\n  checkboxListData?: CheckboxListData;\n  /** Data for a list item node. */\n  listItemData?: ListItemNodeData;\n}\n\nexport enum NodeType {\n  PARAGRAPH = 'PARAGRAPH',\n  TEXT = 'TEXT',\n  HEADING = 'HEADING',\n  BULLETED_LIST = 'BULLETED_LIST',\n  ORDERED_LIST = 'ORDERED_LIST',\n  LIST_ITEM = 'LIST_ITEM',\n  BLOCKQUOTE = 'BLOCKQUOTE',\n  CODE_BLOCK = 'CODE_BLOCK',\n  VIDEO = 'VIDEO',\n  DIVIDER = 'DIVIDER',\n  FILE = 'FILE',\n  GALLERY = 'GALLERY',\n  GIF = 'GIF',\n  HTML = 'HTML',\n  IMAGE = 'IMAGE',\n  LINK_PREVIEW = 'LINK_PREVIEW',\n  /** @deprecated */\n  MAP = 'MAP',\n  POLL = 'POLL',\n  APP_EMBED = 'APP_EMBED',\n  BUTTON = 'BUTTON',\n  COLLAPSIBLE_LIST = 'COLLAPSIBLE_LIST',\n  TABLE = 'TABLE',\n  EMBED = 'EMBED',\n  COLLAPSIBLE_ITEM = 'COLLAPSIBLE_ITEM',\n  COLLAPSIBLE_ITEM_TITLE = 'COLLAPSIBLE_ITEM_TITLE',\n  COLLAPSIBLE_ITEM_BODY = 'COLLAPSIBLE_ITEM_BODY',\n  TABLE_CELL = 'TABLE_CELL',\n  TABLE_ROW = 'TABLE_ROW',\n  EXTERNAL = 'EXTERNAL',\n  AUDIO = 'AUDIO',\n  CAPTION = 'CAPTION',\n  LAYOUT = 'LAYOUT',\n  LAYOUT_CELL = 'LAYOUT_CELL',\n  SHAPE = 'SHAPE',\n  CARD = 'CARD',\n  TOC = 'TOC',\n  SMART_BLOCK = 'SMART_BLOCK',\n  SMART_BLOCK_CELL = 'SMART_BLOCK_CELL',\n  CHECKBOX_LIST = 'CHECKBOX_LIST',\n}\n\n/** @enumType */\nexport type NodeTypeWithLiterals =\n  | NodeType\n  | 'PARAGRAPH'\n  | 'TEXT'\n  | 'HEADING'\n  | 'BULLETED_LIST'\n  | 'ORDERED_LIST'\n  | 'LIST_ITEM'\n  | 'BLOCKQUOTE'\n  | 'CODE_BLOCK'\n  | 'VIDEO'\n  | 'DIVIDER'\n  | 'FILE'\n  | 'GALLERY'\n  | 'GIF'\n  | 'HTML'\n  | 'IMAGE'\n  | 'LINK_PREVIEW'\n  | 'MAP'\n  | 'POLL'\n  | 'APP_EMBED'\n  | 'BUTTON'\n  | 'COLLAPSIBLE_LIST'\n  | 'TABLE'\n  | 'EMBED'\n  | 'COLLAPSIBLE_ITEM'\n  | 'COLLAPSIBLE_ITEM_TITLE'\n  | 'COLLAPSIBLE_ITEM_BODY'\n  | 'TABLE_CELL'\n  | 'TABLE_ROW'\n  | 'EXTERNAL'\n  | 'AUDIO'\n  | 'CAPTION'\n  | 'LAYOUT'\n  | 'LAYOUT_CELL'\n  | 'SHAPE'\n  | 'CARD'\n  | 'TOC'\n  | 'SMART_BLOCK'\n  | 'SMART_BLOCK_CELL'\n  | 'CHECKBOX_LIST';\n\nexport interface NodeStyle {\n  /** The top padding value in pixels. */\n  paddingTop?: string | null;\n  /** The bottom padding value in pixels. */\n  paddingBottom?: string | null;\n  /** The background color as a hexadecimal value. */\n  backgroundColor?: string | null;\n}\n\nexport interface ButtonData {\n  /** Styling for the button's container. */\n  containerData?: PluginContainerData;\n  /** The button type. */\n  type?: ButtonDataTypeWithLiterals;\n  /** Styling for the button. */\n  styles?: Styles;\n  /** The text to display on the button. */\n  text?: string | null;\n  /** Button link details. */\n  link?: Link;\n  /** Node animation. */\n  animation?: Animation;\n}\n\n/** Background type */\nexport enum BackgroundType {\n  /** Solid color background */\n  COLOR = 'COLOR',\n  /** Gradient background */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type BackgroundTypeWithLiterals = BackgroundType | 'COLOR' | 'GRADIENT';\n\nexport interface Gradient {\n  /** Gradient type. */\n  type?: GradientTypeWithLiterals;\n  /**\n   * Color stops for the gradient.\n   * @maxSize 1000\n   */\n  stops?: Stop[];\n  /** Angle in degrees for linear gradient (0-360). */\n  angle?: number | null;\n  /**\n   * Horizontal center position for radial gradient (0-100).\n   * @max 100\n   */\n  centerX?: number | null;\n  /**\n   * Vertical center position for radial gradient (0-100).\n   * @max 100\n   */\n  centerY?: number | null;\n}\n\n/** Gradient type. */\nexport enum GradientType {\n  /** Linear gradient. */\n  LINEAR = 'LINEAR',\n  /** Radial gradient. */\n  RADIAL = 'RADIAL',\n}\n\n/** @enumType */\nexport type GradientTypeWithLiterals = GradientType | 'LINEAR' | 'RADIAL';\n\n/** A single color stop in the gradient. */\nexport interface Stop {\n  /**\n   * Stop color as hex value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Stop position (0-1). */\n  position?: number | null;\n}\n\nexport interface Border {\n  /**\n   * Deprecated: Use `borderWidth` in `styles` instead.\n   * @deprecated\n   */\n  width?: number | null;\n  /**\n   * Deprecated: Use `borderRadius` in `styles` instead.\n   * @deprecated\n   */\n  radius?: number | null;\n}\n\nexport interface Colors {\n  /**\n   * Deprecated: Use `textColor` in `styles` instead.\n   * @deprecated\n   */\n  text?: string | null;\n  /**\n   * Deprecated: Use `borderColor` in `styles` instead.\n   * @deprecated\n   */\n  border?: string | null;\n  /**\n   * Deprecated: Use `backgroundColor` in `styles` instead.\n   * @deprecated\n   */\n  background?: string | null;\n}\n\n/** Background styling (color or gradient) */\nexport interface Background {\n  /** Background type. */\n  type?: BackgroundTypeWithLiterals;\n  /**\n   * Background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Gradient configuration. */\n  gradient?: Gradient;\n}\n\nexport interface PluginContainerData {\n  /** The width of the node when it's displayed. */\n  width?: PluginContainerDataWidth;\n  /** The node's alignment within its container. */\n  alignment?: PluginContainerDataAlignmentWithLiterals;\n  /** Spoiler cover settings for the node. */\n  spoiler?: Spoiler;\n  /** The height of the node when it's displayed. */\n  height?: Height;\n  /** Sets whether text should wrap around this node when it's displayed. If `textWrap` is `false`, the node takes up the width of its container. Defaults to `true` for all node types except 'DIVIVDER' where it defaults to `false`. */\n  textWrap?: boolean | null;\n}\n\nexport enum WidthType {\n  /** Width matches the content width */\n  CONTENT = 'CONTENT',\n  /** Small Width */\n  SMALL = 'SMALL',\n  /** Width will match the original asset width */\n  ORIGINAL = 'ORIGINAL',\n  /** coast-to-coast display */\n  FULL_WIDTH = 'FULL_WIDTH',\n}\n\n/** @enumType */\nexport type WidthTypeWithLiterals =\n  | WidthType\n  | 'CONTENT'\n  | 'SMALL'\n  | 'ORIGINAL'\n  | 'FULL_WIDTH';\n\nexport interface PluginContainerDataWidth\n  extends PluginContainerDataWidthDataOneOf {\n  /**\n   * One of the following predefined width options:\n   * `CONTENT`: The width of the container matches the content width.\n   * `SMALL`: A small width.\n   * `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width.\n   * `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.\n   */\n  size?: WidthTypeWithLiterals;\n  /** A custom width value in pixels. */\n  custom?: string | null;\n}\n\n/** @oneof */\nexport interface PluginContainerDataWidthDataOneOf {\n  /**\n   * One of the following predefined width options:\n   * `CONTENT`: The width of the container matches the content width.\n   * `SMALL`: A small width.\n   * `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width.\n   * `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.\n   */\n  size?: WidthTypeWithLiterals;\n  /** A custom width value in pixels. */\n  custom?: string | null;\n}\n\nexport enum PluginContainerDataAlignment {\n  /** Center Alignment */\n  CENTER = 'CENTER',\n  /** Left Alignment */\n  LEFT = 'LEFT',\n  /** Right Alignment */\n  RIGHT = 'RIGHT',\n}\n\n/** @enumType */\nexport type PluginContainerDataAlignmentWithLiterals =\n  | PluginContainerDataAlignment\n  | 'CENTER'\n  | 'LEFT'\n  | 'RIGHT';\n\nexport interface Spoiler {\n  /** Sets whether the spoiler cover is enabled for this node. Defaults to `false`. */\n  enabled?: boolean | null;\n  /** The description displayed on top of the spoiler cover. */\n  description?: string | null;\n  /** The text for the button used to remove the spoiler cover. */\n  buttonText?: string | null;\n}\n\nexport interface Height {\n  /** A custom height value in pixels. */\n  custom?: string | null;\n}\n\nexport enum ButtonDataType {\n  /** Regular link button */\n  LINK = 'LINK',\n  /** Triggers custom action that is defined in plugin configuration by the consumer */\n  ACTION = 'ACTION',\n}\n\n/** @enumType */\nexport type ButtonDataTypeWithLiterals = ButtonDataType | 'LINK' | 'ACTION';\n\nexport interface Styles {\n  /**\n   * Deprecated: Use `borderWidth` and `borderRadius` instead.\n   * @deprecated\n   */\n  border?: Border;\n  /**\n   * Deprecated: Use `textColor`, `borderColor` and `backgroundColor` instead.\n   * @deprecated\n   */\n  colors?: Colors;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /**\n   * Deprecated: Use `borderWidth` for normal/hover states instead.\n   * @deprecated\n   */\n  borderWidthHover?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /**\n   * Border color as a hexadecimal value (hover state).\n   * @maxLength 19\n   */\n  borderColorHover?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @maxLength 19\n   */\n  textColor?: string | null;\n  /**\n   * Text color as a hexadecimal value (hover state).\n   * @maxLength 19\n   */\n  textColorHover?: string | null;\n  /**\n   * Deprecated: Use `background` instead.\n   * @maxLength 19\n   * @deprecated\n   */\n  backgroundColor?: string | null;\n  /**\n   * Deprecated: Use `backgroundHover` instead.\n   * @maxLength 19\n   * @deprecated\n   */\n  backgroundColorHover?: string | null;\n  /** Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`. */\n  buttonSize?: string | null;\n  /** Background styling (color or gradient). */\n  background?: Background;\n  /** Background styling for hover state (color or gradient). */\n  backgroundHover?: Background;\n}\n\nexport interface Link extends LinkDataOneOf {\n  /** The absolute URL for the linked document. */\n  url?: string;\n  /** The target node's ID. Used for linking to another node in this object. */\n  anchor?: string;\n  /**\n   * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows:\n   * `SELF` - Default. Opens the linked document in the same frame as the link.\n   * `BLANK` - Opens the linked document in a new browser tab or window.\n   * `PARENT` - Opens the linked document in the link's parent frame.\n   * `TOP` - Opens the linked document in the full body of the link's browser tab or window.\n   */\n  target?: TargetWithLiterals;\n  /** The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */\n  rel?: Rel;\n  /** A serialized object used for a custom or external link panel. */\n  customData?: string | null;\n}\n\n/** @oneof */\nexport interface LinkDataOneOf {\n  /** The absolute URL for the linked document. */\n  url?: string;\n  /** The target node's ID. Used for linking to another node in this object. */\n  anchor?: string;\n}\n\nexport enum Target {\n  /** Opens the linked document in the same frame as it was clicked (this is default) */\n  SELF = 'SELF',\n  /** Opens the linked document in a new window or tab */\n  BLANK = 'BLANK',\n  /** Opens the linked document in the parent frame */\n  PARENT = 'PARENT',\n  /** Opens the linked document in the full body of the window */\n  TOP = 'TOP',\n}\n\n/** @enumType */\nexport type TargetWithLiterals = Target | 'SELF' | 'BLANK' | 'PARENT' | 'TOP';\n\nexport interface Rel {\n  /** Indicates to search engine crawlers not to follow the link. Defaults to `false`. */\n  nofollow?: boolean | null;\n  /** Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. Defaults to `false`. */\n  sponsored?: boolean | null;\n  /** Indicates that this link is user-generated content and isn't necessarily trusted or endorsed by the page’s author. For example, a link in a fourm post. Defaults to `false`. */\n  ugc?: boolean | null;\n  /** Indicates that this link protect referral information from being passed to the target website. */\n  noreferrer?: boolean | null;\n}\n\nexport interface Animation {\n  /** Animation kind. */\n  type?: TypeWithLiterals;\n  /** Entrance animation, played once when the node first enters the viewport (VIEW). */\n  entrance?: EntranceAnimation;\n  /** Looping animation, repeated indefinitely while the node is on the page. When combined with entrance, the loop starts after the entrance finishes (VIEW). */\n  loop?: LoopAnimation;\n  /**\n   * POINTER carries its fields directly on the union member in the JTD wall, hence\n   * flat fields here (ts-proto camelCase must equal the JTD property names). A future\n   * kind that also needs an `effect` field would contend for this JSON name.\n   */\n  effect?: PointerEffect;\n  /** How quickly the node settles toward the pointer, in milliseconds (POINTER). */\n  transitionDuration?: number | null;\n}\n\nexport enum Type {\n  /** Animations that play while the node is in view. */\n  VIEW = 'VIEW',\n  /** Animations driven by the visitor's mouse position. */\n  POINTER = 'POINTER',\n}\n\n/** @enumType */\nexport type TypeWithLiterals = Type | 'VIEW' | 'POINTER';\n\nexport interface EntranceAnimation {\n  /** The entrance effect to play. */\n  effect?: EntranceEffect;\n  /** Effect duration in milliseconds. Each effect has its own default. */\n  duration?: number | null;\n  /** Delay before the effect starts, in milliseconds. */\n  delay?: number | null;\n}\n\nexport interface EntranceEffect {\n  /** The entrance effect type. */\n  type?: EntranceEffectTypeWithLiterals;\n  /**\n   * Direction the effect enters from. Allowed values depend on the effect type (e.g. TOP/RIGHT/BOTTOM/LEFT, the diagonals with or without CENTER, corners, HORIZONTAL/VERTICAL, CLOCKWISE/COUNTER_CLOCKWISE).\n   * @maxLength 20\n   */\n  direction?: string | null;\n  /**\n   * Clip-path shape: ELLIPSE, CIRCLE, RECTANGLE, or DIAMOND (SHAPE).\n   * @maxLength 12\n   */\n  shape?: string | null;\n  /**\n   * Motion style: GENTLE, MODERATE, or INTENSE. Only the effects that expose one accept it.\n   * @maxLength 100\n   */\n  easing?: string | null;\n}\n\nexport enum EntranceEffectType {\n  /** Fades in from fully transparent to fully opaque. */\n  FADE = 'FADE',\n  /** Enters along a 3D arc path. */\n  ARC = 'ARC',\n  /** Transitions from blurred to sharp. */\n  BLUR = 'BLUR',\n  /** Bounces into place with an elastic curve. */\n  BOUNCE = 'BOUNCE',\n  /** Shrinks down from a larger size. */\n  DROP = 'DROP',\n  /** Expands from a point, scaling to full size. */\n  EXPAND = 'EXPAND',\n  /** Flips into view with a 3D rotation. */\n  FLIP = 'FLIP',\n  /** Drifts gently into place. */\n  FLOAT = 'FLOAT',\n  /** Unfolds from an edge as if hinged. */\n  FOLD = 'FOLD',\n  /** Glides in smoothly from off-screen. */\n  GLIDE = 'GLIDE',\n  /** Progressively revealed by an expanding clip-path. */\n  REVEAL = 'REVEAL',\n  /** Appears through an expanding geometric clip-path shape. */\n  SHAPE = 'SHAPE',\n  /** Revealed through shutter-like strips. */\n  SHUTTERS = 'SHUTTERS',\n  /** Slides in from one side. */\n  SLIDE = 'SLIDE',\n  /** Spins into view while scaling up. */\n  SPIN = 'SPIN',\n  /** Tilts in from the side with 3D rotation. */\n  TILT = 'TILT',\n  /** Rotates into view around a corner pivot. */\n  TURN = 'TURN',\n  /** Expands from its horizontal or vertical center. */\n  WINK = 'WINK',\n}\n\n/** @enumType */\nexport type EntranceEffectTypeWithLiterals =\n  | EntranceEffectType\n  | 'FADE'\n  | 'ARC'\n  | 'BLUR'\n  | 'BOUNCE'\n  | 'DROP'\n  | 'EXPAND'\n  | 'FLIP'\n  | 'FLOAT'\n  | 'FOLD'\n  | 'GLIDE'\n  | 'REVEAL'\n  | 'SHAPE'\n  | 'SHUTTERS'\n  | 'SLIDE'\n  | 'SPIN'\n  | 'TILT'\n  | 'TURN'\n  | 'WINK';\n\nexport interface LoopAnimation {\n  /** The looping effect to repeat. */\n  effect?: LoopEffect;\n  /** Duration of a single iteration in milliseconds. Each effect has its own default. */\n  duration?: number | null;\n  /** Pause between iterations in milliseconds. */\n  iterationDelay?: number | null;\n}\n\nexport interface LoopEffect {\n  /** The looping effect type. */\n  type?: LoopEffectTypeWithLiterals;\n  /**\n   * Direction of the effect. Allowed values depend on the effect type (e.g. TOP/RIGHT/BOTTOM/LEFT, LEFT/RIGHT, HORIZONTAL/VERTICAL with or without CENTER, CLOCKWISE/COUNTER_CLOCKWISE).\n   * @maxLength 20\n   */\n  direction?: string | null;\n  /**\n   * Motion style: GENTLE, MODERATE, or INTENSE. Only the effects that expose one accept it.\n   * @maxLength 100\n   */\n  easing?: string | null;\n}\n\nexport enum LoopEffectType {\n  /** Bounces up and down in place. */\n  BOUNCE = 'BOUNCE',\n  /** Scales gently in and out along an axis. */\n  BREATHE = 'BREATHE',\n  /** Drifts toward one side, then re-enters from the opposite side. */\n  CROSS = 'CROSS',\n  /** Fades out to fully transparent and back in. */\n  FLASH = 'FLASH',\n  /** Rotates a full turn around its horizontal or vertical axis. */\n  FLIP = 'FLIP',\n  /** Folds back and forth around a hinged edge. */\n  FOLD = 'FOLD',\n  /** Wobbles with a jelly-like skew. */\n  JELLO = 'JELLO',\n  /** Nudges repeatedly toward a direction. */\n  POKE = 'POKE',\n  /** Scales up and back down rhythmically. */\n  PULSE = 'PULSE',\n  /** Stretches and squashes like a rubber band. */\n  RUBBER = 'RUBBER',\n  /** Rotates continuously around its center. */\n  SPIN = 'SPIN',\n  /** Swings back and forth around an edge pivot. */\n  SWING = 'SWING',\n  /** Rocks side to side with an accumulating rotation. */\n  WIGGLE = 'WIGGLE',\n}\n\n/** @enumType */\nexport type LoopEffectTypeWithLiterals =\n  | LoopEffectType\n  | 'BOUNCE'\n  | 'BREATHE'\n  | 'CROSS'\n  | 'FLASH'\n  | 'FLIP'\n  | 'FOLD'\n  | 'JELLO'\n  | 'POKE'\n  | 'PULSE'\n  | 'RUBBER'\n  | 'SPIN'\n  | 'SWING'\n  | 'WIGGLE';\n\nexport interface PointerEffect {\n  /** The mouse effect type. */\n  type?: PointerEffectTypeWithLiterals;\n  /** Reacts away from the pointer instead of toward it. */\n  inverted?: boolean | null;\n  /**\n   * One field, two value spaces (the effect type says which): the axis the movement is constrained to — HORIZONTAL, VERTICAL, or BOTH (AIRY, SCALE, SKEW, TRACK, TRACK_3D) — or the edge/center axis the node swivels around — TOP, BOTTOM, LEFT, RIGHT, CENTER_HORIZONTAL, or CENTER_VERTICAL (SWIVEL). Only the effects that expose one accept it.\n   * @maxLength 20\n   */\n  axis?: string | null;\n  /**\n   * Whether the node grows or shrinks as the pointer nears: UP or DOWN (SCALE).\n   * @maxLength 8\n   */\n  direction?: string | null;\n  /**\n   * Motion style: GENTLE, MODERATE, or INTENSE.\n   * @maxLength 100\n   */\n  easing?: string | null;\n}\n\nexport enum PointerEffectType {\n  /** Drifts loosely after the pointer with a light rotation. */\n  AIRY = 'AIRY',\n  /** Squashes and stretches toward the pointer. */\n  BLOB = 'BLOB',\n  /** Shifts after the pointer while blurring. */\n  BLUR = 'BLUR',\n  /** Scales as the pointer approaches. */\n  SCALE = 'SCALE',\n  /** Skews toward the pointer. */\n  SKEW = 'SKEW',\n  /** Rotates around a pivot edge or axis, following the pointer. */\n  SWIVEL = 'SWIVEL',\n  /** Tilts in 3D perspective toward the pointer. */\n  TILT_3D = 'TILT_3D',\n  /** Follows the pointer's position. */\n  TRACK = 'TRACK',\n  /** Follows the pointer with a 3D depth motion. */\n  TRACK_3D = 'TRACK_3D',\n}\n\n/** @enumType */\nexport type PointerEffectTypeWithLiterals =\n  | PointerEffectType\n  | 'AIRY'\n  | 'BLOB'\n  | 'BLUR'\n  | 'SCALE'\n  | 'SKEW'\n  | 'SWIVEL'\n  | 'TILT_3D'\n  | 'TRACK'\n  | 'TRACK_3D';\n\nexport interface CodeBlockData {\n  /** Styling for the code block's text. */\n  textStyle?: TextStyle;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface TextStyle {\n  /** Text alignment. Defaults to `AUTO`. */\n  textAlignment?: TextAlignmentWithLiterals;\n  /** A CSS `line-height` value for the text expressed as a ratio relative to the font size. For example, if the font size is 20px, a `lineHeight` value of `'1.5'`` results in a line height of 30px. */\n  lineHeight?: string | null;\n}\n\nexport enum TextAlignment {\n  /** browser default, eqivalent to `initial` */\n  AUTO = 'AUTO',\n  /** Left align */\n  LEFT = 'LEFT',\n  /** Right align */\n  RIGHT = 'RIGHT',\n  /** Center align */\n  CENTER = 'CENTER',\n  /** Text is spaced to line up its left and right edges to the left and right edges of the line box, except for the last line */\n  JUSTIFY = 'JUSTIFY',\n}\n\n/** @enumType */\nexport type TextAlignmentWithLiterals =\n  | TextAlignment\n  | 'AUTO'\n  | 'LEFT'\n  | 'RIGHT'\n  | 'CENTER'\n  | 'JUSTIFY';\n\nexport interface DividerData {\n  /** Styling for the divider's container. */\n  containerData?: PluginContainerData;\n  /** Divider line style. */\n  lineStyle?: LineStyleWithLiterals;\n  /** Divider width. */\n  width?: WidthWithLiterals;\n  /** Divider alignment. */\n  alignment?: DividerDataAlignmentWithLiterals;\n  /** Visual styling for the divider lines. */\n  styles?: DividerDataStyles;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport enum LineCap {\n  /** Square line endings. */\n  SQUARE = 'SQUARE',\n  /** Rounded line endings. */\n  ROUND = 'ROUND',\n}\n\n/** @enumType */\nexport type LineCapWithLiterals = LineCap | 'SQUARE' | 'ROUND';\n\nexport enum LineStyle {\n  /** Single Line */\n  SINGLE = 'SINGLE',\n  /** Double Line */\n  DOUBLE = 'DOUBLE',\n  /** Dashed Line */\n  DASHED = 'DASHED',\n  /** Dotted Line */\n  DOTTED = 'DOTTED',\n}\n\n/** @enumType */\nexport type LineStyleWithLiterals =\n  | LineStyle\n  | 'SINGLE'\n  | 'DOUBLE'\n  | 'DASHED'\n  | 'DOTTED';\n\nexport enum Width {\n  /** Large line */\n  LARGE = 'LARGE',\n  /** Medium line */\n  MEDIUM = 'MEDIUM',\n  /** Small line */\n  SMALL = 'SMALL',\n}\n\n/** @enumType */\nexport type WidthWithLiterals = Width | 'LARGE' | 'MEDIUM' | 'SMALL';\n\nexport enum DividerDataAlignment {\n  /** Center alignment */\n  CENTER = 'CENTER',\n  /** Left alignment */\n  LEFT = 'LEFT',\n  /** Right alignment */\n  RIGHT = 'RIGHT',\n}\n\n/** @enumType */\nexport type DividerDataAlignmentWithLiterals =\n  | DividerDataAlignment\n  | 'CENTER'\n  | 'LEFT'\n  | 'RIGHT';\n\nexport interface DividerDataStyles {\n  /**\n   * Divider color as a hexadecimal value. An alpha channel controls opacity.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Divider line ending shape. */\n  lineCap?: LineCapWithLiterals;\n  /**\n   * Line thicknesses in pixels, ordered from first line to last line.\n   * @maxSize 10\n   */\n  lineThickness?: number[];\n  /** Visible dash length for dashed dividers, in pixels. The pattern is snapped to a whole number of dashes so that the first and last dash touch the divider's edges - narrower containers show fewer dashes at the same size. */\n  dashLength?: number | null;\n  /** Visible gap between dashes or dots, in pixels. */\n  dashGap?: number | null;\n  /** Gap between divider lines in pixels. */\n  lineGap?: number | null;\n}\n\nexport interface FileData {\n  /** Styling for the file's container. */\n  containerData?: PluginContainerData;\n  /** The source for the file's data. */\n  src?: FileSource;\n  /** File name. */\n  name?: string | null;\n  /** File type. */\n  type?: string | null;\n  /**\n   * Use `sizeInKb` instead.\n   * @deprecated\n   */\n  size?: number | null;\n  /** Settings for PDF files. */\n  pdfSettings?: PDFSettings;\n  /** File MIME type. */\n  mimeType?: string | null;\n  /** File path. */\n  path?: string | null;\n  /** File size in KB. */\n  sizeInKb?: string | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport enum ViewMode {\n  /** No PDF view */\n  NONE = 'NONE',\n  /** Full PDF view */\n  FULL = 'FULL',\n  /** Mini PDF view */\n  MINI = 'MINI',\n}\n\n/** @enumType */\nexport type ViewModeWithLiterals = ViewMode | 'NONE' | 'FULL' | 'MINI';\n\nexport interface FileSource extends FileSourceDataOneOf {\n  /** The absolute URL for the file's source. */\n  url?: string | null;\n  /**\n   * Custom ID. Use `id` instead.\n   * @deprecated\n   */\n  custom?: string | null;\n  /** An ID that's resolved to a URL by a resolver function. */\n  id?: string | null;\n  /** Indicates whether the file's source is private. Defaults to `false`. */\n  private?: boolean | null;\n}\n\n/** @oneof */\nexport interface FileSourceDataOneOf {\n  /** The absolute URL for the file's source. */\n  url?: string | null;\n  /**\n   * Custom ID. Use `id` instead.\n   * @deprecated\n   */\n  custom?: string | null;\n  /** An ID that's resolved to a URL by a resolver function. */\n  id?: string | null;\n}\n\nexport interface PDFSettings {\n  /**\n   * PDF view mode. One of the following:\n   * `NONE` : The PDF isn't displayed.\n   * `FULL` : A full page view of the PDF is displayed.\n   * `MINI` : A mini view of the PDF is displayed.\n   */\n  viewMode?: ViewModeWithLiterals;\n  /** Sets whether the PDF download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Sets whether the PDF print button is disabled. Defaults to `false`. */\n  disablePrint?: boolean | null;\n}\n\nexport interface GalleryData {\n  /** Styling for the gallery's container. */\n  containerData?: PluginContainerData;\n  /** The items in the gallery. */\n  items?: Item[];\n  /** Options for defining the gallery's appearance. */\n  options?: GalleryOptions;\n  /** Sets whether the gallery's expand button is disabled. Defaults to `false`. */\n  disableExpand?: boolean | null;\n  /** Sets whether the gallery's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface Media {\n  /** The source for the media's data. */\n  src?: FileSource;\n  /** Media width in pixels. */\n  width?: number | null;\n  /** Media height in pixels. */\n  height?: number | null;\n  /** Media duration in seconds. Only relevant for audio and video files. */\n  duration?: number | null;\n}\n\nexport interface Image {\n  /** Image file details. */\n  media?: Media;\n  /** Link details for images that are links. */\n  link?: Link;\n}\n\nexport interface Video {\n  /** Video file details. */\n  media?: Media;\n  /** Video thumbnail file details. */\n  thumbnail?: Media;\n}\n\nexport interface Item extends ItemDataOneOf {\n  /** An image item. */\n  image?: Image;\n  /** A video item. */\n  video?: Video;\n  /** Item title. */\n  title?: string | null;\n  /** Item's alternative text. */\n  altText?: string | null;\n}\n\n/** @oneof */\nexport interface ItemDataOneOf {\n  /** An image item. */\n  image?: Image;\n  /** A video item. */\n  video?: Video;\n}\n\nexport interface GalleryOptions {\n  /** Gallery layout. */\n  layout?: GalleryOptionsLayout;\n  /** Styling for gallery items. */\n  item?: ItemStyle;\n  /** Styling for gallery thumbnail images. */\n  thumbnails?: Thumbnails;\n}\n\nexport enum LayoutType {\n  /** Collage type */\n  COLLAGE = 'COLLAGE',\n  /** Masonry type */\n  MASONRY = 'MASONRY',\n  /** Grid type */\n  GRID = 'GRID',\n  /** Thumbnail type */\n  THUMBNAIL = 'THUMBNAIL',\n  /** Slider type */\n  SLIDER = 'SLIDER',\n  /** Slideshow type */\n  SLIDESHOW = 'SLIDESHOW',\n  /** Panorama type */\n  PANORAMA = 'PANORAMA',\n  /** Column type */\n  COLUMN = 'COLUMN',\n  /** Magic type */\n  MAGIC = 'MAGIC',\n  /** Fullsize images type */\n  FULLSIZE = 'FULLSIZE',\n}\n\n/** @enumType */\nexport type LayoutTypeWithLiterals =\n  | LayoutType\n  | 'COLLAGE'\n  | 'MASONRY'\n  | 'GRID'\n  | 'THUMBNAIL'\n  | 'SLIDER'\n  | 'SLIDESHOW'\n  | 'PANORAMA'\n  | 'COLUMN'\n  | 'MAGIC'\n  | 'FULLSIZE';\n\nexport enum Orientation {\n  /** Rows Orientation */\n  ROWS = 'ROWS',\n  /** Columns Orientation */\n  COLUMNS = 'COLUMNS',\n}\n\n/** @enumType */\nexport type OrientationWithLiterals = Orientation | 'ROWS' | 'COLUMNS';\n\nexport enum Crop {\n  /** Crop to fill */\n  FILL = 'FILL',\n  /** Crop to fit */\n  FIT = 'FIT',\n}\n\n/** @enumType */\nexport type CropWithLiterals = Crop | 'FILL' | 'FIT';\n\nexport enum ThumbnailsAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Right alignment */\n  RIGHT = 'RIGHT',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n  /** Left alignment */\n  LEFT = 'LEFT',\n  /** No thumbnail */\n  NONE = 'NONE',\n}\n\n/** @enumType */\nexport type ThumbnailsAlignmentWithLiterals =\n  | ThumbnailsAlignment\n  | 'TOP'\n  | 'RIGHT'\n  | 'BOTTOM'\n  | 'LEFT'\n  | 'NONE';\n\nexport interface GalleryOptionsLayout {\n  /** Gallery layout type. */\n  type?: LayoutTypeWithLiterals;\n  /** Sets whether horizontal scroll is enabled. Defaults to `true` unless the layout `type` is set to `GRID` or `COLLAGE`. */\n  horizontalScroll?: boolean | null;\n  /** Gallery orientation. */\n  orientation?: OrientationWithLiterals;\n  /** The number of columns to display on full size screens. */\n  numberOfColumns?: number | null;\n  /** The number of columns to display on mobile screens. */\n  mobileNumberOfColumns?: number | null;\n}\n\nexport interface ItemStyle {\n  /** Desirable dimension for each item in pixels (behvaior changes according to gallery type) */\n  targetSize?: number | null;\n  /** Item ratio */\n  ratio?: number | null;\n  /** Sets how item images are cropped. */\n  crop?: CropWithLiterals;\n  /** The spacing between items in pixels. */\n  spacing?: number | null;\n}\n\nexport interface Thumbnails {\n  /** Thumbnail alignment. */\n  placement?: ThumbnailsAlignmentWithLiterals;\n  /** Spacing between thumbnails in pixels. */\n  spacing?: number | null;\n}\n\nexport interface GIFData {\n  /** Styling for the GIF's container. */\n  containerData?: PluginContainerData;\n  /** The source of the full size GIF. */\n  original?: GIF;\n  /** The source of the downsized GIF. */\n  downsized?: GIF;\n  /** Height in pixels. */\n  height?: number;\n  /** Width in pixels. */\n  width?: number;\n  /** Type of GIF (Sticker or NORMAL). Defaults to `NORMAL`. */\n  gifType?: GIFTypeWithLiterals;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface GIF {\n  /**\n   * GIF format URL.\n   * @format WEB_URL\n   */\n  gif?: string | null;\n  /**\n   * MP4 format URL.\n   * @format WEB_URL\n   */\n  mp4?: string | null;\n  /**\n   * Thumbnail URL.\n   * @format WEB_URL\n   */\n  still?: string | null;\n}\n\nexport enum GIFType {\n  NORMAL = 'NORMAL',\n  STICKER = 'STICKER',\n}\n\n/** @enumType */\nexport type GIFTypeWithLiterals = GIFType | 'NORMAL' | 'STICKER';\n\nexport interface HeadingData {\n  /** Heading level from 1-6. */\n  level?: number;\n  /** Styling for the heading text. */\n  textStyle?: TextStyle;\n  /** Indentation level from 1-4. */\n  indentation?: number | null;\n  /** Rendered heading level for SEO/accessibility, overrides the HTML tag when set. */\n  renderedLevel?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface HTMLData extends HTMLDataDataOneOf {\n  /** The URL for the HTML code for the node. */\n  url?: string;\n  /** The HTML code for the node. */\n  html?: string;\n  /**\n   * Whether this is an AdSense element. Use `source` instead.\n   * @deprecated\n   */\n  isAdsense?: boolean | null;\n  /** The WixelWidget ID for AI_WIDGET source nodes. */\n  widgetId?: string;\n  /** Styling for the HTML node's container. Height property is irrelevant for HTML embeds when autoHeight is set to `true`. */\n  containerData?: PluginContainerData;\n  /** The type of HTML code. */\n  source?: SourceWithLiterals;\n  /** If container height is aligned with its content height. Defaults to `true`. */\n  autoHeight?: boolean | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\n/** @oneof */\nexport interface HTMLDataDataOneOf {\n  /** The URL for the HTML code for the node. */\n  url?: string;\n  /** The HTML code for the node. */\n  html?: string;\n  /**\n   * Whether this is an AdSense element. Use `source` instead.\n   * @deprecated\n   */\n  isAdsense?: boolean | null;\n  /** The WixelWidget ID for AI_WIDGET source nodes. */\n  widgetId?: string;\n}\n\nexport enum Source {\n  HTML = 'HTML',\n  ADSENSE = 'ADSENSE',\n  AI = 'AI',\n  AI_WIDGET = 'AI_WIDGET',\n}\n\n/** @enumType */\nexport type SourceWithLiterals =\n  | Source\n  | 'HTML'\n  | 'ADSENSE'\n  | 'AI'\n  | 'AI_WIDGET';\n\nexport interface ImageData {\n  /** Styling for the image's container. */\n  containerData?: PluginContainerData;\n  /** Image file details. */\n  image?: Media;\n  /** Link details for images that are links. */\n  link?: Link;\n  /** Sets whether the image expands to full screen when clicked. Defaults to `false`. */\n  disableExpand?: boolean | null;\n  /** Image's alternative text. */\n  altText?: string | null;\n  /**\n   * Deprecated: use Caption node instead.\n   * @deprecated\n   */\n  caption?: string | null;\n  /** Sets whether the image's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Sets whether the image is decorative and does not need an explanation. Defaults to `false`. */\n  decorative?: boolean | null;\n  /** Styling for the image. */\n  styles?: ImageDataStyles;\n  /** Non-destructive crop rectangle, expressed as fractions (0-1) of the original image. When omitted, the full image is shown. */\n  crop?: ImageDataCrop;\n  /** Optional shape mask applied to the visible crop. Supported values: CIRCLE, OVAL, STAR, PENTAGON, HEXAGON, TRIANGLE, HEART, RHOMBUS, FLUID, WINDOW. */\n  cropShape?: string | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface StylesBorder {\n  /** Border width in pixels. */\n  width?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Border radius in pixels. */\n  radius?: number | null;\n}\n\nexport interface ImageDataStyles {\n  /** Border attributes. */\n  border?: StylesBorder;\n}\n\nexport interface ImageDataCrop {\n  /** Left edge of the crop, as a fraction (0-1) of the original image width. */\n  x?: number | null;\n  /** Top edge of the crop, as a fraction (0-1) of the original image height. */\n  y?: number | null;\n  /** Visible width of the crop, as a fraction (0-1) of the original image width. */\n  width?: number | null;\n  /** Visible height of the crop, as a fraction (0-1) of the original image height. */\n  height?: number | null;\n}\n\nexport interface LinkPreviewData {\n  /** Styling for the link preview's container. */\n  containerData?: PluginContainerData;\n  /** Link details. */\n  link?: Link;\n  /** Preview title. */\n  title?: string | null;\n  /** Preview thumbnail URL. */\n  thumbnailUrl?: string | null;\n  /** Preview description. */\n  description?: string | null;\n  /** The preview content as HTML. */\n  html?: string | null;\n  /** Styling for the link preview. */\n  styles?: LinkPreviewDataStyles;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport enum StylesPosition {\n  /** Thumbnail positioned at the start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Thumbnail positioned at the end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n  /** Thumbnail positioned at the top */\n  TOP = 'TOP',\n  /** Thumbnail hidden and not displayed */\n  HIDDEN = 'HIDDEN',\n}\n\n/** @enumType */\nexport type StylesPositionWithLiterals =\n  | StylesPosition\n  | 'START'\n  | 'END'\n  | 'TOP'\n  | 'HIDDEN';\n\nexport interface LinkPreviewDataStyles {\n  /**\n   * Background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n  /**\n   * Title color as a hexadecimal value.\n   * @maxLength 19\n   */\n  titleColor?: string | null;\n  /**\n   * Subtitle color as a hexadecimal value.\n   * @maxLength 19\n   */\n  subtitleColor?: string | null;\n  /**\n   * Link color as a hexadecimal value.\n   * @maxLength 19\n   */\n  linkColor?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Position of thumbnail. Defaults to `START`. */\n  thumbnailPosition?: StylesPositionWithLiterals;\n}\n\nexport interface MapData {\n  /** Styling for the map's container. */\n  containerData?: PluginContainerData;\n  /** Map settings. */\n  mapSettings?: MapSettings;\n}\n\nexport interface MapSettings {\n  /** The address to display on the map. */\n  address?: string | null;\n  /** Sets whether the map is draggable. */\n  draggable?: boolean | null;\n  /** Sets whether the location marker is visible. */\n  marker?: boolean | null;\n  /** Sets whether street view control is enabled. */\n  streetViewControl?: boolean | null;\n  /** Sets whether zoom control is enabled. */\n  zoomControl?: boolean | null;\n  /** Location latitude. */\n  lat?: number | null;\n  /** Location longitude. */\n  lng?: number | null;\n  /** Location name. */\n  locationName?: string | null;\n  /** Sets whether view mode control is enabled. */\n  viewModeControl?: boolean | null;\n  /** Initial zoom value. */\n  initialZoom?: number | null;\n  /** Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */\n  mapType?: MapTypeWithLiterals;\n}\n\nexport enum MapType {\n  /** Roadmap map type */\n  ROADMAP = 'ROADMAP',\n  /** Satellite map type */\n  SATELITE = 'SATELITE',\n  /** Hybrid map type */\n  HYBRID = 'HYBRID',\n  /** Terrain map type */\n  TERRAIN = 'TERRAIN',\n}\n\n/** @enumType */\nexport type MapTypeWithLiterals =\n  | MapType\n  | 'ROADMAP'\n  | 'SATELITE'\n  | 'HYBRID'\n  | 'TERRAIN';\n\nexport interface ParagraphData {\n  /** Styling for the paragraph text. */\n  textStyle?: TextStyle;\n  /** Indentation level from 1-4. */\n  indentation?: number | null;\n  /** Paragraph level */\n  level?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface PollData {\n  /** Styling for the poll's container. */\n  containerData?: PluginContainerData;\n  /** Poll data. */\n  poll?: Poll;\n  /** Layout settings for the poll and voting options. */\n  layout?: PollDataLayout;\n  /** Styling for the poll and voting options. */\n  design?: Design;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport enum ViewRole {\n  /** Only Poll creator can view the results */\n  CREATOR = 'CREATOR',\n  /** Anyone who voted can see the results */\n  VOTERS = 'VOTERS',\n  /** Anyone can see the results, even if one didn't vote */\n  EVERYONE = 'EVERYONE',\n}\n\n/** @enumType */\nexport type ViewRoleWithLiterals = ViewRole | 'CREATOR' | 'VOTERS' | 'EVERYONE';\n\nexport enum VoteRole {\n  /** Logged in member */\n  SITE_MEMBERS = 'SITE_MEMBERS',\n  /** Anyone */\n  ALL = 'ALL',\n}\n\n/** @enumType */\nexport type VoteRoleWithLiterals = VoteRole | 'SITE_MEMBERS' | 'ALL';\n\nexport interface Permissions {\n  /** Sets who can view the poll results. */\n  view?: ViewRoleWithLiterals;\n  /** Sets who can vote. */\n  vote?: VoteRoleWithLiterals;\n  /** Sets whether one voter can vote multiple times. Defaults to `false`. */\n  allowMultipleVotes?: boolean | null;\n}\n\nexport interface Option {\n  /** Option ID. */\n  id?: string | null;\n  /** Option title. */\n  title?: string | null;\n  /** The image displayed with the option. */\n  image?: Media;\n}\n\nexport interface Settings {\n  /** Permissions settings for voting. */\n  permissions?: Permissions;\n  /** Sets whether voters are displayed in the vote results. Defaults to `true`. */\n  showVoters?: boolean | null;\n  /** Sets whether the vote count is displayed. Defaults to `true`. */\n  showVotesCount?: boolean | null;\n}\n\nexport enum PollLayoutType {\n  /** List */\n  LIST = 'LIST',\n  /** Grid */\n  GRID = 'GRID',\n}\n\n/** @enumType */\nexport type PollLayoutTypeWithLiterals = PollLayoutType | 'LIST' | 'GRID';\n\nexport enum PollLayoutDirection {\n  /** Left-to-right */\n  LTR = 'LTR',\n  /** Right-to-left */\n  RTL = 'RTL',\n}\n\n/** @enumType */\nexport type PollLayoutDirectionWithLiterals =\n  | PollLayoutDirection\n  | 'LTR'\n  | 'RTL';\n\nexport interface PollLayout {\n  /** The layout for displaying the voting options. */\n  type?: PollLayoutTypeWithLiterals;\n  /** The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */\n  direction?: PollLayoutDirectionWithLiterals;\n  /** Sets whether to display the main poll image. Defaults to `false`. */\n  enableImage?: boolean | null;\n}\n\nexport interface OptionLayout {\n  /** Sets whether to display option images. Defaults to `false`. */\n  enableImage?: boolean | null;\n}\n\nexport enum PollDesignBackgroundType {\n  /** Color background type */\n  COLOR = 'COLOR',\n  /** Image background type */\n  IMAGE = 'IMAGE',\n  /** Gradiant background type */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type PollDesignBackgroundTypeWithLiterals =\n  | PollDesignBackgroundType\n  | 'COLOR'\n  | 'IMAGE'\n  | 'GRADIENT';\n\nexport interface BackgroundGradient {\n  /** The gradient angle in degrees. */\n  angle?: number | null;\n  /**\n   * The start color as a hexademical value.\n   * @maxLength 19\n   */\n  startColor?: string | null;\n  /**\n   * The end color as a hexademical value.\n   * @maxLength 19\n   */\n  lastColor?: string | null;\n}\n\nexport interface PollDesignBackground\n  extends PollDesignBackgroundBackgroundOneOf {\n  /**\n   * The background color as a hexademical value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** An image to use for the background. */\n  image?: Media;\n  /** Details for a gradient background. */\n  gradient?: BackgroundGradient;\n  /** Background type. For each option, include the relevant details. */\n  type?: PollDesignBackgroundTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface PollDesignBackgroundBackgroundOneOf {\n  /**\n   * The background color as a hexademical value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** An image to use for the background. */\n  image?: Media;\n  /** Details for a gradient background. */\n  gradient?: BackgroundGradient;\n}\n\nexport interface PollDesign {\n  /** Background styling. */\n  background?: PollDesignBackground;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface OptionDesign {\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface Poll {\n  /** Poll ID. */\n  id?: string | null;\n  /** Poll title. */\n  title?: string | null;\n  /** Poll creator ID. */\n  creatorId?: string | null;\n  /** Main poll image. */\n  image?: Media;\n  /** Voting options. */\n  options?: Option[];\n  /** The poll's permissions and display settings. */\n  settings?: Settings;\n}\n\nexport interface PollDataLayout {\n  /** Poll layout settings. */\n  poll?: PollLayout;\n  /** Voting otpions layout settings. */\n  options?: OptionLayout;\n}\n\nexport interface Design {\n  /** Styling for the poll. */\n  poll?: PollDesign;\n  /** Styling for voting options. */\n  options?: OptionDesign;\n}\n\nexport interface TextData {\n  /** The text to apply decorations to. */\n  text?: string;\n  /** The decorations to apply. */\n  decorations?: Decoration[];\n}\n\n/** Adds appearence changes to text */\nexport interface Decoration extends DecorationDataOneOf {\n  /** Data for an anchor link decoration. */\n  anchorData?: AnchorData;\n  /** Data for a color decoration. */\n  colorData?: ColorData;\n  /** Data for an external link decoration. */\n  linkData?: LinkData;\n  /** Data for a mention decoration. */\n  mentionData?: MentionData;\n  /** Data for a font size decoration. */\n  fontSizeData?: FontSizeData;\n  /** Font weight for a bold decoration. */\n  fontWeightValue?: number | null;\n  /** Data for an italic decoration. Defaults to `true`. */\n  italicData?: boolean | null;\n  /** Data for an underline decoration. Defaults to `true`. */\n  underlineData?: boolean | null;\n  /** Data for a spoiler decoration. */\n  spoilerData?: SpoilerData;\n  /** Data for a strikethrough decoration. Defaults to `true`. */\n  strikethroughData?: boolean | null;\n  /** Data for a superscript decoration. Defaults to `true`. */\n  superscriptData?: boolean | null;\n  /** Data for a subscript decoration. Defaults to `true`. */\n  subscriptData?: boolean | null;\n  /** Data for a font family decoration. */\n  fontFamilyData?: FontFamilyData;\n  /** Data for a hand-drawn sketch annotation decoration. */\n  sketchData?: SketchData;\n  /** The type of decoration to apply. */\n  type?: DecorationTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface DecorationDataOneOf {\n  /** Data for an anchor link decoration. */\n  anchorData?: AnchorData;\n  /** Data for a color decoration. */\n  colorData?: ColorData;\n  /** Data for an external link decoration. */\n  linkData?: LinkData;\n  /** Data for a mention decoration. */\n  mentionData?: MentionData;\n  /** Data for a font size decoration. */\n  fontSizeData?: FontSizeData;\n  /** Font weight for a bold decoration. */\n  fontWeightValue?: number | null;\n  /** Data for an italic decoration. Defaults to `true`. */\n  italicData?: boolean | null;\n  /** Data for an underline decoration. Defaults to `true`. */\n  underlineData?: boolean | null;\n  /** Data for a spoiler decoration. */\n  spoilerData?: SpoilerData;\n  /** Data for a strikethrough decoration. Defaults to `true`. */\n  strikethroughData?: boolean | null;\n  /** Data for a superscript decoration. Defaults to `true`. */\n  superscriptData?: boolean | null;\n  /** Data for a subscript decoration. Defaults to `true`. */\n  subscriptData?: boolean | null;\n  /** Data for a font family decoration. */\n  fontFamilyData?: FontFamilyData;\n  /** Data for a hand-drawn sketch annotation decoration. */\n  sketchData?: SketchData;\n}\n\nexport enum DecorationType {\n  BOLD = 'BOLD',\n  ITALIC = 'ITALIC',\n  UNDERLINE = 'UNDERLINE',\n  SPOILER = 'SPOILER',\n  ANCHOR = 'ANCHOR',\n  MENTION = 'MENTION',\n  LINK = 'LINK',\n  COLOR = 'COLOR',\n  FONT_SIZE = 'FONT_SIZE',\n  EXTERNAL = 'EXTERNAL',\n  STRIKETHROUGH = 'STRIKETHROUGH',\n  SUPERSCRIPT = 'SUPERSCRIPT',\n  SUBSCRIPT = 'SUBSCRIPT',\n  FONT_FAMILY = 'FONT_FAMILY',\n  SKETCH = 'SKETCH',\n}\n\n/** @enumType */\nexport type DecorationTypeWithLiterals =\n  | DecorationType\n  | 'BOLD'\n  | 'ITALIC'\n  | 'UNDERLINE'\n  | 'SPOILER'\n  | 'ANCHOR'\n  | 'MENTION'\n  | 'LINK'\n  | 'COLOR'\n  | 'FONT_SIZE'\n  | 'EXTERNAL'\n  | 'STRIKETHROUGH'\n  | 'SUPERSCRIPT'\n  | 'SUBSCRIPT'\n  | 'FONT_FAMILY'\n  | 'SKETCH';\n\nexport interface AnchorData {\n  /** The target node's ID. */\n  anchor?: string;\n}\n\nexport interface ColorData {\n  /** The text's background color as a hexadecimal value. */\n  background?: string | null;\n  /** The text's foreground color as a hexadecimal value. */\n  foreground?: string | null;\n}\n\nexport interface LinkData {\n  /** Link details. */\n  link?: Link;\n}\n\nexport interface MentionData {\n  /** The mentioned user's name. */\n  name?: string;\n  /** The version of the user's name that appears after the `@` character in the mention. */\n  slug?: string;\n  /** Mentioned user's ID. */\n  id?: string | null;\n  /** The kind of entity the mention refers to. Any value is accepted, and it's usually used to mark a mention as a group mention (for example, `group`). When empty, the mention refers to a member. */\n  type?: string | null;\n}\n\nexport interface FontSizeData {\n  /** The units used for the font size. */\n  unit?: FontTypeWithLiterals;\n  /** Font size value. */\n  value?: number | null;\n}\n\nexport enum FontType {\n  PX = 'PX',\n  EM = 'EM',\n}\n\n/** @enumType */\nexport type FontTypeWithLiterals = FontType | 'PX' | 'EM';\n\nexport interface SpoilerData {\n  /** Spoiler ID. */\n  id?: string | null;\n}\n\nexport interface FontFamilyData {\n  /** @maxLength 1000 */\n  value?: string | null;\n}\n\nexport interface SketchData {\n  /** The sketch annotation variant to draw over the text. */\n  variant?: VariantWithLiterals;\n  /**\n   * Annotation color. Defaults to the theme action color.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Whether the annotation animates on first paint. Defaults to `true`. */\n  animate?: boolean | null;\n}\n\nexport enum Variant {\n  UNDERLINE = 'UNDERLINE',\n  BOX = 'BOX',\n  CIRCLE = 'CIRCLE',\n  HIGHLIGHT = 'HIGHLIGHT',\n  STRIKETHROUGH = 'STRIKETHROUGH',\n  CROSSED_OFF = 'CROSSED_OFF',\n}\n\n/** @enumType */\nexport type VariantWithLiterals =\n  | Variant\n  | 'UNDERLINE'\n  | 'BOX'\n  | 'CIRCLE'\n  | 'HIGHLIGHT'\n  | 'STRIKETHROUGH'\n  | 'CROSSED_OFF';\n\nexport interface AppEmbedData extends AppEmbedDataAppDataOneOf {\n  /** Data for embedded Wix Bookings content. */\n  bookingData?: BookingData;\n  /** Data for embedded Wix Events content. */\n  eventData?: EventData;\n  /** The type of Wix App content being embedded. */\n  type?: AppTypeWithLiterals;\n  /** The ID of the embedded content. */\n  itemId?: string | null;\n  /** The name of the embedded content. */\n  name?: string | null;\n  /**\n   * Deprecated: Use `image` instead.\n   * @deprecated\n   */\n  imageSrc?: string | null;\n  /** The URL for the embedded content. */\n  url?: string | null;\n  /** An image for the embedded content. */\n  image?: Media;\n  /** Whether to hide the image. */\n  hideImage?: boolean | null;\n  /** Whether to hide the title. */\n  hideTitle?: boolean | null;\n  /** Whether to hide the price. */\n  hidePrice?: boolean | null;\n  /** Whether to hide the description (Event and Booking). */\n  hideDescription?: boolean | null;\n  /** Whether to hide the date and time (Event). */\n  hideDateTime?: boolean | null;\n  /** Whether to hide the location (Event). */\n  hideLocation?: boolean | null;\n  /** Whether to hide the duration (Booking). */\n  hideDuration?: boolean | null;\n  /** Whether to hide the button. */\n  hideButton?: boolean | null;\n  /** Whether to hide the ribbon. */\n  hideRibbon?: boolean | null;\n  /** Button styling options. */\n  buttonStyles?: ButtonStyles;\n  /** Image styling options. */\n  imageStyles?: ImageStyles;\n  /** Ribbon styling options. */\n  ribbonStyles?: RibbonStyles;\n  /** Card styling options. */\n  cardStyles?: CardStyles;\n  /** Styling for the app embed's container. */\n  containerData?: PluginContainerData;\n  /** Pricing data for embedded Wix App content. */\n  pricingData?: PricingData;\n  /** Node animation. */\n  animation?: Animation;\n}\n\n/** @oneof */\nexport interface AppEmbedDataAppDataOneOf {\n  /** Data for embedded Wix Bookings content. */\n  bookingData?: BookingData;\n  /** Data for embedded Wix Events content. */\n  eventData?: EventData;\n}\n\nexport enum Position {\n  /** Image positioned at the start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Image positioned at the end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n  /** Image positioned at the top */\n  TOP = 'TOP',\n}\n\n/** @enumType */\nexport type PositionWithLiterals = Position | 'START' | 'END' | 'TOP';\n\nexport enum AspectRatio {\n  /** 1:1 aspect ratio */\n  SQUARE = 'SQUARE',\n  /** 16:9 aspect ratio */\n  RECTANGLE = 'RECTANGLE',\n}\n\n/** @enumType */\nexport type AspectRatioWithLiterals = AspectRatio | 'SQUARE' | 'RECTANGLE';\n\nexport enum Resizing {\n  /** Fill the container, may crop the image */\n  FILL = 'FILL',\n  /** Fit the image within the container */\n  FIT = 'FIT',\n}\n\n/** @enumType */\nexport type ResizingWithLiterals = Resizing | 'FILL' | 'FIT';\n\nexport enum Placement {\n  /** Ribbon placed on the image */\n  IMAGE = 'IMAGE',\n  /** Ribbon placed on the product information */\n  PRODUCT_INFO = 'PRODUCT_INFO',\n}\n\n/** @enumType */\nexport type PlacementWithLiterals = Placement | 'IMAGE' | 'PRODUCT_INFO';\n\nexport enum CardStylesType {\n  /** Card with visible border and background */\n  CONTAINED = 'CONTAINED',\n  /** Card without visible border */\n  FRAMELESS = 'FRAMELESS',\n}\n\n/** @enumType */\nexport type CardStylesTypeWithLiterals =\n  | CardStylesType\n  | 'CONTAINED'\n  | 'FRAMELESS';\n\nexport enum Alignment {\n  /** Content aligned to start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Content centered */\n  CENTER = 'CENTER',\n  /** Content aligned to end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n}\n\n/** @enumType */\nexport type AlignmentWithLiterals = Alignment | 'START' | 'CENTER' | 'END';\n\nexport enum Layout {\n  /** Elements stacked vertically */\n  STACKED = 'STACKED',\n  /** Elements arranged horizontally */\n  SIDE_BY_SIDE = 'SIDE_BY_SIDE',\n}\n\n/** @enumType */\nexport type LayoutWithLiterals = Layout | 'STACKED' | 'SIDE_BY_SIDE';\n\nexport enum AppType {\n  PRODUCT = 'PRODUCT',\n  EVENT = 'EVENT',\n  BOOKING = 'BOOKING',\n}\n\n/** @enumType */\nexport type AppTypeWithLiterals = AppType | 'PRODUCT' | 'EVENT' | 'BOOKING';\n\nexport interface BookingData {\n  /** Booking duration in minutes. */\n  durations?: string | null;\n}\n\nexport interface EventData {\n  /** Event schedule. */\n  scheduling?: string | null;\n  /** Event location. */\n  location?: string | null;\n}\n\nexport interface ButtonStyles {\n  /** Text to display on the button. */\n  buttonText?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @maxLength 19\n   */\n  textColor?: string | null;\n  /**\n   * Background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n  /**\n   * Border color as a hexadecimal value (hover state).\n   * @maxLength 19\n   */\n  borderColorHover?: string | null;\n  /**\n   * Text color as a hexadecimal value (hover state).\n   * @maxLength 19\n   */\n  textColorHover?: string | null;\n  /**\n   * Background color as a hexadecimal value (hover state).\n   * @maxLength 19\n   */\n  backgroundColorHover?: string | null;\n  /** Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`. */\n  buttonSize?: string | null;\n}\n\nexport interface ImageStyles {\n  /** Whether to hide the image. */\n  hideImage?: boolean | null;\n  /** Position of image. Defaults to `START`. */\n  imagePosition?: PositionWithLiterals;\n  /** Aspect ratio for the image. Defaults to `SQUARE`. */\n  aspectRatio?: AspectRatioWithLiterals;\n  /** How the image should be resized. Defaults to `FILL`. */\n  resizing?: ResizingWithLiterals;\n  /**\n   * Image border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Image border width in pixels. */\n  borderWidth?: number | null;\n  /** Image border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface RibbonStyles {\n  /** Text to display on the ribbon. */\n  ribbonText?: string | null;\n  /**\n   * Ribbon background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n  /**\n   * Ribbon text color as a hexadecimal value.\n   * @maxLength 19\n   */\n  textColor?: string | null;\n  /**\n   * Ribbon border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Ribbon border width in pixels. */\n  borderWidth?: number | null;\n  /** Ribbon border radius in pixels. */\n  borderRadius?: number | null;\n  /** Placement of the ribbon. Defaults to `IMAGE`. */\n  ribbonPlacement?: PlacementWithLiterals;\n}\n\nexport interface CardStyles {\n  /**\n   * Card background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n  /**\n   * Card border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Card border width in pixels. */\n  borderWidth?: number | null;\n  /** Card border radius in pixels. */\n  borderRadius?: number | null;\n  /** Card type. Defaults to `CONTAINED`. */\n  type?: CardStylesTypeWithLiterals;\n  /** Content alignment. Defaults to `START`. */\n  alignment?: AlignmentWithLiterals;\n  /** Layout for title and price. Defaults to `STACKED`. */\n  titlePriceLayout?: LayoutWithLiterals;\n  /**\n   * Title text color as a hexadecimal value.\n   * @maxLength 19\n   */\n  titleColor?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @maxLength 19\n   */\n  textColor?: string | null;\n}\n\nexport interface PricingData {\n  /**\n   * Minimum numeric price value as string (e.g., \"10.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  valueFrom?: string | null;\n  /**\n   * Maximum numeric price value as string (e.g., \"19.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  valueTo?: string | null;\n  /**\n   * Numeric price value as string after discount application (e.g., \"15.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  discountedValue?: string | null;\n  /**\n   * Currency of the value in ISO 4217 format (e.g., \"USD\", \"EUR\").\n   * @format CURRENCY\n   */\n  currency?: string | null;\n  /**\n   * Pricing plan ID.\n   * @format GUID\n   */\n  pricingPlanId?: string | null;\n}\n\nexport interface VideoData {\n  /** Styling for the video's container. */\n  containerData?: PluginContainerData;\n  /** Video details. */\n  video?: Media;\n  /** Video thumbnail details. */\n  thumbnail?: Media;\n  /** Sets whether the video's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Video title. */\n  title?: string | null;\n  /** Video options. */\n  options?: PlaybackOptions;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface PlaybackOptions {\n  /** Sets whether the media will automatically start playing. */\n  autoPlay?: boolean | null;\n  /** Sets whether media's will be looped. */\n  playInLoop?: boolean | null;\n  /** Sets whether media's controls will be shown. */\n  showControls?: boolean | null;\n}\n\nexport interface EmbedData {\n  /** Styling for the oEmbed node's container. */\n  containerData?: PluginContainerData;\n  /** An [oEmbed](https://www.oembed.com) object. */\n  oembed?: Oembed;\n  /** Origin asset source. */\n  src?: string | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface Oembed {\n  /** The resource type. */\n  type?: string | null;\n  /** The width of the resource specified in the `url` property in pixels. */\n  width?: number | null;\n  /** The height of the resource specified in the `url` property in pixels. */\n  height?: number | null;\n  /** Resource title. */\n  title?: string | null;\n  /** The source URL for the resource. */\n  url?: string | null;\n  /** HTML for embedding a video player. The HTML should have no padding or margins. */\n  html?: string | null;\n  /** The name of the author or owner of the resource. */\n  authorName?: string | null;\n  /** The URL for the author or owner of the resource. */\n  authorUrl?: string | null;\n  /** The name of the resource provider. */\n  providerName?: string | null;\n  /** The URL for the resource provider. */\n  providerUrl?: string | null;\n  /** The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */\n  thumbnailUrl?: string | null;\n  /** The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */\n  thumbnailWidth?: string | null;\n  /** The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */\n  thumbnailHeight?: string | null;\n  /** The URL for an embedded viedo. */\n  videoUrl?: string | null;\n  /** The oEmbed version number.  This value must be `1.0`. */\n  version?: string | null;\n}\n\nexport interface CollapsibleListData {\n  /** Styling for the collapsible list's container. */\n  containerData?: PluginContainerData;\n  /** If `true`, only one item can be expanded at a time. Defaults to `false`. */\n  expandOnlyOne?: boolean | null;\n  /** Sets which items are expanded when the page loads. */\n  initialExpandedItems?: InitialExpandedItemsWithLiterals;\n  /** The direction of the text in the list. Either left-to-right or right-to-left. */\n  direction?: DirectionWithLiterals;\n  /** If `true`, The collapsible item will appear in search results as an FAQ. */\n  isQapageData?: boolean | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport enum InitialExpandedItems {\n  /** First item will be expended initally */\n  FIRST = 'FIRST',\n  /** All items will expended initally */\n  ALL = 'ALL',\n  /** All items collapsed initally */\n  NONE = 'NONE',\n}\n\n/** @enumType */\nexport type InitialExpandedItemsWithLiterals =\n  | InitialExpandedItems\n  | 'FIRST'\n  | 'ALL'\n  | 'NONE';\n\nexport enum Direction {\n  /** Left-to-right */\n  LTR = 'LTR',\n  /** Right-to-left */\n  RTL = 'RTL',\n}\n\n/** @enumType */\nexport type DirectionWithLiterals = Direction | 'LTR' | 'RTL';\n\nexport interface TableData {\n  /** Styling for the table's container. */\n  containerData?: PluginContainerData;\n  /** The table's dimensions. */\n  dimensions?: Dimensions;\n  /**\n   * Deprecated: Use `rowHeader` and `columnHeader` instead.\n   * @deprecated\n   */\n  header?: boolean | null;\n  /** Sets whether the table's first row is a header. Defaults to `false`. */\n  rowHeader?: boolean | null;\n  /** Sets whether the table's first column is a header. Defaults to `false`. */\n  columnHeader?: boolean | null;\n  /** The spacing between cells in pixels. Defaults to `0`. */\n  cellSpacing?: number | null;\n  /**\n   * Padding in pixels for cells. Follows CSS order: top, right, bottom, left.\n   * @maxSize 4\n   */\n  cellPadding?: number[];\n  /** Table's alternative text. */\n  altText?: string | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface Dimensions {\n  /** An array representing relative width of each column in relation to the other columns. */\n  colsWidthRatio?: number[];\n  /** An array representing the height of each row in pixels. */\n  rowsHeight?: number[];\n  /** An array representing the minimum width of each column in pixels. */\n  colsMinWidth?: number[];\n}\n\nexport interface TableCellData {\n  /** Styling for the cell's background color and text alignment. */\n  cellStyle?: CellStyle;\n  /** The cell's border colors. */\n  borderColors?: BorderColors;\n  /** Defines how many columns the cell spans. Default: 1. */\n  colspan?: number | null;\n  /** Defines how many rows the cell spans. Default: 1. */\n  rowspan?: number | null;\n  /** The cell's border widths. */\n  borderWidths?: BorderWidths;\n}\n\nexport enum VerticalAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Middle alignment */\n  MIDDLE = 'MIDDLE',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n}\n\n/** @enumType */\nexport type VerticalAlignmentWithLiterals =\n  | VerticalAlignment\n  | 'TOP'\n  | 'MIDDLE'\n  | 'BOTTOM';\n\nexport interface CellStyle {\n  /** Vertical alignment for the cell's text. */\n  verticalAlignment?: VerticalAlignmentWithLiterals;\n  /**\n   * Cell background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n}\n\nexport interface BorderColors {\n  /**\n   * Left border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  left?: string | null;\n  /**\n   * Right border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  right?: string | null;\n  /**\n   * Top border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  top?: string | null;\n  /**\n   * Bottom border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  bottom?: string | null;\n}\n\nexport interface BorderWidths {\n  /** Left border width in pixels. */\n  left?: number | null;\n  /** Right border width in pixels. */\n  right?: number | null;\n  /** Top border width in pixels. */\n  top?: number | null;\n  /** Bottom border width in pixels. */\n  bottom?: number | null;\n}\n\n/**\n * `NullValue` is a singleton enumeration to represent the null value for the\n * `Value` type union.\n *\n * The JSON representation for `NullValue` is JSON `null`.\n */\nexport enum NullValue {\n  /** Null value. */\n  NULL_VALUE = 'NULL_VALUE',\n}\n\n/** @enumType */\nexport type NullValueWithLiterals = NullValue | 'NULL_VALUE';\n\n/**\n * `ListValue` is a wrapper around a repeated field of values.\n *\n * The JSON representation for `ListValue` is JSON array.\n */\nexport interface ListValue {\n  /** Repeated field of dynamically typed values. */\n  values?: any[];\n}\n\nexport interface AudioData {\n  /** Styling for the audio node's container. */\n  containerData?: PluginContainerData;\n  /** Audio file details. */\n  audio?: Media;\n  /** Sets whether the audio node's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Cover image. */\n  coverImage?: Media;\n  /** Track name. */\n  name?: string | null;\n  /** Author name. */\n  authorName?: string | null;\n  /** An HTML version of the audio node. */\n  html?: string | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface OrderedListData {\n  /** Indentation level from 0-4. */\n  indentation?: number;\n  /** Offset level from 0-4. */\n  offset?: number | null;\n  /** List start number. */\n  start?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface BulletedListData {\n  /** Indentation level from 0-4. */\n  indentation?: number;\n  /** Offset level from 0-4. */\n  offset?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface BlockquoteData {\n  /** Indentation level from 1-4. */\n  indentation?: number;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface CaptionData {\n  textStyle?: TextStyle;\n}\n\nexport interface LayoutData {\n  /**\n   * Deprecated: Use `background` instead.\n   * @maxLength 19\n   * @deprecated\n   */\n  backgroundColor?: string | null;\n  /** Background image. */\n  backgroundImage?: LayoutDataBackgroundImage;\n  /**\n   * Border color as a hexadecimal value.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Deprecated: Use `backdrop` instead.\n   * @maxLength 19\n   * @deprecated\n   */\n  backdropColor?: string | null;\n  /** Backdrop image. */\n  backdropImage?: LayoutDataBackgroundImage;\n  /** Backdrop top padding. */\n  backdropPaddingTop?: number | null;\n  /** Backdrop bottom padding */\n  backdropPaddingBottom?: number | null;\n  /** Horizontal and vertical gap between columns */\n  gap?: number | null;\n  /**\n   * Padding in pixels for cells. Follows CSS order: top, right, bottom, left\n   * @maxSize 4\n   */\n  cellPadding?: number[];\n  /** Vertical alignment for the cell's items. */\n  cellVerticalAlignment?: VerticalAlignmentAlignmentWithLiterals;\n  /** Responsiveness behaviour of columns when responsiveness applies. Either stacks or wrappers. */\n  responsivenessBehaviour?: ResponsivenessBehaviourWithLiterals;\n  /** Size in pixels when responsiveness_behaviour applies */\n  responsivenessBreakpoint?: number | null;\n  /** Styling for the layout's container. */\n  containerData?: PluginContainerData;\n  /** Defines where selected design propertied applies to */\n  designTarget?: DesignTargetWithLiterals;\n  /** Banner configuration. When present, this layout is attached to a document edge (top or bottom). */\n  banner?: Banner;\n  /** Background styling (color or gradient). */\n  background?: LayoutDataBackground;\n  /** Backdrop styling (color or gradient). */\n  backdrop?: Backdrop;\n  /** Node animation. */\n  animation?: Animation;\n  /** Shape divider at the top edge of the layout. */\n  topDivider?: SectionDivider;\n  /** Shape divider at the bottom edge of the layout. */\n  bottomDivider?: SectionDivider;\n}\n\nexport enum ImageScalingScaling {\n  /** Auto image scaling */\n  AUTO = 'AUTO',\n  /** Contain image scaling */\n  CONTAIN = 'CONTAIN',\n  /** Cover image scaling */\n  COVER = 'COVER',\n}\n\n/** @enumType */\nexport type ImageScalingScalingWithLiterals =\n  | ImageScalingScaling\n  | 'AUTO'\n  | 'CONTAIN'\n  | 'COVER';\n\nexport enum ImagePosition {\n  /** Image positioned at the center */\n  CENTER = 'CENTER',\n  /** Image positioned on the left */\n  CENTER_LEFT = 'CENTER_LEFT',\n  /** Image positioned on the right */\n  CENTER_RIGHT = 'CENTER_RIGHT',\n  /** Image positioned at the center top */\n  TOP = 'TOP',\n  /** Image positioned at the top left */\n  TOP_LEFT = 'TOP_LEFT',\n  /** Image positioned at the top right */\n  TOP_RIGHT = 'TOP_RIGHT',\n  /** Image positioned at the center bottom */\n  BOTTOM = 'BOTTOM',\n  /** Image positioned at the bottom left */\n  BOTTOM_LEFT = 'BOTTOM_LEFT',\n  /** Image positioned at the bottom right */\n  BOTTOM_RIGHT = 'BOTTOM_RIGHT',\n}\n\n/** @enumType */\nexport type ImagePositionWithLiterals =\n  | ImagePosition\n  | 'CENTER'\n  | 'CENTER_LEFT'\n  | 'CENTER_RIGHT'\n  | 'TOP'\n  | 'TOP_LEFT'\n  | 'TOP_RIGHT'\n  | 'BOTTOM'\n  | 'BOTTOM_LEFT'\n  | 'BOTTOM_RIGHT';\n\n/** Background styling (color or gradient) */\nexport interface LayoutDataBackground {\n  /** Background type. */\n  type?: LayoutDataBackgroundTypeWithLiterals;\n  /**\n   * Background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Gradient configuration. */\n  gradient?: Gradient;\n}\n\n/** Background type */\nexport enum LayoutDataBackgroundType {\n  /** Solid color background */\n  COLOR = 'COLOR',\n  /** Gradient background */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type LayoutDataBackgroundTypeWithLiterals =\n  | LayoutDataBackgroundType\n  | 'COLOR'\n  | 'GRADIENT';\n\nexport enum Origin {\n  /** Banner originated from an image */\n  IMAGE = 'IMAGE',\n  /** Banner originated from a layout */\n  LAYOUT = 'LAYOUT',\n}\n\n/** @enumType */\nexport type OriginWithLiterals = Origin | 'IMAGE' | 'LAYOUT';\n\nexport enum BannerPosition {\n  /** Attached to the top edge (banner) */\n  TOP = 'TOP',\n  /** Attached to the bottom edge (footer) */\n  BOTTOM = 'BOTTOM',\n}\n\n/** @enumType */\nexport type BannerPositionWithLiterals = BannerPosition | 'TOP' | 'BOTTOM';\n\n/** How the stacked layers fade relative to the base shape. Named for a bottom divider; top dividers render mirrored, so the visual fade flips. */\nexport enum LayerEffect {\n  /** Shape keeps its height, a solid filler bar pushes it away from the edge */\n  CENTER = 'CENTER',\n  /** Deeper (more transparent) layers shrink toward the edge inside the original band while a solid filler bar keeps its full height, so the faded copies hug the top of the band */\n  FADE_TO_TOP = 'FADE_TO_TOP',\n  /** Deeper (more transparent) layers stretch taller into the section, so the faded copies fan out above the base shape and descend to the layout edge */\n  FADE_TO_BOTTOM = 'FADE_TO_BOTTOM',\n}\n\n/** @enumType */\nexport type LayerEffectWithLiterals =\n  | LayerEffect\n  | 'CENTER'\n  | 'FADE_TO_TOP'\n  | 'FADE_TO_BOTTOM';\n\n/** Divider shape preset */\nexport enum Shape {\n  /** Ellipse shape */\n  ELLIPSE = 'ELLIPSE',\n  /** Tilt shape */\n  TILT = 'TILT',\n  /** Liquid shape */\n  LIQUID = 'LIQUID',\n  /** Left wave shape */\n  LEFT_WAVE = 'LEFT_WAVE',\n  /** Paint scribble shape */\n  PAINT_SCRIBBLE = 'PAINT_SCRIBBLE',\n  /** Inverted ellipse shape */\n  INVERTED_ELLIPSE = 'INVERTED_ELLIPSE',\n  /** Right wave shape */\n  RIGHT_WAVE = 'RIGHT_WAVE',\n  /** Dunes shape */\n  DUNES = 'DUNES',\n  /** Waves shape */\n  WAVES = 'WAVES',\n  /** Triangle shape */\n  TRIANGLE = 'TRIANGLE',\n  /** Semi-ellipse shape */\n  SEMI_ELLIPSE = 'SEMI_ELLIPSE',\n  /** Plants shape */\n  PLANTS = 'PLANTS',\n  /** Layered ellipse shape */\n  LAYERED_ELLIPSE = 'LAYERED_ELLIPSE',\n  /** Pixels shape */\n  PIXELS = 'PIXELS',\n  /** Paint shape */\n  PAINT = 'PAINT',\n  /** Clouds shape */\n  CLOUDS = 'CLOUDS',\n  /** Optical illusion shape */\n  OPTICAL_ILLUSION = 'OPTICAL_ILLUSION',\n  /** Stripes shape */\n  STRIPES = 'STRIPES',\n  /** Blobs shape */\n  BLOBS = 'BLOBS',\n  /** Semi-circles shape */\n  SEMI_CIRCLES = 'SEMI_CIRCLES',\n  /** Hill shape */\n  HILL = 'HILL',\n  /** Brush shape */\n  BRUSH = 'BRUSH',\n  /** Peaks shape */\n  PEAKS = 'PEAKS',\n  /** Angled triangle shape */\n  ANGLED_TRIANGLE = 'ANGLED_TRIANGLE',\n}\n\n/** @enumType */\nexport type ShapeWithLiterals =\n  | Shape\n  | 'ELLIPSE'\n  | 'TILT'\n  | 'LIQUID'\n  | 'LEFT_WAVE'\n  | 'PAINT_SCRIBBLE'\n  | 'INVERTED_ELLIPSE'\n  | 'RIGHT_WAVE'\n  | 'DUNES'\n  | 'WAVES'\n  | 'TRIANGLE'\n  | 'SEMI_ELLIPSE'\n  | 'PLANTS'\n  | 'LAYERED_ELLIPSE'\n  | 'PIXELS'\n  | 'PAINT'\n  | 'CLOUDS'\n  | 'OPTICAL_ILLUSION'\n  | 'STRIPES'\n  | 'BLOBS'\n  | 'SEMI_CIRCLES'\n  | 'HILL'\n  | 'BRUSH'\n  | 'PEAKS'\n  | 'ANGLED_TRIANGLE';\n\n/** Layers effect - stacked semi-transparent copies of the divider shape */\nexport interface Layers {\n  /** Total number of layers including the base shape (1-4). Absent or 1 disables the effect. */\n  count?: number | null;\n  /** Vertical distance in pixels between the silhouettes of consecutive layers: each successive layer's silhouette is offset from the previous one by this amount. The divider's own `height` is unchanged. Defaults to 20. */\n  offsetY?: number | null;\n  /** How the stacked layers fade relative to the base shape. */\n  layerEffect?: LayerEffectWithLiterals;\n  /** Horizontal distance between consecutive layers in pixels. Defaults to 0. Only applies to shapes that support horizontal offset. */\n  offsetX?: number | null;\n}\n\n/** Backdrop type */\nexport enum BackdropType {\n  /** Solid color backdrop */\n  COLOR = 'COLOR',\n  /** Gradient backdrop */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type BackdropTypeWithLiterals = BackdropType | 'COLOR' | 'GRADIENT';\n\nexport interface LayoutDataBackgroundImage {\n  /** Background image. */\n  media?: Media;\n  /**\n   * Deprecated: use `overlay` instead. Legacy image opacity (0–100) that dimmed the image to reveal the `background`/`backdrop` color behind it.\n   * @deprecated\n   */\n  opacity?: number | null;\n  /** Background image scaling. */\n  scaling?: ImageScalingScalingWithLiterals;\n  /** Position of background. Defaults to `CENTER`. */\n  position?: ImagePositionWithLiterals;\n  /** Blur radius in pixels applied to the image layer. `0` (default) leaves the image unblurred; blur is independent of any color overlay and the two stack. */\n  blur?: number | null;\n  /** Color or gradient drawn on top of the image. When present, this is the authoritative overlay and `opacity` is ignored. Its presence also marks content as authored under the new overlay model (vs. the legacy `opacity`-based dimming on `background`/`backdrop`). */\n  overlay?: LayoutDataBackground;\n}\n\nexport enum VerticalAlignmentAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Middle alignment */\n  MIDDLE = 'MIDDLE',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n}\n\n/** @enumType */\nexport type VerticalAlignmentAlignmentWithLiterals =\n  | VerticalAlignmentAlignment\n  | 'TOP'\n  | 'MIDDLE'\n  | 'BOTTOM';\n\nexport enum ResponsivenessBehaviour {\n  /** Stacking of columns */\n  STACK = 'STACK',\n  /** Wrapping of columns */\n  WRAP = 'WRAP',\n}\n\n/** @enumType */\nexport type ResponsivenessBehaviourWithLiterals =\n  | ResponsivenessBehaviour\n  | 'STACK'\n  | 'WRAP';\n\nexport enum DesignTarget {\n  /** Design applied to layout */\n  LAYOUT = 'LAYOUT',\n  /** Design applied to cells */\n  CELL = 'CELL',\n}\n\n/** @enumType */\nexport type DesignTargetWithLiterals = DesignTarget | 'LAYOUT' | 'CELL';\n\nexport interface Banner {\n  /** Origin of the banner */\n  origin?: OriginWithLiterals;\n  /** Position of the banner */\n  position?: BannerPositionWithLiterals;\n}\n\n/** Backdrop styling (color or gradient) */\nexport interface Backdrop {\n  /** Backdrop type. */\n  type?: BackdropTypeWithLiterals;\n  /**\n   * Backdrop color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Gradient configuration. */\n  gradient?: Gradient;\n}\n\n/** Decorative shape divider at a layout edge */\nexport interface SectionDivider {\n  /** Divider shape preset. Determines which customization properties apply. */\n  type?: ShapeWithLiterals;\n  /**\n   * Divider fill color as a hexadecimal value (may include alpha).\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Divider height in pixels. */\n  height?: number | null;\n  /** Horizontal offset in pixels. */\n  offsetX?: number | null;\n  /** Whether the shape is flipped horizontally. */\n  flipped?: boolean | null;\n  /** Layers effect - stacked semi-transparent copies of the divider shape. */\n  layers?: Layers;\n}\n\nexport interface LayoutCellData {\n  /** Size of the cell in 12 columns grid. */\n  colSpan?: number | null;\n}\n\nexport interface ShapeData {\n  /** Styling for the shape's container. */\n  containerData?: PluginContainerData;\n  /** Shape file details. */\n  shape?: Media;\n  /** Styling for the shape. */\n  styles?: ShapeDataStyles;\n  /** Node animation. */\n  animation?: Animation;\n  /** Link details for shapes that are links. */\n  link?: Link;\n  /**\n   * Alternate text describing the link's purpose for accessibility. Applies only when `link` is set.\n   * @maxLength 1000\n   */\n  altText?: string | null;\n}\n\nexport interface ShapeDataStyles {\n  /**\n   * Shape fill color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Map of original color keys to their new color values. */\n  colors?: Record<string, string>;\n}\n\nexport interface CardData {\n  /** Background styling (color or gradient). */\n  background?: CardDataBackground;\n  /** Background image. */\n  backgroundImage?: BackgroundImage;\n}\n\nexport enum Scaling {\n  /** Auto image scaling */\n  AUTO = 'AUTO',\n  /** Contain image scaling */\n  CONTAIN = 'CONTAIN',\n  /** Cover image scaling */\n  COVER = 'COVER',\n}\n\n/** @enumType */\nexport type ScalingWithLiterals = Scaling | 'AUTO' | 'CONTAIN' | 'COVER';\n\nexport enum ImagePositionPosition {\n  /** Image positioned at the center */\n  CENTER = 'CENTER',\n  /** Image positioned on the left */\n  CENTER_LEFT = 'CENTER_LEFT',\n  /** Image positioned on the right */\n  CENTER_RIGHT = 'CENTER_RIGHT',\n  /** Image positioned at the center top */\n  TOP = 'TOP',\n  /** Image positioned at the top left */\n  TOP_LEFT = 'TOP_LEFT',\n  /** Image positioned at the top right */\n  TOP_RIGHT = 'TOP_RIGHT',\n  /** Image positioned at the center bottom */\n  BOTTOM = 'BOTTOM',\n  /** Image positioned at the bottom left */\n  BOTTOM_LEFT = 'BOTTOM_LEFT',\n  /** Image positioned at the bottom right */\n  BOTTOM_RIGHT = 'BOTTOM_RIGHT',\n}\n\n/** @enumType */\nexport type ImagePositionPositionWithLiterals =\n  | ImagePositionPosition\n  | 'CENTER'\n  | 'CENTER_LEFT'\n  | 'CENTER_RIGHT'\n  | 'TOP'\n  | 'TOP_LEFT'\n  | 'TOP_RIGHT'\n  | 'BOTTOM'\n  | 'BOTTOM_LEFT'\n  | 'BOTTOM_RIGHT';\n\n/** Background styling (color or gradient) */\nexport interface CardDataBackground {\n  /** Background type. */\n  type?: CardDataBackgroundTypeWithLiterals;\n  /**\n   * Background color as a hexadecimal value.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Gradient configuration. */\n  gradient?: Gradient;\n}\n\n/** Background type */\nexport enum CardDataBackgroundType {\n  /** Solid color background */\n  COLOR = 'COLOR',\n  /** Gradient background */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type CardDataBackgroundTypeWithLiterals =\n  | CardDataBackgroundType\n  | 'COLOR'\n  | 'GRADIENT';\n\nexport interface BackgroundImage {\n  /** Background image. */\n  media?: Media;\n  /**\n   * Deprecated: use `overlay` instead. Legacy image opacity (0–100) that dimmed the image to reveal the `background` color behind it.\n   * @deprecated\n   */\n  opacity?: number | null;\n  /** Background image scaling. */\n  scaling?: ScalingWithLiterals;\n  /** Position of background. Defaults to `CENTER`. */\n  position?: ImagePositionPositionWithLiterals;\n  /** Color or gradient drawn on top of the image. When present, this is the authoritative overlay and `opacity` is ignored. Its presence also marks content as authored under the new overlay model (vs. the legacy `opacity`-based dimming on `background`). */\n  overlay?: CardDataBackground;\n  /** Blur radius in pixels applied to the image layer. `0` (default) leaves the image unblurred; blur is independent of any color overlay and the two stack. */\n  blur?: number | null;\n}\n\nexport interface TocData {\n  /** Heading levels included in the table of contents. Default: [1, 2, 3, 4, 5, 6]. */\n  includedHeadings?: number[];\n  /** List style. Default: PLAIN. */\n  listStyle?: ListStyleWithLiterals;\n  /** Optional override for the font size in pixels. */\n  fontSize?: number | null;\n  /** Optional override for the vertical spacing between items in pixels. */\n  itemSpacing?: number | null;\n  /**\n   * Optional override for the text color.\n   * @maxLength 19\n   */\n  color?: string | null;\n  /** Indentation style. Default: NESTED. */\n  indentation?: IndentationWithLiterals;\n  /** Node animation. */\n  animation?: Animation;\n}\n\n/** List style. */\nexport enum ListStyle {\n  /** No markers (default) */\n  PLAIN = 'PLAIN',\n  /** Numbered list */\n  NUMBERED = 'NUMBERED',\n  /** Alphabetic letters */\n  LETTERS = 'LETTERS',\n  /** Roman numerals */\n  ROMAN = 'ROMAN',\n  /** Bulleted list */\n  BULLETED = 'BULLETED',\n  /** Alphabetical index */\n  ALPHABETICAL_INDEX = 'ALPHABETICAL_INDEX',\n  /** Alphabetical index (compact top-row only) */\n  ALPHABETICAL_INDEX_COMPACT = 'ALPHABETICAL_INDEX_COMPACT',\n}\n\n/** @enumType */\nexport type ListStyleWithLiterals =\n  | ListStyle\n  | 'PLAIN'\n  | 'NUMBERED'\n  | 'LETTERS'\n  | 'ROMAN'\n  | 'BULLETED'\n  | 'ALPHABETICAL_INDEX'\n  | 'ALPHABETICAL_INDEX_COMPACT';\n\n/** Indentation style. */\nexport enum Indentation {\n  /** Sub-headings indented under parents (default) */\n  NESTED = 'NESTED',\n  /** All items at the same level */\n  FLAT = 'FLAT',\n}\n\n/** @enumType */\nexport type IndentationWithLiterals = Indentation | 'NESTED' | 'FLAT';\n\n/** Data for a smart block node. */\nexport interface SmartBlockData {\n  /** The type of the smart block. */\n  type?: SmartBlockDataTypeWithLiterals;\n  /** Layout orientation. HORIZONTAL or VERTICAL. Optional for variants with fixed orientation. */\n  orientation?: string | null;\n  /** Column size controlling cells per row. */\n  columnSize?: ColumnSizeWithLiterals;\n  /**\n   * Border color (for SOLID_JOINED_BOXES variant).\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Border width in pixels (for SOLID_JOINED_BOXES variant). */\n  borderWidth?: number | null;\n  /** Border radius in pixels (for SOLID_JOINED_BOXES variant). */\n  borderRadius?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\n/** Layout type of the smart block */\nexport enum SmartBlockDataType {\n  /** Grid-based layouts with solid box items containing title, body, and icon/image. */\n  SOLID_BOXES = 'SOLID_BOXES',\n  /** Numbered boxes. */\n  NUMBERED_BOXES = 'NUMBERED_BOXES',\n  /** Statistics display with large numbers/values. */\n  STATS = 'STATS',\n  /** Statistics with circular visual elements. */\n  CIRCLE_STATS = 'CIRCLE_STATS',\n  /** Staggered/zigzag grid layout with alternating box positions. */\n  SOLID_BOXES_ALTERNATING = 'SOLID_BOXES_ALTERNATING',\n  /** Grid layout with boxes visually joined (no gaps, shared container border). */\n  SOLID_JOINED_BOXES = 'SOLID_JOINED_BOXES',\n  /** Transparent cells with only a left side line. */\n  SIDE_LINE_TEXT = 'SIDE_LINE_TEXT',\n  /** Transparent cells with only a top line. */\n  TOP_LINE_TEXT = 'TOP_LINE_TEXT',\n  /** Outlined boxes with a numbered/icon circle at the top. */\n  OUTLINE_BOXES_WITH_TOP_CIRCLE = 'OUTLINE_BOXES_WITH_TOP_CIRCLE',\n  /** Large icon bullets with text content. */\n  BIG_BULLETS = 'BIG_BULLETS',\n  /** Small dot bullets with text content. */\n  SMALL_BULLETS = 'SMALL_BULLETS',\n  /** Arrow icon bullets with text content. */\n  ARROW_BULLETS = 'ARROW_BULLETS',\n  /** Process steps with numbered/icon labels above a horizontal line. */\n  PROCESS_STEPS = 'PROCESS_STEPS',\n  /** Statistics with bar visual elements. */\n  BAR_STATS = 'BAR_STATS',\n  /** Timeline layout with numbered chips on a connecting line; cells alternate around the line. */\n  TIMELINE = 'TIMELINE',\n  /** Timeline layout with plain dot indicators; no numbers or shapes; cells alternate around the line. */\n  MINIMAL_TIMELINE = 'MINIMAL_TIMELINE',\n  /** Numbered pill-shaped labels (stadium chips) with text content; supports HORIZONTAL (pill on top) and VERTICAL (pill on left) orientations. */\n  PILLS = 'PILLS',\n  /** Star rating display with stars and a numeric value per cell. */\n  STAR_RATING = 'STAR_RATING',\n  /** Outlined boxes with decorative quote glyphs at the top-left and bottom-right corners. */\n  QUOTE_BOXES = 'QUOTE_BOXES',\n  /** Donut/ring with numbered annular-sector segments; cell text labels sit outside the ring. */\n  CIRCLE = 'CIRCLE',\n  /** Hierarchical pyramid where each cell renders as a horizontal slice (apex at top, base at bottom) with the cell number or shape centered inside; text content sits beside (desktop) or below (mobile) the pyramid. */\n  PYRAMID = 'PYRAMID',\n  /** Cells render a horizontal bar whose width scales with cell index, creating a staircase pattern; bar carries the cell number or a custom shape. */\n  STAIRCASE = 'STAIRCASE',\n  /** Hierarchical funnel where each cell renders as a horizontal slice (wide at top, narrowing toward the bottom) with the cell number or shape centered inside; text content sits beside (desktop) or below (mobile) the funnel. */\n  VERTICAL_FUNNEL = 'VERTICAL_FUNNEL',\n}\n\n/** @enumType */\nexport type SmartBlockDataTypeWithLiterals =\n  | SmartBlockDataType\n  | 'SOLID_BOXES'\n  | 'NUMBERED_BOXES'\n  | 'STATS'\n  | 'CIRCLE_STATS'\n  | 'SOLID_BOXES_ALTERNATING'\n  | 'SOLID_JOINED_BOXES'\n  | 'SIDE_LINE_TEXT'\n  | 'TOP_LINE_TEXT'\n  | 'OUTLINE_BOXES_WITH_TOP_CIRCLE'\n  | 'BIG_BULLETS'\n  | 'SMALL_BULLETS'\n  | 'ARROW_BULLETS'\n  | 'PROCESS_STEPS'\n  | 'BAR_STATS'\n  | 'TIMELINE'\n  | 'MINIMAL_TIMELINE'\n  | 'PILLS'\n  | 'STAR_RATING'\n  | 'QUOTE_BOXES'\n  | 'CIRCLE'\n  | 'PYRAMID'\n  | 'STAIRCASE'\n  | 'VERTICAL_FUNNEL';\n\n/** Column size controlling how many cells appear per row. */\nexport enum ColumnSize {\n  /** Up to 4 cells in a row. */\n  SMALL = 'SMALL',\n  /** Up to 3 cells in a row (default). */\n  MEDIUM = 'MEDIUM',\n  /** Up to 2 cells in a row. */\n  LARGE = 'LARGE',\n  /** 1 cell in a row. */\n  EXTRA_LARGE = 'EXTRA_LARGE',\n}\n\n/** @enumType */\nexport type ColumnSizeWithLiterals =\n  | ColumnSize\n  | 'SMALL'\n  | 'MEDIUM'\n  | 'LARGE'\n  | 'EXTRA_LARGE';\n\n/** Data for a smart block cell node. */\nexport interface SmartBlockCellData {\n  /** Optional label text for the cell (e.g., for stats variants). */\n  label?: string | null;\n  /** Shape file details. */\n  shape?: Media;\n  /**\n   * Border color of the cell.\n   * @maxLength 19\n   */\n  borderColor?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /** The type of the parent smart block (must match parent). */\n  type?: SmartBlockDataTypeWithLiterals;\n  /**\n   * Accent color for non-background variants (e.g., line, bullet, label color).\n   * @maxLength 19\n   */\n  accentColor?: string | null;\n  /**\n   * Background color for background-based variants (SOLID_BOXES, SOLID_BOXES_ALTERNATING, SOLID_JOINED_BOXES).\n   * @maxLength 19\n   */\n  backgroundColor?: string | null;\n  /**\n   * Shape fill color as a hexadecimal value.\n   * @maxLength 19\n   */\n  shapeColor?: string | null;\n}\n\nexport interface CheckboxListData {\n  /** Indentation level from 0-4. */\n  indentation?: number;\n  /** Offset level from 0-4. */\n  offset?: number | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface ListItemNodeData {\n  /** Checkbox list item state. Defaults to `false`. */\n  checked?: boolean | null;\n  /** Node animation. */\n  animation?: Animation;\n}\n\nexport interface Metadata {\n  /** Schema version. */\n  version?: number;\n  /**\n   * When the object was created.\n   * @readonly\n   * @deprecated\n   */\n  createdTimestamp?: Date | null;\n  /**\n   * When the object was most recently updated.\n   * @deprecated\n   */\n  updatedTimestamp?: Date | null;\n  /** Object ID. */\n  _id?: string | null;\n}\n\nexport interface DocumentStyle {\n  /** Styling for H1 nodes. */\n  headerOne?: TextNodeStyle;\n  /** Styling for H2 nodes. */\n  headerTwo?: TextNodeStyle;\n  /** Styling for H3 nodes. */\n  headerThree?: TextNodeStyle;\n  /** Styling for H4 nodes. */\n  headerFour?: TextNodeStyle;\n  /** Styling for H5 nodes. */\n  headerFive?: TextNodeStyle;\n  /** Styling for H6 nodes. */\n  headerSix?: TextNodeStyle;\n  /** Styling for paragraph nodes. */\n  paragraph?: TextNodeStyle;\n  /** Styling for block quote nodes. */\n  blockquote?: TextNodeStyle;\n  /** Styling for code block nodes. */\n  codeBlock?: TextNodeStyle;\n}\n\nexport interface TextNodeStyle {\n  /** The decorations to apply to the node. */\n  decorations?: Decoration[];\n  /** Padding and background color for the node. */\n  nodeStyle?: NodeStyle;\n  /** Line height for text in the node. */\n  lineHeight?: string | null;\n}\n\nexport interface PresetProperties {\n  /**\n   * Invoice preset ID. If not provided, the [default preset](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoice-presets/get-default-invoice-preset) is used.\n   * @format GUID\n   */\n  presetId?: string | null;\n  /**\n   * Snapshot of the invoice preset at the time the invoice was published.\n   * @readonly\n   */\n  invoicePreset?: InvoicePreset;\n}\n\n/** An invoice preset is a reusable template that defines the appearance, content structure, and default settings for invoices. Each site always has at least one preset, and one preset is designated as the default, which is automatically applied when creating invoices. */\nexport interface InvoicePreset {\n  /**\n   * Invoice preset ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the invoice preset is updated. To prevent conflicting changes, the current revision must be passed when updating the invoice preset.\n   *\n   * Ignored when creating an invoice preset.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the invoice preset was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the invoice preset was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Name of the preset.\n   * @minLength 1\n   * @maxLength 100\n   */\n  name?: string;\n  /** Display settings that control which sections and fields appear on invoices created with this preset. */\n  displaySettings?: DisplaySettings;\n  /** Custom fields for adding additional information to invoices, such as header details, business information, customer information, and a footer. */\n  customFields?: DomainCustomFields;\n  /**\n   * Whether this preset is the default preset.\n   * @readonly\n   */\n  defaultPreset?: boolean;\n  /** Display value overrides for invoices created with this preset. When set, these values replace the corresponding values on the generated invoice document. */\n  displayValues?: DisplayValues;\n  /**\n   * Number of days after invoice creation until the invoice is due. Set to `0` for due on receipt.\n   *\n   * Default: `30`\n   * @max 365\n   */\n  defaultDaysUntilDue?: number | null;\n}\n\n/** Settings that control which sections and fields appear on invoices created with this preset. */\nexport interface DisplaySettings {\n  /** Options for displaying business information on the invoice. */\n  businessInfo?: BusinessDisplayOptions;\n  /** Options for displaying customer information on the invoice. */\n  customerInfo?: CustomerDisplayOptions;\n  /** Options for displaying line item details on the invoice. */\n  itemsInfo?: ItemsDisplayOptions;\n  /** Options for displaying totals and tax information on the invoice. */\n  totalsInfo?: TotalsDisplayOptions;\n  /** Options for displaying payment information on the invoice. */\n  paymentsInfo?: PaymentsDisplayOptions;\n}\n\n/** Options for displaying business details on the invoice. */\nexport interface BusinessDisplayOptions {\n  /** Whether to display the business email on the invoice. */\n  displayEmail?: boolean;\n  /** Whether to display the business phone number on the invoice. */\n  displayPhoneNumber?: boolean;\n  /** Whether to display the business address on the invoice. */\n  displayAddress?: boolean;\n  /** Whether to display the business company ID on the invoice. */\n  displayCompanyId?: boolean;\n}\n\n/** Options for displaying customer details on the invoice. */\nexport interface CustomerDisplayOptions {\n  /** Whether to display the customer email on the invoice. */\n  displayEmail?: boolean;\n  /** Whether to display the customer phone number on the invoice. */\n  displayPhoneNumber?: boolean;\n  /** Whether to display the customer shipping address on the invoice. */\n  displayShippingAddress?: boolean;\n  /** Whether to display the customer billing address on the invoice. */\n  displayBillingAddress?: boolean;\n  /** Whether to display the customer VAT ID on the invoice. */\n  displayVatId?: boolean;\n  /** Whether to display the customer company name on the invoice. */\n  displayCompanyName?: boolean;\n}\n\n/** Options for displaying line item details on the invoice. */\nexport interface ItemsDisplayOptions {\n  /** Whether to display the item description on the invoice. */\n  displayDescription?: boolean;\n  /** Whether to display tax information on the invoice. */\n  displayTax?: boolean;\n}\n\n/** Options for displaying totals and tax details on the invoice. */\nexport interface TotalsDisplayOptions {\n  /** Whether to display a breakdown of taxes applied. */\n  displayTaxBreakdown?: boolean;\n  /** Whether to display the item subtotal for each tax rate in the breakdown. */\n  displayItemSubtotalPerTaxBreakdown?: boolean;\n}\n\n/** Options for displaying payment details on the invoice. */\nexport interface PaymentsDisplayOptions {\n  /** Whether to display payment information on the invoice. */\n  displayPaymentsInfo?: boolean;\n}\n\n/** Custom fields that appear on invoices created with this preset. */\nexport interface DomainCustomFields {\n  /**\n   * Custom fields displayed in the header section of the invoice.\n   * @maxSize 4\n   */\n  headerCustomFields?: DomainCustomField[];\n  /**\n   * Custom fields displayed in the business information section of the invoice.\n   * @maxSize 5\n   */\n  businessCustomFields?: DomainCustomField[];\n  /**\n   * Custom fields displayed in the customer information section of the invoice.\n   * @maxSize 4\n   */\n  customerCustomFields?: DomainCustomField[];\n  /** Footer content displayed at the bottom of the invoice. Supports text formatting and images. Individual invoices can override this content using `customFields.footerCustomField.overridePresetContent`. */\n  footerCustomField?: RichContent;\n  /**\n   * Placeholders for header fields that appear as blank titled fields on the invoice for the recipient to fill in.\n   * @maxSize 4\n   */\n  headerPlaceholders?: CustomFieldPlaceholder[];\n  /**\n   * Placeholders for customer fields that appear as blank titled fields on the invoice for the recipient to fill in.\n   * @maxSize 4\n   */\n  customerPlaceholders?: CustomFieldPlaceholder[];\n}\n\n/** A custom field with a title and value that appears on the invoice. */\nexport interface DomainCustomField {\n  /**\n   * Title of the custom field. If omitted, only the value is displayed on the invoice.\n   * @minLength 1\n   * @maxLength 100\n   */\n  title?: string | null;\n  /**\n   * Value of the custom field.\n   * @maxLength 100\n   */\n  value?: string;\n}\n\n/** A placeholder that defines a titled blank field on the invoice for the recipient to fill in. */\nexport interface CustomFieldPlaceholder {\n  /**\n   * Title of the placeholder field.\n   * @minLength 1\n   * @maxLength 100\n   */\n  title?: string;\n}\n\n/** Display value overrides for invoices created with this preset. */\nexport interface DisplayValues {\n  /**\n   * Title to display on the generated invoice document, overriding the invoice's own `title`. If not set, the invoice's `title` is used.\n   * @minLength 1\n   * @maxLength 20\n   */\n  titleOverride?: string | null;\n}\n\nexport interface Attachment {\n  /**\n   * File name. For example, `invoice.pdf`.\n   * @minLength 1\n   * @maxLength 100\n   */\n  fileName?: string;\n  /**\n   * File URL.\n   * @format WEB_URL\n   */\n  fileUrl?: string;\n}\n\n/** PDF document generation details. */\nexport interface DocumentInfo {\n  /** Document generation status. */\n  status?: DocumentStatusWithLiterals;\n  /**\n   * URL to download the generated PDF. Available when `status` is `AVAILABLE`.\n   * @format WEB_URL\n   */\n  downloadUrl?: string | null;\n  /**\n   * Date and time the document download URL expires.\n   * @readonly\n   */\n  documentExpirationDate?: Date | null;\n}\n\nexport enum DocumentStatus {\n  /** PDF generation is in progress. */\n  PROCESSING = 'PROCESSING',\n  /** PDF is ready to download. */\n  AVAILABLE = 'AVAILABLE',\n  /** PDF generation failed. */\n  FAILED = 'FAILED',\n  /** PDF download URL has expired. */\n  EXPIRED = 'EXPIRED',\n  /** PDF is out of date because the invoice has been modified after generation. */\n  OUTDATED = 'OUTDATED',\n}\n\n/** @enumType */\nexport type DocumentStatusWithLiterals =\n  | DocumentStatus\n  | 'PROCESSING'\n  | 'AVAILABLE'\n  | 'FAILED'\n  | 'EXPIRED'\n  | 'OUTDATED';\n\nexport interface Links {\n  /** Relative URL path to the invoice. */\n  relativePath?: string;\n  /**\n   * Full URL to the invoice.\n   * @format WEB_URL\n   */\n  url?: string | null;\n  /**\n   * Password required to view the invoice when HIPAA compliance is enabled for the site.\n   * @maxLength 4\n   */\n  previewPassword?: string | null;\n}\n\nexport interface BusinessLocation {\n  /**\n   * Location ID. Learn more about the [Wix Locations API](https://dev.wix.com/docs/api-reference/business-management/locations/introduction).\n   * @format GUID\n   */\n  _id?: string;\n  /**\n   * Location name.\n   * @minLength 1\n   * @maxLength 500\n   * @readonly\n   */\n  name?: string | null;\n}\n\nexport interface ActivityInfo {\n  /**\n   * Contact IDs that the invoice was sent to.\n   * @format GUID\n   * @maxSize 5\n   */\n  sentToContactIds?: string[];\n  /** Date and time the invoice was last sent. */\n  lastSentDate?: Date | null;\n  /** Date and time the invoice was last viewed. */\n  lastViewedDate?: Date | null;\n}\n\n/**\n * Common object for tags.\n * Should be use as in this example:\n * message Foo {\n * option (.wix.api.decomposite_of) = \"wix.commons.v2.tags.Foo\";\n * string id = 1;\n * ...\n * Tags tags = 5\n * }\n *\n * example of taggable entity\n * {\n * id: \"123\"\n * tags: {\n * public_tags: {\n * tag_ids:[\"11\",\"22\"]\n * },\n * private_tags: {\n * tag_ids: [\"33\", \"44\"]\n * }\n * }\n * }\n */\nexport interface Tags {\n  /** Tags that require an additional permission in order to access them, typically restricted from site members and visitors. */\n  privateTags?: TagList;\n  /** Tags that are exposed to anyone with access to the entity, including site members and visitors. */\n  publicTags?: TagList;\n}\n\nexport interface TagList {\n  /**\n   * List of tag IDs.\n   * @maxSize 100\n   * @maxLength 5\n   */\n  tagIds?: string[];\n}\n\nexport interface InvoiceNumberingProcess {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId?: string;\n}\n\nexport interface InvoiceDocumentProcess {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n  /**\n   * Media Document Id.\n   * @format GUID\n   */\n  documentId?: string;\n  /**\n   * Existing File Id that will be deleted after the document is generated.\n   * @maxLength 100\n   */\n  existingFileId?: string | null;\n}\n\nexport interface InvoiceDocumentHandled\n  extends InvoiceDocumentHandledResultOneOf {\n  /** Populated only if invoice document handling has succeeded. */\n  succeeded?: Succeeded;\n  /** Populated only if invoice document handling has failed. */\n  failed?: Failed;\n}\n\n/** @oneof */\nexport interface InvoiceDocumentHandledResultOneOf {\n  /** Populated only if invoice document handling has succeeded. */\n  succeeded?: Succeeded;\n  /** Populated only if invoice document handling has failed. */\n  failed?: Failed;\n}\n\nexport interface Succeeded {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n  /**\n   * Media file Id.\n   * @maxLength 100\n   */\n  mediaFileId?: string;\n  /**\n   * Download URL.\n   * @maxLength 200\n   */\n  downloadUrl?: string;\n  /** File expiration date */\n  expirationDate?: Date | null;\n}\n\nexport interface Failed {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n}\n\nexport interface MediaFileStateChanged {\n  /**\n   * File ID.\n   * @minLength 1\n   * @maxLength 36\n   */\n  fileId?: string;\n  /**\n   * Meta site ID.\n   * @format GUID\n   */\n  metaSiteId?: string;\n  fileState?: FileStateWithLiterals;\n}\n\n/** Action type. */\nexport enum FileState {\n  /** File was deleted. */\n  DELETED = 'DELETED',\n}\n\n/** @enumType */\nexport type FileStateWithLiterals = FileState | 'DELETED';\n\n/** Requests an overdue side-effect backfill for all invoices of a single meta site. */\nexport interface SideEffectsTriggerRequested {\n  /**\n   * Meta site ID to run the side effects trigger for.\n   * @format GUID\n   */\n  metaSiteId?: string;\n  /**\n   * Instance ID of the app on that meta site.\n   * @format GUID\n   */\n  instanceId?: string;\n}\n\nexport interface SiteTaxesMigrationRequested {\n  /**\n   * The meta site whose legacy invoices taxes should be migrated.\n   * @format GUID\n   */\n  metaSiteId?: string;\n}\n\n/** Payload for the tags modified action event. Contains the invoice and the tags that were added or removed. */\nexport interface TagsModified {\n  /** Invoice that was modified. */\n  invoice?: Invoice;\n  /** Tags that were assigned to the invoice. */\n  assignedTags?: Tags;\n  /** Tags that were unassigned from the invoice. */\n  unassignedTags?: Tags;\n}\n\n/** Payload for the invoice sent action event. Contains the invoice and the contact IDs it was sent to. */\nexport interface InvoiceSent {\n  /** Invoice that was sent. */\n  invoice?: Invoice;\n  /** Contact IDs that the invoice was sent to. */\n  contactIds?: string[];\n}\n\nexport interface CreateInvoiceRequest {\n  /** Invoice to create. */\n  invoice: Invoice;\n}\n\nexport interface CreateInvoiceResponse {\n  /** Created invoice. */\n  invoice?: Invoice;\n}\n\nexport interface GetInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface GetInvoiceResponse {\n  /** Retrieved invoice. */\n  invoice?: Invoice;\n}\n\nexport interface UpdateInvoiceRequest {\n  /** Invoice to update, may be partial. */\n  invoice: Invoice;\n  /**\n   * Set of fields to update.\n   *\n   * Fields that aren't included in `fieldMask.paths` are ignored.\n   * @internal\n   */\n  fieldMask?: string[];\n}\n\nexport interface UpdateInvoiceResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface IllegalActionErrorData {\n  /** Error type. */\n  errorType?: ErrorTypeWithLiterals;\n  /**\n   * Error description.\n   * @minLength 1\n   * @maxLength 100\n   */\n  description?: string | null;\n}\n\nexport enum ErrorType {\n  /** Invoice status doesn't allow this action. */\n  ILLEGAL_INVOICE_STATE = 'ILLEGAL_INVOICE_STATE',\n  /** Action is limited to the app that created the invoice. */\n  ACTION_LIMITED_FOR_SOURCE_APPLICATION = 'ACTION_LIMITED_FOR_SOURCE_APPLICATION',\n  /** Action is limited to Wix eCommerce for order-type invoices. */\n  ACTION_LIMITED_FOR_ORDER_INVOICE = 'ACTION_LIMITED_FOR_ORDER_INVOICE',\n  /** Action is limited to the Invoices application for migrated invoices. */\n  ACTION_LIMITED_FOR_MIGRATED_INVOICE = 'ACTION_LIMITED_FOR_MIGRATED_INVOICE',\n  /** Invoice must be converted using Convert Invoice before this action is available. */\n  CONVERSION_REQUIRED = 'CONVERSION_REQUIRED',\n}\n\n/** @enumType */\nexport type ErrorTypeWithLiterals =\n  | ErrorType\n  | 'ILLEGAL_INVOICE_STATE'\n  | 'ACTION_LIMITED_FOR_SOURCE_APPLICATION'\n  | 'ACTION_LIMITED_FOR_ORDER_INVOICE'\n  | 'ACTION_LIMITED_FOR_MIGRATED_INVOICE'\n  | 'CONVERSION_REQUIRED';\n\nexport interface ConvertInvoiceRequest {\n  /** Complete writable invoice payload to use for conversion. Must include the current `id` and `revision`. Omitted writable fields are cleared. */\n  invoice?: Invoice;\n}\n\nexport interface ConvertInvoiceResponse {\n  /** Converted invoice. */\n  invoice?: Invoice;\n}\n\nexport interface DeleteInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface DeleteInvoiceResponse {}\n\nexport interface QueryInvoicesRequest {\n  /** Query options. */\n  query?: CursorQuery;\n}\n\nexport interface CursorQuery extends CursorQueryPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n  /**\n   * Filter object.\n   *\n   * Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * Sort object.\n   *\n   * Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).\n   * @maxSize 5\n   */\n  sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface CursorQueryPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n  /**\n   * Name of the field to sort by.\n   * @maxLength 512\n   */\n  fieldName?: string;\n  /** Sort order. */\n  order?: SortOrderWithLiterals;\n  /**\n   * When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by\n   * a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.\n   *\n   * If multiple filters are provided, they are combined with AND operator.\n   *\n   * Example:\n   * Given we have document like {\"id\": \"1\", \"nestedField\": [{\"price\": 10, \"region\": \"EU\"}, {\"price\": 20, \"region\": \"US\"}]}\n   * and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be\n   * { fieldName: \"nestedField.price\", \"select_items_by\": [{\"nestedField.region\": \"US\"}] }\n   * @internal\n   * @maxSize 10\n   */\n  selectItemsBy?: Record<string, any>[] | null;\n}\n\nexport enum SortOrder {\n  ASC = 'ASC',\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface CursorPaging {\n  /**\n   * Maximum number of items to return in the results.\n   * @max 100\n   */\n  limit?: number | null;\n  /**\n   * Pointer to the next or previous page in the list of results.\n   *\n   * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n   * Not relevant for the first request.\n   * @maxLength 16000\n   */\n  cursor?: string | null;\n}\n\nexport interface QueryInvoicesResponse {\n  /** Retrieved invoices. */\n  invoices?: Invoice[];\n  /** Paging metadata. */\n  pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n  /** Number of items returned in current page. */\n  count?: number | null;\n  /** Cursor strings that point to the next page, previous page, or both. */\n  cursors?: Cursors;\n  /**\n   * Whether there are more pages to retrieve following the current page.\n   *\n   * + `true`: Another page of results can be retrieved.\n   * + `false`: This is the last page.\n   */\n  hasNext?: boolean | null;\n  /**\n   * Total number of items matching the filter.\n   * Available only on the first page of *Search* results, not included in *Query* or *List* results.\n   * If the Search results span multiple pages, the value of `total` will exceed the number of items returned on the first page.\n   * @internal\n   */\n  total?: number | null;\n}\n\nexport interface Cursors {\n  /**\n   * Cursor string pointing to the next page in the list of results.\n   * @maxLength 16000\n   */\n  next?: string | null;\n  /**\n   * Cursor pointing to the previous page in the list of results.\n   * @maxLength 16000\n   */\n  prev?: string | null;\n}\n\nexport interface SearchInvoicesRequest {\n  /** Search options. */\n  search?: CursorSearch;\n}\n\nexport interface CursorSearch extends CursorSearchPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n  /**\n   * Filter object.\n   *\n   * Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * List of sort objects.\n   *\n   * Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).\n   * @maxSize 10\n   */\n  sort?: Sorting[];\n  /**\n   * Aggregations are a way to explore large amounts of data by displaying summaries about various partitions of the data and later allowing to narrow the navigation to a specific partition.\n   * @maxSize 10\n   */\n  aggregations?: Aggregation[];\n  /** Free text to match in searchable fields. */\n  search?: SearchDetails;\n  /**\n   * UTC offset or IANA time zone. Valid values are\n   * ISO 8601 UTC offsets, such as +02:00 or -06:00,\n   * and IANA time zone IDs, such as Europe/Rome.\n   *\n   * Affects all filters and aggregations returned values.\n   * You may override this behavior in a specific filter by providing\n   * timestamps including time zone. For example, `\"2023-12-20T10:52:34.795Z\"`.\n   * @maxLength 50\n   */\n  timeZone?: string | null;\n}\n\n/** @oneof */\nexport interface CursorSearchPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n}\n\nexport interface Aggregation extends AggregationKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /** Nested aggregation. */\n  nested?: NestedAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /** Type of aggregation, client must provide matching aggregation field below. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, use dot notation to specify json path.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n  /**\n   * Deprecated. Use `nested` instead.\n   * @deprecated Deprecated. Use `nested` instead.\n   * @replacedBy kind.nested\n   * @targetRemovalDate 2024-03-30\n   */\n  groupBy?: GroupByAggregation;\n}\n\n/** @oneof */\nexport interface AggregationKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /** Nested aggregation. */\n  nested?: NestedAggregation;\n}\n\nexport interface RangeBucket {\n  /** Inclusive lower bound of the range. Required if `to` is not provided. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. Required if `from` is not provided. */\n  to?: number | null;\n}\n\nexport enum SortType {\n  /** Sort by number of matches. */\n  COUNT = 'COUNT',\n  /** Sort by value of the field alphabetically. */\n  VALUE = 'VALUE',\n}\n\n/** @enumType */\nexport type SortTypeWithLiterals = SortType | 'COUNT' | 'VALUE';\n\nexport enum SortDirection {\n  /** Sort in descending order. */\n  DESC = 'DESC',\n  /** Sort in ascending order. */\n  ASC = 'ASC',\n}\n\n/** @enumType */\nexport type SortDirectionWithLiterals = SortDirection | 'DESC' | 'ASC';\n\nexport enum MissingValues {\n  /** Exclude missing values from the aggregation results. */\n  EXCLUDE = 'EXCLUDE',\n  /** Include missing values in the aggregation results. */\n  INCLUDE = 'INCLUDE',\n}\n\n/** @enumType */\nexport type MissingValuesWithLiterals = MissingValues | 'EXCLUDE' | 'INCLUDE';\n\nexport interface IncludeMissingValuesOptions {\n  /**\n   * Specify custom bucket name. Defaults are [string -> \"N/A\"], [int -> \"0\"], [bool -> \"false\"] ...\n   * @maxLength 20\n   */\n  addToBucket?: string;\n}\n\nexport enum ScalarType {\n  /** Count of distinct values. */\n  COUNT_DISTINCT = 'COUNT_DISTINCT',\n  /** Minimum value. */\n  MIN = 'MIN',\n  /** Maximum value. */\n  MAX = 'MAX',\n  /**\n   * Sum of values.\n   * @internal\n   */\n  SUM = 'SUM',\n  /**\n   * Average of values.\n   * @internal\n   */\n  AVG = 'AVG',\n}\n\n/** @enumType */\nexport type ScalarTypeWithLiterals =\n  | ScalarType\n  | 'COUNT_DISTINCT'\n  | 'MIN'\n  | 'MAX';\n\nexport interface ValueAggregation extends ValueAggregationOptionsOneOf {\n  /** Options for including missing values. */\n  includeOptions?: IncludeMissingValuesOptions;\n  /** Whether to sort by number of matches or value of the field. */\n  sortType?: SortTypeWithLiterals;\n  /** Whether to sort in ascending or descending order. */\n  sortDirection?: SortDirectionWithLiterals;\n  /** How many aggregations to return. Can be between 1 and 250. 10 is the default. */\n  limit?: number | null;\n  /** Whether to include or exclude missing values from the aggregation results. Default: `EXCLUDE`. */\n  missingValues?: MissingValuesWithLiterals;\n}\n\n/** @oneof */\nexport interface ValueAggregationOptionsOneOf {\n  /** Options for including missing values. */\n  includeOptions?: IncludeMissingValuesOptions;\n}\n\nexport enum NestedAggregationType {\n  /** An aggregation where result buckets are dynamically built - one per unique value. */\n  VALUE = 'VALUE',\n  /** An aggregation, where user can define set of ranges - each representing a bucket. */\n  RANGE = 'RANGE',\n  /** A single-value metric aggregation. For example, min, max, sum, avg. */\n  SCALAR = 'SCALAR',\n  /** An aggregation, where result buckets are dynamically built - one per time interval (hour, day, week, etc.). */\n  DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n}\n\n/** @enumType */\nexport type NestedAggregationTypeWithLiterals =\n  | NestedAggregationType\n  | 'VALUE'\n  | 'RANGE'\n  | 'SCALAR'\n  | 'DATE_HISTOGRAM';\n\nexport interface RangeAggregation {\n  /**\n   * List of range buckets, where during aggregation each entity will be placed in the first bucket its value falls into, based on the provided range bounds.\n   * @maxSize 50\n   */\n  buckets?: RangeBucket[];\n}\n\nexport interface ScalarAggregation {\n  /** Define the operator for the scalar aggregation. */\n  type?: ScalarTypeWithLiterals;\n}\n\nexport interface DateHistogramAggregation {\n  /** Interval for date histogram aggregation. */\n  interval?: IntervalWithLiterals;\n}\n\nexport enum Interval {\n  /** Yearly interval */\n  YEAR = 'YEAR',\n  /** Monthly interval */\n  MONTH = 'MONTH',\n  /** Weekly interval */\n  WEEK = 'WEEK',\n  /** Daily interval */\n  DAY = 'DAY',\n  /** Hourly interval */\n  HOUR = 'HOUR',\n  /** Minute interval */\n  MINUTE = 'MINUTE',\n  /** Second interval */\n  SECOND = 'SECOND',\n}\n\n/** @enumType */\nexport type IntervalWithLiterals =\n  | Interval\n  | 'YEAR'\n  | 'MONTH'\n  | 'WEEK'\n  | 'DAY'\n  | 'HOUR'\n  | 'MINUTE'\n  | 'SECOND';\n\nexport interface NestedAggregationItem extends NestedAggregationItemKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /** Type of aggregation, client must provide matching aggregation field below. */\n  type?: NestedAggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, use dot notation to specify json path.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationItemKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n}\n\nexport enum AggregationType {\n  /** An aggregation where result buckets are dynamically built - one per unique value. */\n  VALUE = 'VALUE',\n  /** An aggregation, where user can define set of ranges - each representing a bucket. */\n  RANGE = 'RANGE',\n  /** A single-value metric aggregation. For example, min, max, sum, avg. */\n  SCALAR = 'SCALAR',\n  /** An aggregation, where result buckets are dynamically built - one per time interval (hour, day, week, etc.) */\n  DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n  /** Multi-level aggregation, where each next aggregation is nested within previous one. */\n  NESTED = 'NESTED',\n}\n\n/** @enumType */\nexport type AggregationTypeWithLiterals =\n  | AggregationType\n  | 'VALUE'\n  | 'RANGE'\n  | 'SCALAR'\n  | 'DATE_HISTOGRAM'\n  | 'NESTED';\n\n/** Nested aggregation expressed through a list of aggregation where each next aggregation is nested within previous one. */\nexport interface NestedAggregation {\n  /**\n   * Flattened list of aggregations, where each next aggregation is nested within previous one.\n   * @minSize 2\n   * @maxSize 3\n   */\n  nestedAggregations?: NestedAggregationItem[];\n}\n\nexport interface GroupByAggregation extends GroupByAggregationKindOneOf {\n  /** Value aggregation configuration. */\n  value?: ValueAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /**\n   * Field to aggregate by.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface GroupByAggregationKindOneOf {\n  /** Value aggregation configuration. */\n  value?: ValueAggregation;\n}\n\nexport interface SearchDetails {\n  /** Defines how separate search terms in `expression` are combined. */\n  mode?: ModeWithLiterals;\n  /**\n   * Search term or expression.\n   * @maxLength 100\n   */\n  expression?: string | null;\n  /**\n   * Fields to search in. If empty - will search in all searchable fields. Use dot notation to specify json path.\n   * @maxLength 200\n   * @maxSize 20\n   */\n  fields?: string[];\n  /** Whether to use auto fuzzy search (allowing typos by a managed proximity algorithm). */\n  fuzzy?: boolean;\n}\n\nexport enum Mode {\n  /** Any of the search terms must be present. */\n  OR = 'OR',\n  /** All search terms must be present. */\n  AND = 'AND',\n}\n\n/** @enumType */\nexport type ModeWithLiterals = Mode | 'OR' | 'AND';\n\nexport interface SearchInvoicesResponse {\n  /** Retrieved invoices. */\n  invoices?: Invoice[];\n  /** Paging metadata. */\n  pagingMetadata?: PagingMetadataV2;\n  /** Response aggregation data. */\n  aggregationData?: AggregationData;\n}\n\nexport interface PagingMetadataV2 {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  offset?: number | null;\n  /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */\n  total?: number | null;\n  /** Flag that indicates the server failed to calculate the `total` field. */\n  tooManyToCount?: boolean | null;\n  /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */\n  cursors?: Cursors;\n  /**\n   * Indicates if there are more results after the current page.\n   * If `true`, another page of results can be retrieved.\n   * If `false`, this is the last page.\n   * @internal\n   */\n  hasNext?: boolean | null;\n}\n\nexport interface AggregationData {\n  /**\n   * key = aggregation name (as derived from search request).\n   * @maxSize 10000\n   */\n  results?: AggregationResults[];\n}\n\nexport interface ValueAggregationResult {\n  /**\n   * Value of the field.\n   * @maxLength 100\n   */\n  value?: string;\n  /** Count of entities with this value. */\n  count?: number;\n}\n\nexport interface RangeAggregationResult {\n  /** Inclusive lower bound of the range. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. */\n  to?: number | null;\n  /** Count of entities in this range. */\n  count?: number;\n}\n\nexport interface NestedAggregationResults\n  extends NestedAggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /**\n   * User-defined name of aggregation, matches the one provided in request.\n   * @maxLength 100\n   */\n  name?: string;\n  /** Type of aggregation that matches result. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, matches the one provided in request.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n}\n\nexport interface ValueResults {\n  /**\n   * List of value aggregations.\n   * @maxSize 250\n   */\n  results?: ValueAggregationResult[];\n}\n\nexport interface RangeResults {\n  /**\n   * List of ranges returned in same order as requested.\n   * @maxSize 50\n   */\n  results?: RangeAggregationResult[];\n}\n\nexport interface AggregationResultsScalarResult {\n  /** Type of scalar aggregation. */\n  type?: ScalarTypeWithLiterals;\n  /** Value of the scalar aggregation. */\n  value?: number;\n}\n\nexport interface NestedValueAggregationResult {\n  /**\n   * Value of the field.\n   * @maxLength 1000\n   */\n  value?: string;\n  /** Nested aggregations. */\n  nestedResults?: NestedAggregationResults;\n}\n\nexport interface ValueResult {\n  /**\n   * Value of the field.\n   * @maxLength 1000\n   */\n  value?: string;\n  /** Count of entities with this value. */\n  count?: number | null;\n}\n\nexport interface RangeResult {\n  /** Inclusive lower bound of the range. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. */\n  to?: number | null;\n  /** Count of entities in this range. */\n  count?: number | null;\n}\n\nexport interface ScalarResult {\n  /** Value of the scalar aggregation. */\n  value?: number;\n}\n\nexport interface NestedResultValue extends NestedResultValueResultOneOf {\n  /** Value aggregation result. */\n  value?: ValueResult;\n  /** Range aggregation result. */\n  range?: RangeResult;\n  /** Scalar aggregation result. */\n  scalar?: ScalarResult;\n  /** Date histogram aggregation result. */\n  dateHistogram?: ValueResult;\n}\n\n/** @oneof */\nexport interface NestedResultValueResultOneOf {\n  /** Value aggregation result. */\n  value?: ValueResult;\n  /** Range aggregation result. */\n  range?: RangeResult;\n  /** Scalar aggregation result. */\n  scalar?: ScalarResult;\n  /** Date histogram aggregation result. */\n  dateHistogram?: ValueResult;\n}\n\nexport interface Results {\n  /** List of nested aggregations. */\n  results?: Record<string, NestedResultValue>;\n}\n\nexport interface DateHistogramResult {\n  /**\n   * Date in ISO 8601 format.\n   * @maxLength 100\n   */\n  value?: string;\n  /** Count of documents in the bucket. */\n  count?: number;\n}\n\nexport interface GroupByValueResults {\n  /**\n   * List of value aggregations.\n   * @maxSize 1000\n   */\n  results?: NestedValueAggregationResult[];\n}\n\nexport interface DateHistogramResults {\n  /**\n   * List of date histogram aggregations.\n   * @maxSize 200\n   */\n  results?: DateHistogramResult[];\n}\n\n/**\n * Results of `NESTED` aggregation type in a flattened form.\n * Aggregations in resulting array are keyed by requested aggregation `name`.\n */\nexport interface NestedResults {\n  /**\n   * List of nested aggregations.\n   * @maxSize 1000\n   */\n  results?: Results[];\n}\n\nexport interface AggregationResults extends AggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /** Group by value aggregation results. */\n  groupedByValue?: GroupByValueResults;\n  /** Date histogram aggregation results. */\n  dateHistogram?: DateHistogramResults;\n  /** Nested aggregation results. */\n  nested?: NestedResults;\n  /**\n   * User-defined name of aggregation as derived from search request.\n   * @maxLength 100\n   */\n  name?: string;\n  /** Type of aggregation that must match provided kind as derived from search request. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by as derived from search request.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface AggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /** Group by value aggregation results. */\n  groupedByValue?: GroupByValueResults;\n  /** Date histogram aggregation results. */\n  dateHistogram?: DateHistogramResults;\n  /** Nested aggregation results. */\n  nested?: NestedResults;\n}\n\nexport interface SendInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n  /**\n   * List of contact IDs to send the invoice to. If not provided, the invoice is sent to the customer contact.\n   * @format GUID\n   * @maxSize 5\n   */\n  contactIds?: string[];\n  /**\n   * Optional message included with the sent invoice.\n   * @maxLength 2500\n   */\n  messageContent?: string | null;\n}\n\nexport interface SendInvoiceResponse {\n  /** Sent invoice. */\n  invoice?: Invoice;\n  /** Results for each contact send attempt. */\n  sendResults?: SendResult[];\n}\n\nexport interface SendResult {\n  /**\n   * Contact ID the send was attempted for.\n   * @format GUID\n   */\n  contactId?: string;\n  /** Whether the send was successful. */\n  success?: boolean;\n  /** Error type if the send failed. */\n  errorType?: SendErrorTypeWithLiterals;\n}\n\nexport enum SendErrorType {\n  /** Couldn't find the contact. */\n  CUSTOMER_CONTACT_NOT_FOUND = 'CUSTOMER_CONTACT_NOT_FOUND',\n  /** Contact doesn't have an email address. */\n  CONTACT_EMAIL_MISSING = 'CONTACT_EMAIL_MISSING',\n  /** Unexpected error. */\n  INTERNAL_ERROR = 'INTERNAL_ERROR',\n}\n\n/** @enumType */\nexport type SendErrorTypeWithLiterals =\n  | SendErrorType\n  | 'CUSTOMER_CONTACT_NOT_FOUND'\n  | 'CONTACT_EMAIL_MISSING'\n  | 'INTERNAL_ERROR';\n\nexport interface PublishInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface PublishInvoiceResponse {\n  /** Published invoice. */\n  invoice?: Invoice;\n}\n\nexport interface VoidInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface VoidInvoiceResponse {\n  /** Voided invoice. */\n  invoice?: Invoice;\n}\n\nexport interface ArchiveInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface ArchiveInvoiceResponse {\n  /** Archived invoice. */\n  invoice?: Invoice;\n}\n\nexport interface UnarchiveInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface UnarchiveInvoiceResponse {\n  /** Unarchived invoice. */\n  invoice?: Invoice;\n}\n\nexport interface InitiatePaymentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface InitiatePaymentResponse {\n  /**\n   * Checkout URL for the customer to make a payment.\n   * @format WEB_URL\n   */\n  url?: string;\n  /**\n   * Payment request ID.\n   * @format GUID\n   */\n  paymentRequestId?: string;\n}\n\nexport interface EnableInvoicePaymentsRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface EnableInvoicePaymentsResponse {\n  /**\n   * Wix eCommerce order ID.\n   * @format GUID\n   * @readonly\n   */\n  orderId?: string;\n}\n\nexport interface GeneratePdfDocumentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface GeneratePdfDocumentResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface MarkInvoiceAsViewedRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface MarkInvoiceAsViewedResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface MarkInvoiceAsSentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface MarkInvoiceAsSentResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface CalculateInvoiceRequest {\n  /** Invoice to calculate. */\n  invoice: Invoice;\n  /**\n   * Correlation ID from a previous calculation. Pass this to optimize incremental recalculations.\n   * @format GUID\n   */\n  correlationId?: string | null;\n}\n\nexport interface CalculateInvoiceResponse {\n  /** Calculated invoice. */\n  invoice?: Invoice;\n  /** Available shipping options for the invoice. */\n  shipmentOptions?: ShipmentOption[];\n  /** Errors that occurred during calculation. */\n  calculationErrors?: CalculationErrors;\n  /**\n   * Correlation ID. Pass this in subsequent calculations to optimize incremental recalculations.\n   * @format GUID\n   */\n  correlationId?: string;\n}\n\nexport interface ShipmentOption {\n  /**\n   * Shipping carrier ID.\n   * @minLength 1\n   * @maxLength 100\n   */\n  carrierId?: string | null;\n  /**\n   * Shipping method code.\n   * @minLength 1\n   * @maxLength 100\n   */\n  code?: string | null;\n  /**\n   * Shipping method title.\n   * @minLength 1\n   * @maxLength 250\n   */\n  title?: string | null;\n  /**\n   * Shipping price.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string | null;\n  /** Delivery logistics details. */\n  logistics?: DeliveryLogisticsOption;\n}\n\nexport interface DeliveryLogisticsOption {\n  /**\n   * Expected delivery time as free text.\n   * @minLength 1\n   * @maxLength 500\n   */\n  deliveryTime?: string | null;\n  /** Expected delivery time window. */\n  deliveryTimeSlot?: DeliveryTimeSlot;\n  /**\n   * Carrier delivery instructions.\n   * @minLength 1\n   * @maxLength 1000\n   */\n  instructions?: string | null;\n  /** Additional pickup details. */\n  pickupDetails?: PickupDetails;\n}\n\nexport interface CalculationErrors\n  extends CalculationErrorsShippingCalculationErrorOneOf {\n  /** General shipping calculation error. */\n  generalShippingCalculationError?: Details;\n  /** Shipping carrier-specific errors. */\n  carrierErrors?: CarrierErrors;\n  /** Tax calculation error. */\n  taxCalculationError?: Details;\n}\n\n/** @oneof */\nexport interface CalculationErrorsShippingCalculationErrorOneOf {\n  /** General shipping calculation error. */\n  generalShippingCalculationError?: Details;\n  /** Shipping carrier-specific errors. */\n  carrierErrors?: CarrierErrors;\n}\n\nexport interface Details extends DetailsKindOneOf {\n  applicationError?: ApplicationError;\n  validationError?: ValidationError;\n  systemError?: SystemError;\n  /**\n   * deprecated in API's - to enable migration from rendering arbitrary tracing to rest response\n   * @deprecated\n   */\n  tracing?: Record<string, string>;\n}\n\n/** @oneof */\nexport interface DetailsKindOneOf {\n  applicationError?: ApplicationError;\n  validationError?: ValidationError;\n  systemError?: SystemError;\n}\n\nexport interface ApplicationError {\n  /** Error code. */\n  code?: string;\n  /** Description of the error. */\n  description?: string;\n  /** Data related to the error. */\n  data?: Record<string, any> | null;\n}\n\n/**\n * example result:\n * {\n * \"fieldViolations\": [\n * {\n * \"field\": \"fieldA\",\n * \"description\": \"invalid music note. supported notes: [do,re,mi,fa,sol,la,ti]\",\n * \"violatedRule\": \"OTHER\",\n * \"ruleName\": \"INVALID_NOTE\",\n * \"data\": {\n * \"value\": \"FI\"\n * }\n * },\n * {\n * \"field\": \"fieldB\",\n * \"description\": \"field value out of range. supported range: [0-20]\",\n * \"violatedRule\": \"MAX\",\n * \"data\": {\n * \"threshold\": 20\n * }\n * },\n * {\n * \"field\": \"fieldC\",\n * \"description\": \"invalid phone number. provide a valid phone number of size: [7-12], supported characters: [0-9, +, -, (, )]\",\n * \"violatedRule\": \"FORMAT\",\n * \"data\": {\n * \"type\": \"PHONE\"\n * }\n * }\n * ]\n * }\n */\nexport interface ValidationError {\n  fieldViolations?: FieldViolation[];\n}\n\nexport enum RuleType {\n  VALIDATION = 'VALIDATION',\n  OTHER = 'OTHER',\n  MAX = 'MAX',\n  MIN = 'MIN',\n  MAX_LENGTH = 'MAX_LENGTH',\n  MIN_LENGTH = 'MIN_LENGTH',\n  MAX_SIZE = 'MAX_SIZE',\n  MIN_SIZE = 'MIN_SIZE',\n  FORMAT = 'FORMAT',\n  DECIMAL_LTE = 'DECIMAL_LTE',\n  DECIMAL_GTE = 'DECIMAL_GTE',\n  DECIMAL_LT = 'DECIMAL_LT',\n  DECIMAL_GT = 'DECIMAL_GT',\n  DECIMAL_MAX_SCALE = 'DECIMAL_MAX_SCALE',\n  INVALID_ENUM_VALUE = 'INVALID_ENUM_VALUE',\n  REQUIRED_FIELD = 'REQUIRED_FIELD',\n  FIELD_NOT_ALLOWED = 'FIELD_NOT_ALLOWED',\n  ONE_OF_ALIGNMENT = 'ONE_OF_ALIGNMENT',\n  EXACT_LENGTH = 'EXACT_LENGTH',\n  EXACT_SIZE = 'EXACT_SIZE',\n  REQUIRED_ONE_OF_FIELD = 'REQUIRED_ONE_OF_FIELD',\n}\n\n/** @enumType */\nexport type RuleTypeWithLiterals =\n  | RuleType\n  | 'VALIDATION'\n  | 'OTHER'\n  | 'MAX'\n  | 'MIN'\n  | 'MAX_LENGTH'\n  | 'MIN_LENGTH'\n  | 'MAX_SIZE'\n  | 'MIN_SIZE'\n  | 'FORMAT'\n  | 'DECIMAL_LTE'\n  | 'DECIMAL_GTE'\n  | 'DECIMAL_LT'\n  | 'DECIMAL_GT'\n  | 'DECIMAL_MAX_SCALE'\n  | 'INVALID_ENUM_VALUE'\n  | 'REQUIRED_FIELD'\n  | 'FIELD_NOT_ALLOWED'\n  | 'ONE_OF_ALIGNMENT'\n  | 'EXACT_LENGTH'\n  | 'EXACT_SIZE'\n  | 'REQUIRED_ONE_OF_FIELD';\n\nexport interface FieldViolation {\n  field?: string;\n  description?: string;\n  violatedRule?: RuleTypeWithLiterals;\n  /** applicable when violated_rule=OTHER */\n  ruleName?: string | null;\n  data?: Record<string, any> | null;\n}\n\nexport interface SystemError {\n  /** Error code. */\n  errorCode?: string | null;\n}\n\nexport interface CarrierErrors {\n  /**\n   * Shipping carrier errors.\n   * @maxSize 10\n   */\n  errors?: CarrierError[];\n}\n\nexport interface CarrierError {\n  /**\n   * Carrier ID.\n   * @format GUID\n   */\n  carrierId?: string;\n  /** Error details. */\n  error?: Details;\n}\n\nexport interface GetLatestInvoiceNumberRequest {\n  /**\n   * Invoice number prefix to filter by.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n}\n\nexport interface GetLatestInvoiceNumberResponse {\n  /** Highest invoice number currently in use for the specified prefix. */\n  number?: number | null;\n}\n\nexport interface InternalCountInvoicesRequest {}\n\nexport interface InternalCountInvoicesResponse {\n  /** Total number of invoices in the current metasite, excluding draft recurring (auto-charge) invoices. */\n  count?: number;\n  /** Number of draft recurring (auto-charge) invoices in the current metasite. */\n  recurringInvoicesCount?: number;\n}\n\nexport interface GenerateReceiptRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n  /**\n   * Payment ID.\n   * @format GUID\n   */\n  paymentId: string;\n}\n\nexport interface GenerateReceiptResponse {\n  /**\n   * Generated receipt ID.\n   * @format GUID\n   */\n  receiptId?: string;\n}\n\nexport interface BulkCreateInvoicesRequest {\n  /**\n   * Invoices to create.\n   * @minSize 1\n   * @maxSize 100\n   */\n  invoices: Invoice[];\n  /** Whether to return the created entities in the response. */\n  returnEntity?: boolean;\n}\n\nexport interface BulkCreateInvoicesResponse {\n  /**\n   * Results of the bulk create operation.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkInvoiceResult[];\n  /** Bulk action metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface ItemMetadata {\n  /**\n   * Item ID. Provided only whenever possible. For example, `itemId` can't be provided when item creation has failed.\n   * @format GUID\n   */\n  _id?: string | null;\n  /** Index of the item within the request array. Allows for correlation between request and response items. */\n  originalIndex?: number;\n  /** Whether the requested action for this item was successful. When `false`, the `error` field is returned. */\n  success?: boolean;\n  /** Details about the error in case of failure. */\n  error?: ApplicationError;\n}\n\nexport interface BulkInvoiceResult {\n  /** Item metadata. */\n  itemMetadata?: ItemMetadata;\n  /** Created invoice. Only returned if `returnEntity` was set to `true` in the request. */\n  item?: Invoice;\n}\n\nexport interface BulkActionMetadata {\n  /** Number of items that were successfully processed. */\n  totalSuccesses?: number;\n  /** Number of items that couldn't be processed. */\n  totalFailures?: number;\n  /** Number of failures without details because detailed failure threshold was exceeded. */\n  undetailedFailures?: number;\n}\n\nexport interface BulkUpdateInvoicesRequest {\n  /**\n   * Invoices to update.\n   * @minSize 1\n   * @maxSize 100\n   */\n  invoices: MaskedInvoice[];\n  /** Whether to return the updated entities in the response. */\n  returnEntity?: boolean;\n}\n\nexport interface MaskedInvoice {\n  /** Invoice to update, may be partial. */\n  invoice?: Invoice;\n  /**\n   * Set of fields to update.\n   *\n   * Fields that aren't included in `fieldMask.paths` are ignored.\n   */\n  fieldMask?: string[];\n}\n\nexport interface BulkUpdateInvoicesResponse {\n  /**\n   * Results of the bulk update operation.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateInvoicesResponseBulkInvoiceResult[];\n  /** Bulk action metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkUpdateInvoicesResponseBulkInvoiceResult {\n  /** Item metadata. */\n  itemMetadata?: ItemMetadata;\n  /** Updated invoice. Only returned if `returnEntity` was set to `true` in the request. */\n  item?: Invoice;\n}\n\nexport interface BulkDeleteInvoicesRequest {\n  /**\n   * IDs of invoices to delete.\n   * @minSize 1\n   * @maxSize 100\n   * @format GUID\n   */\n  invoiceIds: string[];\n}\n\nexport interface BulkDeleteInvoicesResponse {\n  /**\n   * Results of the bulk delete operation.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkDeleteInvoicesResponseBulkInvoiceResult[];\n  /** Bulk action metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkDeleteInvoicesResponseBulkInvoiceResult {\n  /** Item metadata. */\n  itemMetadata?: ItemMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsRequest {\n  /**\n   * IDs of invoices to update tags for.\n   * @minSize 1\n   * @maxSize 100\n   * @format GUID\n   */\n  invoiceIds: string[];\n  /** Tags to assign. */\n  assignTags?: Tags;\n  /** Tags to unassign. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateInvoiceTagsResponse {\n  /**\n   * Results of the bulk update tags operation.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateInvoiceTagsResult[];\n  /** Bulk action metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsResult {\n  /** Item metadata. */\n  itemMetadata?: ItemMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterRequest {\n  /** Filter for selecting invoices to update. */\n  filter: Record<string, any> | null;\n  /** Tags to assign. */\n  assignTags?: Tags;\n  /** Tags to unassign. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterResponse {\n  /**\n   * Job ID. Pass this ID to [Get Async Job](https://dev.wix.com/docs/api-reference/business-management/async-job/get-async-job) to retrieve the status of the asynchronous operation.\n   * @format GUID\n   */\n  jobId?: string;\n}\n\nexport interface AddPaymentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId?: string;\n  /** Payment to add. */\n  payment?: Payment;\n  /**\n   * Whether to also create a payment transaction in the eCommerce system.\n   * Defaults to `true` when not set.\n   */\n  createPaymentTransaction?: boolean | null;\n}\n\nexport interface AddPaymentResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface Empty {}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted. */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface MessageEnvelope {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Stringify payload. */\n  data?: string;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n  | WebhookIdentityType\n  | 'UNKNOWN'\n  | 'ANONYMOUS_VISITOR'\n  | 'MEMBER'\n  | 'WIX_USER'\n  | 'APP';\n\nexport interface AccountInfo {\n  /**\n   * ID of the Wix account associated with the event.\n   * @format GUID\n   */\n  accountId?: string | null;\n  /**\n   * ID of the parent Wix account. Only included when accountId belongs to a child account.\n   * @format GUID\n   */\n  parentAccountId?: string | null;\n  /**\n   * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n   * @format GUID\n   */\n  siteId?: string | null;\n}\n\n/** @docsIgnore */\nexport type CreateInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'LINE_ITEM_CATALOG_ITEM_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'DEPOSIT_MUST_BE_LESS_THAN_TOTAL';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'BALANCE_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_TOO_LOW_FOR_AUTO_CHARGE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_ORDER_TYPE_CREATION_RESTRICTED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_MIGRATED_TYPE_CREATION_RESTRICTED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_TAXES';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_CARRIER_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type CreateInvoiceValidationErrors =\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'INVOICE_DATE_OUT_OF_RANGE';\n    }\n  | {\n      ruleName?: 'TIME_ZONE_INVALID';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'LINE_ITEM_QUANTITY_MUST_BE_INTEGER';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_INVALID';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_MULTIPLE_LINE_ITEMS_NOT_SUPPORTED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_START_DATE_ILLEGAL_FOR_NON_INITIAL_INVOICE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_CURRENT_CYCLE_MUST_BE_INITIAL_FOR_STANDALONE_INVOICE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_NOT_ALLOWED_FOR_REFERENCE_TYPE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_DEPOSIT_NOT_ALLOWED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_MULTIPLE_DISCOUNTS_NOT_SUPPORTED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_BOOKINGS_LINE_ITEM_NOT_SUPPORTED';\n    };\n/** @docsIgnore */\nexport type GetInvoiceApplicationErrors = {\n  code?: 'SITE_PROPERTIES_FAILED';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type UpdateInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'LINE_ITEM_CATALOG_ITEM_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'DEPOSIT_MUST_BE_LESS_THAN_TOTAL';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'BALANCE_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_TOO_LOW_FOR_AUTO_CHARGE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'ILLEGAL_FIELD_UPDATE_FOR_PAID_INVOICE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_FIELD_UPDATE_FOR_INVOICE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_FIELD_UPDATE_FOR_PUBLISHED_INVOICE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SUBSCRIPTION_SETTINGS_IMMUTABLE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_TAXES';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_CARRIER_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type UpdateInvoiceValidationErrors =\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'INVOICE_DATE_OUT_OF_RANGE';\n    }\n  | {\n      ruleName?: 'TIME_ZONE_INVALID';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'LINE_ITEM_QUANTITY_MUST_BE_INTEGER';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_INVALID';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_MULTIPLE_LINE_ITEMS_NOT_SUPPORTED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_START_DATE_ILLEGAL_FOR_NON_INITIAL_INVOICE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_CURRENT_CYCLE_MUST_BE_INITIAL_FOR_STANDALONE_INVOICE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_NOT_ALLOWED_FOR_REFERENCE_TYPE';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_LINE_ITEM_DEPOSIT_NOT_ALLOWED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_MULTIPLE_DISCOUNTS_NOT_SUPPORTED';\n    }\n  | {\n      ruleName?: 'SUBSCRIPTION_BOOKINGS_LINE_ITEM_NOT_SUPPORTED';\n    };\n/** @docsIgnore */\nexport type DeleteInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type QueryInvoicesApplicationErrors = {\n  code?: 'SITE_PROPERTIES_FAILED';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type SendInvoiceApplicationErrors =\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_MISSING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SEND_LIMIT_REACHED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type PublishInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_NOT_PUBLISHED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type VoidInvoiceApplicationErrors =\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    };\n/** @docsIgnore */\nexport type ArchiveInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type UnarchiveInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type InitiatePaymentApplicationErrors =\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVALID_INVOICE_BALANCE_FOR_ONLINE_PAYMENT';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_NOT_PUBLISHED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'BUSINESS_ADDRESS_MISSING_OR_INVALID_FOR_TAX_CALCULATION';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ECOM_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_PAYMENT_REQUEST_PAGE_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type EnableInvoicePaymentsApplicationErrors =\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'BUSINESS_ADDRESS_MISSING_OR_INVALID_FOR_TAX_CALCULATION';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type GeneratePdfDocumentApplicationErrors =\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVOICE_PDF_ALREADY_PROCESSING';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type CalculateInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'LINE_ITEM_CATALOG_ITEM_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'DEPOSIT_MUST_BE_LESS_THAN_TOTAL';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVALID_INVOICE_TYPE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'CALCULATION_IN_PROGRESS';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type BulkCreateInvoicesApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type BulkCreateInvoicesValidationErrors =\n  | {\n      ruleName?: 'INVOICE_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'INVOICE_DATE_OUT_OF_RANGE';\n    }\n  | {\n      ruleName?: 'TIME_ZONE_INVALID';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'LINE_ITEM_QUANTITY_MUST_BE_INTEGER';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    };\n/** @docsIgnore */\nexport type BulkUpdateInvoicesApplicationErrors =\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SUBSCRIPTION_SETTINGS_IMMUTABLE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ORDER_TOTAL_EXCEEDS_LIMIT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type BulkUpdateInvoicesValidationErrors =\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'INVOICE_DATE_OUT_OF_RANGE';\n    }\n  | {\n      ruleName?: 'TIME_ZONE_INVALID';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_INVALID';\n    }\n  | {\n      ruleName?: 'INVOICE_IDS_MUST_BE_UNIQUE';\n    };\n/** @docsIgnore */\nexport type BulkUpdateInvoiceTagsApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateInvoiceTagsByFilterApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n\nexport interface BaseEventMetadata {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n  accountInfo?: AccountInfoMetadata;\n}\n\nexport interface AccountInfoMetadata {\n  /** ID of the Wix account associated with the event */\n  accountId: string;\n  /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */\n  siteId?: string;\n  /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */\n  parentAccountId?: string;\n}\n\nexport interface InvoiceCreatedEnvelope {\n  entity: Invoice;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an invoice is created.\n * @permissionScope Manage Stores\n * @permissionScopeId SCOPE.STORES.MANAGE-STORES\n * @permissionScope Manage Events\n * @permissionScopeId SCOPE.EVENTS.MANAGE-EVENTS\n * @permissionScope Manage Invoices\n * @permissionScopeId SCOPE.INVOICES.MANAGE\n * @permissionId INVOICES.INVOICE_DOMAIN_EVENTS_READ\n * @webhook\n * @eventType wix.invoices.invoices.v4.invoice_created\n * @slug created\n * @documentationMaturity preview\n */\nexport declare function onInvoiceCreated(\n  handler: (event: InvoiceCreatedEnvelope) => void | Promise<void>\n): void;\n\nexport interface InvoiceDeletedEnvelope {\n  entity: Invoice;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an invoice is deleted.\n * @permissionScope Manage Stores\n * @permissionScopeId SCOPE.STORES.MANAGE-STORES\n * @permissionScope Manage Events\n * @permissionScopeId SCOPE.EVENTS.MANAGE-EVENTS\n * @permissionScope Manage Invoices\n * @permissionScopeId SCOPE.INVOICES.MANAGE\n * @permissionId INVOICES.INVOICE_DOMAIN_EVENTS_READ\n * @webhook\n * @eventType wix.invoices.invoices.v4.invoice_deleted\n * @slug deleted\n * @documentationMaturity preview\n */\nexport declare function onInvoiceDeleted(\n  handler: (event: InvoiceDeletedEnvelope) => void | Promise<void>\n): void;\n\nexport interface InvoiceSentEnvelope {\n  data: InvoiceSent;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an invoice is sent to a customer.\n * @permissionScope Manage Stores\n * @permissionScopeId SCOPE.STORES.MANAGE-STORES\n * @permissionScope Manage Events\n * @permissionScopeId SCOPE.EVENTS.MANAGE-EVENTS\n * @permissionScope Manage Invoices\n * @permissionScopeId SCOPE.INVOICES.MANAGE\n * @permissionId INVOICES.INVOICE_DOMAIN_EVENTS_READ\n * @webhook\n * @eventType wix.invoices.invoices.v4.invoice_invoice_sent\n * @slug invoice_sent\n * @documentationMaturity preview\n */\nexport declare function onInvoiceSent(\n  handler: (event: InvoiceSentEnvelope) => void | Promise<void>\n): void;\n\nexport interface InvoiceTagsModifiedEnvelope {\n  data: TagsModified;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when an invoice's tags are modified.\n * @permissionScope Manage Stores\n * @permissionScopeId SCOPE.STORES.MANAGE-STORES\n * @permissionScope Manage Events\n * @permissionScopeId SCOPE.EVENTS.MANAGE-EVENTS\n * @permissionScope Manage Invoices\n * @permissionScopeId SCOPE.INVOICES.MANAGE\n * @permissionId INVOICES.INVOICE_DOMAIN_EVENTS_READ\n * @webhook\n * @eventType wix.invoices.invoices.v4.invoice_tags_modified\n * @slug tags_modified\n * @documentationMaturity preview\n */\nexport declare function onInvoiceTagsModified(\n  handler: (event: InvoiceTagsModifiedEnvelope) => void | Promise<void>\n): void;\n\nexport interface InvoiceUpdatedEnvelope {\n  entity: Invoice;\n  metadata: EventMetadata;\n  /** @hidden */\n  modifiedFields: Record<string, any>;\n}\n\n/**\n * Triggered when an invoice is updated.\n * @permissionScope Manage Stores\n * @permissionScopeId SCOPE.STORES.MANAGE-STORES\n * @permissionScope Manage Events\n * @permissionScopeId SCOPE.EVENTS.MANAGE-EVENTS\n * @permissionScope Manage Invoices\n * @permissionScopeId SCOPE.INVOICES.MANAGE\n * @permissionId INVOICES.INVOICE_DOMAIN_EVENTS_READ\n * @webhook\n * @eventType wix.invoices.invoices.v4.invoice_updated\n * @slug updated\n * @documentationMaturity preview\n */\nexport declare function onInvoiceUpdated(\n  handler: (event: InvoiceUpdatedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Creates an invoice.\n *\n *\n * To create multiple invoices in a single API call, call [Bulk Create Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-create-invoices).\n * @param invoice - Invoice to create.\n * @public\n * @documentationMaturity preview\n * @requiredField invoice\n * @requiredField invoice.currency\n * @requiredField invoice.customerInfo\n * @requiredField invoice.customerInfo.contactId\n * @requiredField invoice.issueDate\n * @requiredField invoice.lineItems\n * @requiredField invoice.lineItems.lineItemOptions.catalogItem.catalogReference\n * @requiredField invoice.lineItems.lineItemOptions.catalogItem.catalogReference.appId\n * @requiredField invoice.lineItems.lineItemOptions.catalogItem.catalogReference.catalogItemId\n * @requiredField invoice.lineItems.lineItemOptions.customItem.name\n * @requiredField invoice.lineItems.lineItemOptions.customItem.price\n * @requiredField invoice.lineItems.lineItemOptions.customItem.quantity\n * @requiredField invoice.lineItems.lineItemType\n * @requiredField invoice.reference\n * @requiredField invoice.reference.referenceOptions\n * @requiredField invoice.reference.referenceOptions.orderReference.orderId\n * @requiredField invoice.shipmentInfo.code\n * @requiredField invoice.shippingInfo.contactDetails\n * @requiredField invoice.shippingInfo.shippingAddress\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @returns Created invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.CreateInvoice\n */\nexport async function createInvoice(\n  invoice: NonNullablePaths<\n    Invoice,\n    | `currency`\n    | `customerInfo`\n    | `customerInfo.contactId`\n    | `issueDate`\n    | `lineItems`\n    | `lineItems.${number}.catalogItem.catalogReference`\n    | `lineItems.${number}.catalogItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.name`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.lineItemType`\n    | `reference`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `shipmentInfo.code`\n    | `shipmentInfo.price`\n    | `shippingInfo.contactDetails`\n    | `shippingInfo.contactDetails.email`\n    | `shippingInfo.shippingAddress`,\n    6\n  >\n): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.migratedReference.limitActions`\n    | `reference.autoChargeReference.limitActions`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.lineItemType`\n    | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `discounts.${number}.appliedAmount`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `payments.${number}.cashRounding.roundingAmount`\n    | `payments.${number}.cashRounding.unroundedAmount`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `presetProperties.invoicePreset.defaultPreset`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `activityInfo.sentToContactIds`\n    | `hasSubscriptions`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: CreateInvoiceApplicationErrors;\n    __validationErrorsType?: CreateInvoiceValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({ invoice: invoice }, [\n      'invoice.customFields.footerCustomField.content',\n      'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n    ]),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n          { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.createInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoice: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoice']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves an invoice.\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @returns Retrieved invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.GetInvoice\n */\nexport async function getInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.migratedReference.limitActions`\n    | `reference.autoChargeReference.limitActions`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.lineItemType`\n    | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `discounts.${number}.appliedAmount`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `payments.${number}.cashRounding.roundingAmount`\n    | `payments.${number}.cashRounding.unroundedAmount`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `presetProperties.invoicePreset.defaultPreset`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `activityInfo.sentToContactIds`\n    | `hasSubscriptions`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: GetInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.getInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Updates an invoice.\n *\n *\n * To update multiple invoices in a single API call, call [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices).\n * @param _id - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField invoice\n * @requiredField invoice.lineItems.lineItemOptions.customItem.name\n * @requiredField invoice.revision\n * @permissionId INVOICES.INVOICE_UPDATE\n * @applicableIdentity APP\n * @returns Updated invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.UpdateInvoice\n */\nexport async function updateInvoice(\n  _id: string,\n  invoice: NonNullablePaths<\n    UpdateInvoice,\n    `lineItems.${number}.customItem.name` | `revision`,\n    5\n  >\n): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.migratedReference.limitActions`\n    | `reference.autoChargeReference.limitActions`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.lineItemType`\n    | `shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `discounts.${number}.appliedAmount`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `payments.${number}.cashRounding.roundingAmount`\n    | `payments.${number}.cashRounding.unroundedAmount`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `presetProperties.invoicePreset.defaultPreset`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `activityInfo.sentToContactIds`\n    | `hasSubscriptions`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: UpdateInvoiceApplicationErrors;\n    __validationErrorsType?: UpdateInvoiceValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoice: { ...invoice, id: _id } },\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n          { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.updateInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: { invoice: '$[1]' },\n        explicitPathsToArguments: { 'invoice.id': '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['_id', 'invoice']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface UpdateInvoice {\n  /**\n   * Invoice ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the invoice is updated.\n   * To prevent conflicting changes,\n   * the current revision must be passed when updating the invoice.\n   *\n   * Ignored when creating an invoice.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the invoice was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the invoice was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Invoice status.\n   * @readonly\n   */\n  status?: StatusWithLiterals;\n  /**\n   * Additional flags providing context about the invoice's state, independent of its primary status. These flags are system-managed and read-only.\n   * @readonly\n   * @maxSize 2\n   */\n  statusQualifiers?: StatusQualifierWithLiterals[];\n  /**\n   * Actions that can be performed on this invoice based on its current status.\n   * @readonly\n   * @maxSize 12\n   */\n  availableActions?: ActionWithLiterals[];\n  /**\n   * Information about the app that created the invoice.\n   * @immutable\n   */\n  sourceReference?: SourceReference;\n  /**\n   * Invoice type and Wix eCommerce association. May change when an eligible legacy invoice is converted.\n   * @immutable\n   */\n  reference?: Reference;\n  /** Regional properties for the invoice. When not provided, defaults are taken from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction). */\n  regionalProperties?: RegionalProperties;\n  /**\n   * Invoice numbering. Assigned when the invoice is published.\n   * @readonly\n   */\n  numbering?: Numbering;\n  /** Date the invoice was issued. */\n  issueDate?: Date | null;\n  /** Date when payment is due. Cannot be before `issueDate`. */\n  dueDate?: Date | null;\n  /**\n   * Invoice title.\n   * @minLength 1\n   * @maxLength 200\n   */\n  title?: string | null;\n  /**\n   * Currency code for all monetary amounts on the invoice.\n   * Three-letter code in [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format.\n   * Set at creation and can't be changed.\n   * @format CURRENCY\n   * @immutable\n   */\n  currency?: string;\n  /** Customer information including contact details and billing address. */\n  customerInfo?: CustomerInfo;\n  /** Shipping destination for the invoice, including the recipient's contact details and address. Can exist independently without a shipment. When a shipment is configured, `shipmentInfo` uses this address as the delivery destination unless a pickup address is specified. */\n  shippingInfo?: ShippingInfo;\n  /** Business details displayed on the invoice, such as company name, address, email, phone, and logo. Automatically populated from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction) when the invoice is created, if not explicitly provided. These details aren't synced with Site Properties after creation and become permanently fixed once `status` reaches `PARTIALLY_PAID`, `PAID`, or `VOIDED`. */\n  businessDetails?: BusinessDetails;\n  /**\n   * Line items on the invoice.\n   * @maxSize 300\n   */\n  lineItems?: LineItem[];\n  /** Delivery and shipping cost details (carrier, method, price, tax) tied to the Wix eCommerce integration. Defaults to using `shippingInfo.shippingAddress` as the delivery destination unless `shipmentInfo.logistics.pickupDetails` is specified. */\n  shipmentInfo?: ShipmentInfo;\n  /**\n   * Additional fees applied to the invoice.\n   * @maxSize 20\n   */\n  additionalFees?: AdditionalFee[];\n  /**\n   * Invoice-level discounts.\n   * @maxSize 20\n   */\n  discounts?: Discount[];\n  /** Deposit payment configuration. */\n  deposit?: Deposit;\n  /**\n   * Tax information.\n   * @readonly\n   */\n  taxInfo?: TaxInfo;\n  /**\n   * Payment records.\n   * @maxSize 100\n   * @readonly\n   */\n  payments?: Payment[];\n  /**\n   * Financial summary including subtotal, taxes, and total amount.\n   * @readonly\n   */\n  totals?: Totals;\n  /**\n   * Whether the invoice is archived.\n   * @readonly\n   */\n  archived?: boolean;\n  /** Custom fields displayed on the invoice document. */\n  customFields?: CustomFields;\n  /** Invoice preset applied to this invoice. Determines the appearance and custom fields on the invoice document. If not provided, the [default preset](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoice-presets/set-default-invoice-preset) is used. */\n  presetProperties?: PresetProperties;\n  /**\n   * Files attached to the invoice.\n   * @maxSize 5\n   */\n  attachments?: Attachment[];\n  /**\n   * PDF document generation status.\n   * @readonly\n   */\n  documentInfo?: DocumentInfo;\n  /**\n   * Invoice URL.\n   * @readonly\n   */\n  links?: Links;\n  /** Business location. */\n  businessLocation?: BusinessLocation;\n  /**\n   * Read-only record of when the invoice was last sent and last viewed.\n   * @readonly\n   */\n  activityInfo?: ActivityInfo;\n  /**\n   * Whether the invoice contains subscription line items. `true` when at least one line item carries subscription info.\n   * @readonly\n   */\n  hasSubscriptions?: boolean;\n  /** Tags for organizing invoices. `publicTags` are visible to anyone with access to the invoice. `privateTags` are restricted to site owners and require additional permissions to access. */\n  tags?: Tags;\n}\n\n/**\n * Deletes an invoice.\n *\n *\n * Deleting an invoice permanently removes it from the invoice list. Only invoices in `DRAFT` status can be deleted.\n *\n * To delete multiple invoices in a single API call, call [Bulk Delete Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-delete-invoices).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_DELETE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.DeleteInvoice\n */\nexport async function deleteInvoice(invoiceId: string): Promise<\n  void & {\n    __applicationErrorsType?: DeleteInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.deleteInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a list of up to 1,000 invoices, given the provided paging, filtering, and sorting.\n *\n *\n * Query Invoices runs with these defaults, which you can override:\n *\n * - `createdDate` is sorted in `DESC` order\n * - `paging.limit` is `50`\n * - `paging.offset` is `0`\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n * @public\n * @documentationMaturity preview\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.QueryInvoices\n */\nexport function queryInvoices(): InvoicesQueryBuilder {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[0] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  return queryBuilder<\n    Invoice,\n    'CURSOR',\n    QueryInvoicesRequest,\n    QueryInvoicesResponse\n  >({\n    func: async (payload: QueryInvoicesRequest) => {\n      const reqOpts =\n        ambassadorWixInvoicesInvoicesV4Invoice.queryInvoices(payload);\n\n      sideEffects?.onSiteCall?.();\n      try {\n        const result = await httpClient.request(reqOpts);\n        sideEffects?.onSuccess?.(result);\n        return result;\n      } catch (err) {\n        sideEffects?.onError?.(err);\n        throw err;\n      }\n    },\n    requestTransformer: (query: QueryInvoicesRequest['query']) => {\n      const args = [query, {}] as [QueryInvoicesRequest['query'], {}];\n      return renameKeysFromSDKRequestToRESTRequest(\n        { ...args?.[1], query: args?.[0] },\n        []\n      );\n    },\n    responseTransformer: ({ data }: HttpResponse<QueryInvoicesResponse>) => {\n      const transformedData = renameKeysFromRESTResponseToSDKResponse(\n        transformPaths(data, [\n          {\n            transformFn: transformRESTAddressToSDKAddress,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress' },\n              { path: 'invoices.shippingInfo.shippingAddress' },\n              { path: 'invoices.businessDetails.address' },\n              { path: 'invoices.shipmentInfo.logistics.pickupDetails.address' },\n            ],\n          },\n        ]),\n        [\n          'invoices.customFields.footerCustomField.content',\n          'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n        ]\n      );\n\n      return {\n        items: transformedData?.invoices,\n        pagingMetadata: transformedData?.pagingMetadata,\n      };\n    },\n    errorTransformer: (err: unknown) => {\n      const transformedError = sdkTransformError(err, {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      });\n\n      throw transformedError;\n    },\n    pagingMethod: 'CURSOR',\n    transformationPaths: {},\n  });\n}\n\ninterface QueryCursorResult {\n  cursors: Cursors;\n  hasNext: () => boolean;\n  hasPrev: () => boolean;\n  length: number;\n  pageSize: number;\n}\n\nexport interface InvoicesQueryResult extends QueryCursorResult {\n  items: Invoice[];\n  query: InvoicesQueryBuilder;\n  next: () => Promise<InvoicesQueryResult>;\n  prev: () => Promise<InvoicesQueryResult>;\n}\n\nexport interface InvoicesQueryBuilder {\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  eq: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ne: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ge: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  gt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  le: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  lt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `string`.\n   * @param string - String to compare against. Case-insensitive.\n   * @documentationMaturity preview\n   */\n  startsWith: (\n    propertyName:\n      | '_id'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    value: string\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   * @documentationMaturity preview\n   */\n  hasSome: (\n    propertyName: 'tags.privateTags.tagIds' | 'tags.publicTags.tagIds',\n    value: any[]\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   * @documentationMaturity preview\n   */\n  hasAll: (\n    propertyName: 'tags.privateTags.tagIds' | 'tags.publicTags.tagIds',\n    value: any[]\n  ) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  in: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  exists: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: boolean\n  ) => InvoicesQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n   * @documentationMaturity preview\n   */\n  ascending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'statusQualifiers'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds'\n    >\n  ) => InvoicesQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n   * @documentationMaturity preview\n   */\n  descending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'statusQualifiers'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.migratedReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'lineItems.customItem.subscriptionInfo.billingSubscriptionId'\n      | 'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId'\n      | 'archived'\n      | 'hasSubscriptions'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds'\n    >\n  ) => InvoicesQueryBuilder;\n  /** @param limit - Number of items to return, which is also the `pageSize` of the results object.\n   * @documentationMaturity preview\n   */\n  limit: (limit: number) => InvoicesQueryBuilder;\n  /** @param cursor - A pointer to specific record\n   * @documentationMaturity preview\n   */\n  skipTo: (cursor: string) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  find: () => Promise<InvoicesQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.invoices.invoices.v4.Invoices.QueryInvoices\n * @requiredField query\n */\nexport async function typedQueryInvoices(query: InvoiceQuery): Promise<\n  NonNullablePaths<\n    QueryInvoicesResponse,\n    | `invoices`\n    | `invoices.${number}.status`\n    | `invoices.${number}.sourceReference.appId`\n    | `invoices.${number}.reference.standaloneReference.limitActions`\n    | `invoices.${number}.reference.orderReference.orderId`\n    | `invoices.${number}.reference.migratedReference.limitActions`\n    | `invoices.${number}.reference.autoChargeReference.limitActions`\n    | `invoices.${number}.reference.referenceType`\n    | `invoices.${number}.regionalProperties.locale.languageCode`\n    | `invoices.${number}.regionalProperties.language`\n    | `invoices.${number}.numbering.displayNumber`\n    | `invoices.${number}.currency`\n    | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n    | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n    | `invoices.${number}.deposit.fixedDeposit`\n    | `invoices.${number}.deposit.percentageDeposit`\n    | `invoices.${number}.deposit.depositType`\n    | `invoices.${number}.taxInfo.taxExempt`\n    | `invoices.${number}.totals.subtotal`\n    | `invoices.${number}.totals.total`\n    | `invoices.${number}.totals.paidAmount`\n    | `invoices.${number}.totals.balance`\n    | `invoices.${number}.archived`\n    | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n    | `invoices.${number}.presetProperties.invoicePreset.name`\n    | `invoices.${number}.presetProperties.invoicePreset.defaultPreset`\n    | `invoices.${number}.documentInfo.status`\n    | `invoices.${number}.links.relativePath`\n    | `invoices.${number}.businessLocation._id`\n    | `invoices.${number}.hasSubscriptions`,\n    6\n  > & {\n    __applicationErrorsType?: QueryInvoicesApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ query: query }, []);\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.queryInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoices.customerInfo.billingAddress' },\n            { path: 'invoices.shippingInfo.shippingAddress' },\n            { path: 'invoices.businessDetails.address' },\n            { path: 'invoices.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['query']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface InvoiceQuerySpec extends QuerySpec {\n  paging: 'cursor';\n  wql: [\n    {\n      fields: [\n        'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n        'lineItems.customItem.subscriptionInfo.billingSubscriptionId',\n        'statusQualifiers',\n        'tags.privateTags.tagIds',\n        'tags.publicTags.tagIds'\n      ];\n      operators: ['$hasAll', '$hasSome'];\n      sort: 'BOTH';\n    },\n    {\n      fields: [\n        '_createdDate',\n        '_id',\n        '_updatedDate',\n        'archived',\n        'customerInfo.contactId',\n        'dueDate',\n        'hasSubscriptions',\n        'issueDate',\n        'numbering.displayNumber',\n        'numbering.number',\n        'numbering.prefix',\n        'numbering.suffix',\n        'reference.migratedReference.orderId',\n        'reference.orderReference.orderId',\n        'reference.referenceType',\n        'reference.standaloneReference.orderId',\n        'sourceReference.appId',\n        'sourceReference.externalReferenceId',\n        'status'\n      ];\n      operators: '*';\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<\n  Invoice,\n  InvoiceQuerySpec\n>;\nexport type InvoiceQuery = {\n  /** \n  Cursor paging options.\n\n  Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).  \n  */\n  cursorPaging?: {\n    /** \n  Maximum number of items to return in the results. \n  @max: 100 \n  */\n    limit?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object.\n\n  Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).  \n  */\n  filter?: CommonQueryWithEntityContext['filter'] | null;\n  /** \n  Sort object.\n\n  Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section). \n  @maxSize: 5 \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n    /** \n  When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by\n  a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.\n\n  If multiple filters are provided, they are combined with AND operator.\n\n  Example:\n  Given we have document like {\"id\": \"1\", \"nestedField\": [{\"price\": 10, \"region\": \"EU\"}, {\"price\": 20, \"region\": \"US\"}]}\n  and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be\n  { fieldName: \"nestedField.price\", \"select_items_by\": [{\"nestedField.region\": \"US\"}] } \n  @internal: undefined,\n  @maxSize: 10 \n  */\n    selectItemsBy?:\n      | NonNullable<\n          CommonQueryWithEntityContext['sort']\n        >[number]['selectItemsBy']\n      | null;\n  }[];\n};\n\nexport const utils = {\n  query: /*#__PURE__*/ createQueryUtils<\n    Invoice,\n    InvoiceQuerySpec,\n    InvoiceQuery\n  >(),\n  search: /*#__PURE__*/ createSearchUtils<\n    Invoice,\n    InvoiceSearchSpec,\n    InvoiceSearch\n  >(),\n};\n\n/**\n * Retrieves a list of up to 100 invoices, given the provided filtering, search expression, sorting, and cursor paging.\n *\n *\n * Unlike [Query Invoices], Search Invoices supports free-text search across fields like `title`, `numbering.displayNumber`, and customer contact details. It also returns aggregation data.\n * @param search - Search options.\n * @public\n * @documentationMaturity preview\n * @requiredField search\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.SearchInvoices\n */\nexport async function searchInvoices(\n  search: InvoiceSearch\n): Promise<\n  NonNullablePaths<\n    SearchInvoicesResponse,\n    | `invoices`\n    | `invoices.${number}.status`\n    | `invoices.${number}.sourceReference.appId`\n    | `invoices.${number}.reference.standaloneReference.limitActions`\n    | `invoices.${number}.reference.orderReference.orderId`\n    | `invoices.${number}.reference.migratedReference.limitActions`\n    | `invoices.${number}.reference.autoChargeReference.limitActions`\n    | `invoices.${number}.reference.referenceType`\n    | `invoices.${number}.regionalProperties.locale.languageCode`\n    | `invoices.${number}.regionalProperties.language`\n    | `invoices.${number}.numbering.displayNumber`\n    | `invoices.${number}.currency`\n    | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n    | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n    | `invoices.${number}.deposit.fixedDeposit`\n    | `invoices.${number}.deposit.percentageDeposit`\n    | `invoices.${number}.deposit.depositType`\n    | `invoices.${number}.taxInfo.taxExempt`\n    | `invoices.${number}.totals.subtotal`\n    | `invoices.${number}.totals.total`\n    | `invoices.${number}.totals.paidAmount`\n    | `invoices.${number}.totals.balance`\n    | `invoices.${number}.archived`\n    | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n    | `invoices.${number}.presetProperties.invoicePreset.name`\n    | `invoices.${number}.presetProperties.invoicePreset.defaultPreset`\n    | `invoices.${number}.documentInfo.status`\n    | `invoices.${number}.links.relativePath`\n    | `invoices.${number}.businessLocation._id`\n    | `invoices.${number}.hasSubscriptions`\n    | `aggregationData.results`\n    | `aggregationData.results.${number}.scalar.type`\n    | `aggregationData.results.${number}.scalar.value`\n    | `aggregationData.results.${number}.name`\n    | `aggregationData.results.${number}.type`\n    | `aggregationData.results.${number}.fieldPath`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ search: search }, []);\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.searchInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoices.customerInfo.billingAddress' },\n            { path: 'invoices.shippingInfo.shippingAddress' },\n            { path: 'invoices.businessDetails.address' },\n            { path: 'invoices.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { search: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['search']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface InvoiceSearchSpec extends SearchSpec {\n  searchable: [\n    'customerInfo.contactDetails.company',\n    'customerInfo.contactDetails.email',\n    'customerInfo.contactDetails.firstName',\n    'customerInfo.contactDetails.fullName',\n    'customerInfo.contactDetails.lastName',\n    'numbering.displayNumber',\n    'title'\n  ];\n  aggregatable: [\n    '_createdDate',\n    '_id',\n    '_updatedDate',\n    'archived',\n    'currency',\n    'customerInfo.contactId',\n    'dueDate',\n    'hasSubscriptions',\n    'issueDate',\n    'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n    'lineItems.customItem.subscriptionInfo.billingSubscriptionId',\n    'numbering.displayNumber',\n    'numbering.number',\n    'numbering.prefix',\n    'numbering.suffix',\n    'reference.migratedReference.orderId',\n    'reference.orderReference.orderId',\n    'reference.referenceType',\n    'reference.standaloneReference.orderId',\n    'sourceReference.appId',\n    'sourceReference.externalReferenceId',\n    'status',\n    'statusQualifiers',\n    'tags.privateTags.tagIds',\n    'tags.publicTags.tagIds'\n  ];\n  paging: 'cursor';\n  wql: [\n    {\n      operators: ['$hasAll', '$hasSome'];\n      fields: [\n        'lineItems.catalogItem.subscriptionInfo.billingSubscriptionId',\n        'lineItems.customItem.subscriptionInfo.billingSubscriptionId',\n        'statusQualifiers',\n        'tags.privateTags.tagIds',\n        'tags.publicTags.tagIds'\n      ];\n      sort: 'BOTH';\n    },\n    {\n      operators: '*';\n      fields: [\n        '_createdDate',\n        '_id',\n        '_updatedDate',\n        'archived',\n        'currency',\n        'customerInfo.contactId',\n        'dueDate',\n        'hasSubscriptions',\n        'issueDate',\n        'numbering.displayNumber',\n        'numbering.number',\n        'numbering.prefix',\n        'numbering.suffix',\n        'reference.migratedReference.orderId',\n        'reference.orderReference.orderId',\n        'reference.referenceType',\n        'reference.standaloneReference.orderId',\n        'sourceReference.appId',\n        'sourceReference.externalReferenceId',\n        'status'\n      ];\n      sort: 'BOTH';\n    },\n    {\n      operators: [];\n      fields: ['customerInfo.contactDetails.firstName', 'totals.total'];\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonSearchWithEntityContext = SearchSdkType<\n  Invoice,\n  InvoiceSearchSpec\n>;\nexport type InvoiceSearch = {\n  /** \n  Cursor paging options.\n\n  Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).  \n  */\n  cursorPaging?: {\n    /** \n  Maximum number of items to return in the results. \n  @max: 100 \n  */\n    limit?:\n      | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object.\n\n  Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).  \n  */\n  filter?: CommonSearchWithEntityContext['filter'] | null;\n  /** \n  List of sort objects.\n\n  Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section). \n  @maxSize: 10 \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonSearchWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonSearchWithEntityContext['sort']>[number]['order'];\n    /** \n  When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by\n  a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.\n\n  If multiple filters are provided, they are combined with AND operator.\n\n  Example:\n  Given we have document like {\"id\": \"1\", \"nestedField\": [{\"price\": 10, \"region\": \"EU\"}, {\"price\": 20, \"region\": \"US\"}]}\n  and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be\n  { fieldName: \"nestedField.price\", \"select_items_by\": [{\"nestedField.region\": \"US\"}] } \n  @internal: undefined,\n  @maxSize: 10 \n  */\n    selectItemsBy?:\n      | NonNullable<\n          CommonSearchWithEntityContext['sort']\n        >[number]['selectItemsBy']\n      | null;\n  }[];\n  /** \n  Aggregations are a way to explore large amounts of data by displaying summaries about various partitions of the data and later allowing to narrow the navigation to a specific partition. \n  @maxSize: 10 \n  */\n  aggregations?: {\n    /** \n  Value aggregation.  \n  */\n    value?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['value'];\n    /** \n  Range aggregation.  \n  */\n    range?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['range'];\n    /** \n  Scalar aggregation.  \n  */\n    scalar?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['scalar'];\n    /** \n  Date histogram aggregation.  \n  */\n    dateHistogram?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['dateHistogram'];\n    /** \n  Nested aggregation.  \n  */\n    nested?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['nested'];\n    /** \n  User-defined name of aggregation, should be unique, will appear in aggregation results. \n  @maxLength: 100 \n  */\n    name?:\n      | NonNullable<\n          CommonSearchWithEntityContext['aggregations']\n        >[number]['name']\n      | null;\n    /** \n  Type of aggregation, client must provide matching aggregation field below.  \n  */\n    type?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['type'];\n    /** \n  Field to aggregate by, use dot notation to specify json path. \n  @maxLength: 200 \n  */\n    fieldPath?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['fieldPath'];\n    /** \n  Deprecated. Use `nested` instead. \n  @deprecated: Deprecated. Use `nested` instead.,\n  @replacedBy: kind.nested,\n  @targetRemovalDate: 2024-03-30 \n  */\n    groupBy?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['groupBy'];\n  }[];\n  /** \n  Free text to match in searchable fields.  \n  */\n  search?: {\n    /** \n  Defines how separate search terms in `expression` are combined.  \n  */\n    mode?: NonNullable<CommonSearchWithEntityContext['search']>['mode'];\n    /** \n  Search term or expression. \n  @maxLength: 100 \n  */\n    expression?:\n      | NonNullable<CommonSearchWithEntityContext['search']>['expression']\n      | null;\n    /** \n  Fields to search in. If empty - will search in all searchable fields. Use dot notation to specify json path. \n  @maxLength: 200,\n  @maxSize: 20 \n  */\n    fields?: NonNullable<CommonSearchWithEntityContext['search']>['fields'];\n    /** \n  Whether to use auto fuzzy search (allowing typos by a managed proximity algorithm).  \n  */\n    fuzzy?: NonNullable<CommonSearchWithEntityContext['search']>['fuzzy'];\n  };\n  /** \n  UTC offset or IANA time zone. Valid values are\n  ISO 8601 UTC offsets, such as +02:00 or -06:00,\n  and IANA time zone IDs, such as Europe/Rome.\n\n  Affects all filters and aggregations returned values.\n  You may override this behavior in a specific filter by providing\n  timestamps including time zone. For example, `\"2023-12-20T10:52:34.795Z\"`. \n  @maxLength: 50 \n  */\n  timeZone?: CommonSearchWithEntityContext['timeZone'] | null;\n};\n\n/**\n * Sends an invoice to one or more contacts.\n *\n *\n * Specify `contactIds` in the request to choose recipients. If `contactIds` isn't provided, the invoice is sent to the customer contact on the invoice.\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_SEND\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.SendInvoice\n */\nexport async function sendInvoice(\n  invoiceId: string,\n  options?: SendInvoiceOptions\n): Promise<\n  NonNullablePaths<\n    SendInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`\n    | `sendResults`\n    | `sendResults.${number}.contactId`\n    | `sendResults.${number}.success`\n    | `sendResults.${number}.errorType`,\n    8\n  > & {\n    __applicationErrorsType?: SendInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      invoiceId: invoiceId,\n      contactIds: options?.contactIds,\n      messageContent: options?.messageContent,\n    },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.sendInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoiceId: '$[0]',\n          contactIds: '$[1].contactIds',\n          messageContent: '$[1].messageContent',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface SendInvoiceOptions {\n  /**\n   * List of contact IDs to send the invoice to. If not provided, the invoice is sent to the customer contact.\n   * @format GUID\n   * @maxSize 5\n   */\n  contactIds?: string[];\n  /**\n   * Optional message included with the sent invoice.\n   * @maxLength 2500\n   */\n  messageContent?: string | null;\n}\n\n/**\n * Publishes an invoice.\n *\n *\n * Transitions the invoice status from `DRAFT` to `PUBLISHED`, finalizing it and assigning an invoice number. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PUBLISH\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.PublishInvoice\n */\nexport async function publishInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    PublishInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: PublishInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.publishInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Voids an invoice.\n *\n *\n * Transitions the invoice status to `VOIDED`, canceling it and making it no longer valid. Any payments made before voiding are preserved for the audit trail. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_VOID\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.VoidInvoice\n */\nexport async function voidInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    VoidInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: VoidInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.voidInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Archives an invoice.\n *\n *\n * Use archiving to filter and organize invoices. Archiving is available for all statuses except `DRAFT`.\n *\n * To remove an invoice from the archive, call [Unarchive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/unarchive-invoice).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_ARCHIVE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.ArchiveInvoice\n */\nexport async function archiveInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    ArchiveInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: ArchiveInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.archiveInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Unarchives an invoice.\n *\n *\n * Removes the invoice from the archived state. To archive an invoice, call [Archive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/archive-invoice).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_UNARCHIVE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.UnarchiveInvoice\n */\nexport async function unarchiveInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    UnarchiveInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: UnarchiveInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.unarchiveInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Initiates payment for an invoice.\n *\n *\n * Creates a Wix eCommerce order if one doesn't exist, generates a payment request, and returns a checkout URL for the customer.\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PAY\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.InitiatePayment\n */\nexport async function initiatePayment(invoiceId: string): Promise<\n  NonNullablePaths<InitiatePaymentResponse, `url` | `paymentRequestId`, 2> & {\n    __applicationErrorsType?: InitiatePaymentApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.initiatePayment(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Enables payments for an invoice.\n *\n *\n * Use this to record manual (offline) or MOTO (Mail Order/Telephone Order) payments against an invoice. Creates a Wix eCommerce order if one doesn't exist, which enables payment recording against the invoice. To generate a checkout URL for online payment instead, call [Initiate Payment](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/initiate-payment).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PAY\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.EnableInvoicePayments\n */\nexport async function enableInvoicePayments(invoiceId: string): Promise<\n  NonNullablePaths<EnableInvoicePaymentsResponse, `orderId`, 2> & {\n    __applicationErrorsType?: EnableInvoicePaymentsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.enableInvoicePayments(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Generates a PDF document for an invoice.\n *\n *\n * PDF generation is asynchronous. Poll the invoice using [Get Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/get-invoice) and check `documentInfo.status` until it's `AVAILABLE`, then use `documentInfo.downloadUrl` to access the file.\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_GENERATE_PDF_DOCUMENT\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.GeneratePdfDocument\n */\nexport async function generatePdfDocument(invoiceId: string): Promise<\n  NonNullablePaths<\n    GeneratePdfDocumentResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: GeneratePdfDocumentApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.generatePdfDocument(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Marks an invoice as viewed.\n *\n *\n * Adds the `VIEWED` status qualifier to the invoice and records the view timestamp in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_MARK_AS_VIEWED\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.MarkInvoiceAsViewed\n */\nexport async function markInvoiceAsViewed(\n  invoiceId: string\n): Promise<\n  NonNullablePaths<\n    MarkInvoiceAsViewedResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.markInvoiceAsViewed(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Marks an invoice as sent.\n *\n *\n * Adds the `SENT` status qualifier to the invoice and records the send timestamp and recipient in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n * @param invoiceId - Invoice ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_MARK_AS_SENT\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.MarkInvoiceAsSent\n */\nexport async function markInvoiceAsSent(\n  invoiceId: string\n): Promise<\n  NonNullablePaths<\n    MarkInvoiceAsSentResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.markInvoiceAsSent(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Calculates totals, taxes, and available shipping options for a standalone invoice. Supports both custom and catalog line items.\n *\n *\n * Use this method before creating or updating an invoice to preview calculated values. Pass the returned `correlationId` in subsequent calculations to optimize incremental recalculations.\n * @param invoice - Invoice to calculate.\n * @public\n * @documentationMaturity preview\n * @requiredField invoice\n * @requiredField invoice.reference\n * @requiredField invoice.reference.referenceOptions\n * @requiredField invoice.reference.referenceType\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.CalculateInvoice\n */\nexport async function calculateInvoice(\n  invoice: NonNullablePaths<\n    Invoice,\n    `reference` | `reference.referenceType`,\n    3\n  >,\n  options?: CalculateInvoiceOptions\n): Promise<\n  NonNullablePaths<\n    CalculateInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.migratedReference.limitActions`\n    | `invoice.reference.autoChargeReference.limitActions`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.lineItemType`\n    | `invoice.shipmentInfo.logistics.pickupDetails.pickupMethod`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.discounts.${number}.appliedAmount`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.payments.${number}.cashRounding.roundingAmount`\n    | `invoice.payments.${number}.cashRounding.unroundedAmount`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.customFields.headerPlaceholders.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerPlaceholders`\n    | `invoice.presetProperties.invoicePreset.defaultPreset`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.activityInfo.sentToContactIds`\n    | `invoice.hasSubscriptions`\n    | `invoice.tags.privateTags.tagIds`\n    | `shipmentOptions`\n    | `shipmentOptions.${number}.logistics.pickupDetails.pickupMethod`\n    | `calculationErrors.generalShippingCalculationError.applicationError.code`\n    | `calculationErrors.generalShippingCalculationError.applicationError.description`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.field`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.description`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.violatedRule`\n    | `calculationErrors.carrierErrors.errors`\n    | `calculationErrors.carrierErrors.errors.${number}.carrierId`\n    | `correlationId`,\n    8\n  > & {\n    __applicationErrorsType?: CalculateInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoice: invoice, correlationId: options?.correlationId },\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n          { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.calculateInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n            { path: 'invoice.shipmentInfo.logistics.pickupDetails.address' },\n            { path: 'shipmentOptions.logistics.pickupDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoice: '$[0]',\n          correlationId: '$[1].correlationId',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoice', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface CalculateInvoiceOptions {\n  /**\n   * Correlation ID from a previous calculation. Pass this to optimize incremental recalculations.\n   * @format GUID\n   */\n  correlationId?: string | null;\n}\n\n/**\n * Retrieves the highest invoice number currently in use.\n *\n *\n * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n * @public\n * @documentationMaturity preview\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.GetLatestInvoiceNumber\n */\nexport async function getLatestInvoiceNumber(\n  options?: GetLatestInvoiceNumberOptions\n): Promise<GetLatestInvoiceNumberResponse> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { prefix: options?.prefix },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.getLatestInvoiceNumber(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { prefix: '$[0].prefix' },\n        singleArgumentUnchanged: false,\n      },\n      ['options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface GetLatestInvoiceNumberOptions {\n  /**\n   * Invoice number prefix to filter by.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n}\n\n/**\n * Generates a receipt document for a specific payment on an invoice. Requires the `paymentId` of a confirmed payment on the invoice.\n * @param invoiceId - Invoice ID.\n * @param paymentId - Payment ID.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @requiredField paymentId\n * @permissionId INVOICES.INVOICE_GENERATE_RECEIPT\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.GenerateReceipt\n */\nexport async function generateReceipt(\n  invoiceId: string,\n  paymentId: string\n): Promise<NonNullablePaths<GenerateReceiptResponse, `receiptId`, 2>> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId, paymentId: paymentId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.generateReceipt(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]', paymentId: '$[1]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId', 'paymentId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Creates multiple invoices.\n *\n *\n * To create a single invoice, call [Create Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/create-invoice).\n * @param invoices - Invoices to create.\n * @public\n * @documentationMaturity preview\n * @requiredField invoices\n * @requiredField invoices.currency\n * @requiredField invoices.customerInfo\n * @requiredField invoices.customerInfo.contactId\n * @requiredField invoices.issueDate\n * @requiredField invoices.lineItems\n * @requiredField invoices.lineItems.lineItemOptions.catalogItem.catalogReference\n * @requiredField invoices.lineItems.lineItemOptions.catalogItem.catalogReference.appId\n * @requiredField invoices.lineItems.lineItemOptions.catalogItem.catalogReference.catalogItemId\n * @requiredField invoices.lineItems.lineItemOptions.customItem.name\n * @requiredField invoices.lineItems.lineItemOptions.customItem.price\n * @requiredField invoices.lineItems.lineItemOptions.customItem.quantity\n * @requiredField invoices.lineItems.lineItemType\n * @requiredField invoices.reference\n * @requiredField invoices.reference.referenceOptions\n * @requiredField invoices.reference.referenceOptions.orderReference.orderId\n * @requiredField invoices.shipmentInfo.code\n * @requiredField invoices.shippingInfo.contactDetails\n * @requiredField invoices.shippingInfo.shippingAddress\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkCreateInvoices\n */\nexport async function bulkCreateInvoices(\n  invoices: NonNullablePaths<\n    Invoice,\n    | `currency`\n    | `customerInfo`\n    | `customerInfo.contactId`\n    | `issueDate`\n    | `lineItems`\n    | `lineItems.${number}.catalogItem.catalogReference`\n    | `lineItems.${number}.catalogItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.name`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.lineItemType`\n    | `reference`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `shipmentInfo.code`\n    | `shipmentInfo.price`\n    | `shippingInfo.contactDetails`\n    | `shippingInfo.contactDetails.email`\n    | `shippingInfo.shippingAddress`,\n    6\n  >[],\n  options?: BulkCreateInvoicesOptions\n): Promise<\n  NonNullablePaths<\n    BulkCreateInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.status`\n    | `results.${number}.item.sourceReference.appId`\n    | `results.${number}.item.reference.referenceType`\n    | `results.${number}.item.regionalProperties.language`\n    | `results.${number}.item.numbering.displayNumber`\n    | `results.${number}.item.currency`\n    | `results.${number}.item.deposit.fixedDeposit`\n    | `results.${number}.item.deposit.percentageDeposit`\n    | `results.${number}.item.deposit.depositType`\n    | `results.${number}.item.taxInfo.taxExempt`\n    | `results.${number}.item.totals.subtotal`\n    | `results.${number}.item.totals.total`\n    | `results.${number}.item.totals.paidAmount`\n    | `results.${number}.item.totals.balance`\n    | `results.${number}.item.archived`\n    | `results.${number}.item.documentInfo.status`\n    | `results.${number}.item.links.relativePath`\n    | `results.${number}.item.businessLocation._id`\n    | `results.${number}.item.hasSubscriptions`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkCreateInvoicesApplicationErrors;\n    __validationErrorsType?: BulkCreateInvoicesValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoices: invoices, returnEntity: options?.returnEntity },\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoices.customerInfo.billingAddress' },\n          { path: 'invoices.shippingInfo.shippingAddress' },\n          { path: 'invoices.businessDetails.address' },\n          { path: 'invoices.shipmentInfo.logistics.pickupDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkCreateInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'results.item.customerInfo.billingAddress' },\n            { path: 'results.item.shippingInfo.shippingAddress' },\n            { path: 'results.item.businessDetails.address' },\n            {\n              path: 'results.item.shipmentInfo.logistics.pickupDetails.address',\n            },\n          ],\n        },\n      ]),\n      [\n        'results.item.customFields.footerCustomField.content',\n        'results.item.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoices: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoices', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkCreateInvoicesOptions {\n  /** Whether to return the created entities in the response. */\n  returnEntity?: boolean;\n}\n\n/**\n * Updates multiple invoices.\n *\n *\n * To update a single invoice, call [Update Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/update-invoice).\n * @param invoices - Invoices to update.\n * @public\n * @documentationMaturity preview\n * @requiredField invoices\n * @requiredField invoices.invoice\n * @requiredField invoices.invoice._id\n * @requiredField invoices.invoice.lineItems.lineItemOptions.customItem.name\n * @requiredField invoices.invoice.revision\n * @permissionId INVOICES.INVOICE_UPDATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoices\n */\nexport async function bulkUpdateInvoices(\n  invoices: NonNullablePaths<\n    MaskedInvoice,\n    | `invoice`\n    | `invoice._id`\n    | `invoice.lineItems.${number}.customItem.name`\n    | `invoice.revision`,\n    6\n  >[],\n  options?: BulkUpdateInvoicesOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.status`\n    | `results.${number}.item.sourceReference.appId`\n    | `results.${number}.item.reference.referenceType`\n    | `results.${number}.item.regionalProperties.language`\n    | `results.${number}.item.numbering.displayNumber`\n    | `results.${number}.item.currency`\n    | `results.${number}.item.deposit.fixedDeposit`\n    | `results.${number}.item.deposit.percentageDeposit`\n    | `results.${number}.item.deposit.depositType`\n    | `results.${number}.item.taxInfo.taxExempt`\n    | `results.${number}.item.totals.subtotal`\n    | `results.${number}.item.totals.total`\n    | `results.${number}.item.totals.paidAmount`\n    | `results.${number}.item.totals.balance`\n    | `results.${number}.item.archived`\n    | `results.${number}.item.documentInfo.status`\n    | `results.${number}.item.links.relativePath`\n    | `results.${number}.item.businessLocation._id`\n    | `results.${number}.item.hasSubscriptions`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkUpdateInvoicesApplicationErrors;\n    __validationErrorsType?: BulkUpdateInvoicesValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoices: invoices, returnEntity: options?.returnEntity },\n      [\n        'invoices.invoice.customFields.footerCustomField.content',\n        'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoices.invoice.customerInfo.billingAddress' },\n          { path: 'invoices.invoice.shippingInfo.shippingAddress' },\n          { path: 'invoices.invoice.businessDetails.address' },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.pickupDetails.address',\n          },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'results.item.customerInfo.billingAddress' },\n            { path: 'results.item.shippingInfo.shippingAddress' },\n            { path: 'results.item.businessDetails.address' },\n            {\n              path: 'results.item.shipmentInfo.logistics.pickupDetails.address',\n            },\n          ],\n        },\n      ]),\n      [\n        'results.item.customFields.footerCustomField.content',\n        'results.item.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoices: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoices', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoicesOptions {\n  /** Whether to return the updated entities in the response. */\n  returnEntity?: boolean;\n}\n\n/**\n * Deletes multiple invoices.\n *\n *\n * To delete a single invoice, call [Delete Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/delete-invoice).\n * @param invoiceIds - IDs of invoices to delete.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceIds\n * @permissionId INVOICES.INVOICE_DELETE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkDeleteInvoices\n */\nexport async function bulkDeleteInvoices(\n  invoiceIds: string[]\n): Promise<\n  NonNullablePaths<\n    BulkDeleteInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceIds: invoiceIds },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkDeleteInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceIds: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceIds']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Adds or removes tags on multiple invoices. Tags are labels used to organize and filter invoices — they can be public (visible to anyone with access to the invoice) or private (restricted to site owners).\n *\n * Unlike [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices), which replaces fields entirely, this method lets you specify individual tags to assign or unassign without affecting other existing tags. A tag that appears in both the list to assign and the list to unassign is assigned. Tags that don't exist are ignored.\n *\n * To update tags on all invoices matching a filter, call [Bulk Update Invoice Tags By Filter](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags-by-filter).\n * @param invoiceIds - IDs of invoices to update tags for.\n * @public\n * @documentationMaturity preview\n * @requiredField invoiceIds\n * @permissionId INVOICES.INVOICE_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTags\n */\nexport async function bulkUpdateInvoiceTags(\n  invoiceIds: string[],\n  options?: BulkUpdateInvoiceTagsOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateInvoiceTagsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkUpdateInvoiceTagsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      invoiceIds: invoiceIds,\n      assignTags: options?.assignTags,\n      unassignTags: options?.unassignTags,\n    },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoiceTags(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoiceIds: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceIds', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoiceTagsOptions {\n  /** Tags to assign. */\n  assignTags?: Tags;\n  /** Tags to unassign. */\n  unassignTags?: Tags;\n}\n\n/**\n * Asynchronously updates tags on multiple invoices that match the provided filter criteria.\n *\n *\n * To check the status of the bulk update, pass the returned `jobId` to [Get Async Job](https://dev.wix.com/docs/api-reference/business-management/async-job/get-async-job).\n *\n * To update tags on specific invoices by ID, call [Bulk Update Invoice Tags](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags).\n * @param filter - Filter for selecting invoices to update.\n * @public\n * @documentationMaturity preview\n * @requiredField filter\n * @permissionId INVOICES.INVOICE_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTagsByFilter\n */\nexport async function bulkUpdateInvoiceTagsByFilter(\n  filter: Record<string, any>,\n  options?: BulkUpdateInvoiceTagsByFilterOptions\n): Promise<\n  NonNullablePaths<BulkUpdateInvoiceTagsByFilterResponse, `jobId`, 2> & {\n    __applicationErrorsType?: BulkUpdateInvoiceTagsByFilterApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      filter: filter,\n      assignTags: options?.assignTags,\n      unassignTags: options?.unassignTags,\n    },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoiceTagsByFilter(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          filter: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['filter', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterOptions {\n  /** Tags to assign. */\n  assignTags?: Tags;\n  /** Tags to unassign. */\n  unassignTags?: Tags;\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixInvoicesInvoicesV4InvoicesUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'www.wixapis.com': [\n      {\n        srcPath: '/invoices/v4/invoices',\n        destPath: '/v4/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/bulk/invoices',\n        destPath: '/v4/bulk/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/invoices-downloads',\n        destPath: '/v4/invoices-downloads',\n      },\n    ],\n    _: [\n      {\n        srcPath: '/invoices/v4/invoices',\n        destPath: '/v4/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/bulk/invoices',\n        destPath: '/v4/bulk/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/invoices-downloads',\n        destPath: '/v4/invoices-downloads',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/invoices/v4/invoices',\n        destPath: '/v4/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/bulk/invoices',\n        destPath: '/v4/bulk/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/invoices-downloads',\n        destPath: '/v4/invoices-downloads',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/invoices-server/v4/invoices',\n        destPath: '/v4/invoices',\n      },\n      {\n        srcPath: '/_api/invoices-server/v4/bulk/invoices',\n        destPath: '/v4/bulk/invoices',\n      },\n      {\n        srcPath: '/_api/invoices-server/v4/invoices-downloads',\n        destPath: '/v4/invoices-downloads',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_get-paid_invoices';\n\n/**\n * Creates an invoice.\n *\n *\n * To create multiple invoices in a single API call, call [Bulk Create Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-create-invoices).\n */\nexport function createInvoice(payload: object): RequestOptionsFactory<any> {\n  function __createInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.lineItems.customItem.subscriptionInfo.startDate' },\n          { path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n          { path: 'invoice.activityInfo.lastSentDate' },\n          { path: 'invoice.activityInfo.lastViewedDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n          },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.CreateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __createInvoice;\n}\n\n/** Retrieves an invoice. */\nexport function getInvoice(payload: object): RequestOptionsFactory<any> {\n  function __getInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GetInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __getInvoice;\n}\n\n/**\n * Updates an invoice.\n *\n *\n * To update multiple invoices in a single API call, call [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices).\n */\nexport function updateInvoice(payload: object): RequestOptionsFactory<any> {\n  function __updateInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.lineItems.customItem.subscriptionInfo.startDate' },\n          { path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n          { path: 'invoice.activityInfo.lastSentDate' },\n          { path: 'invoice.activityInfo.lastViewedDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n          },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'PATCH' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.UpdateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoice.id}',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __updateInvoice;\n}\n\n/**\n * Deletes an invoice.\n *\n *\n * Deleting an invoice permanently removes it from the invoice list. Only invoices in `DRAFT` status can be deleted.\n *\n * To delete multiple invoices in a single API call, call [Bulk Delete Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-delete-invoices).\n */\nexport function deleteInvoice(payload: object): RequestOptionsFactory<any> {\n  function __deleteInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'DELETE' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.DeleteInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __deleteInvoice;\n}\n\n/**\n * Retrieves a list of up to 1,000 invoices, given the provided paging, filtering, and sorting.\n *\n *\n * Query Invoices runs with these defaults, which you can override:\n *\n * - `createdDate` is sorted in `DESC` order\n * - `paging.limit` is `50`\n * - `paging.offset` is `0`\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n */\nexport function queryInvoices(payload: object): RequestOptionsFactory<any> {\n  function __queryInvoices({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.QueryInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/query',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload, true),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoices.createdDate' },\n              { path: 'invoices.updatedDate' },\n              { path: 'invoices.issueDate' },\n              { path: 'invoices.dueDate' },\n              {\n                path: 'invoices.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoices.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoices.payments.createdDate' },\n              { path: 'invoices.payments.updatedDate' },\n              { path: 'invoices.payments.paymentDate' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.documentInfo.documentExpirationDate' },\n              { path: 'invoices.activityInfo.lastSentDate' },\n              { path: 'invoices.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n              {\n                path: 'invoices.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoices.businessDetails.address.geocode.latitude' },\n              { path: 'invoices.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n      fallback: [\n        {\n          method: 'POST' as any,\n          url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n            protoPath: '/v4/invoices/query',\n            data: payload,\n            host,\n          }),\n          data: payload,\n        },\n      ],\n    };\n\n    return metadata;\n  }\n\n  return __queryInvoices;\n}\n\n/**\n * Retrieves a list of up to 100 invoices, given the provided filtering, search expression, sorting, and cursor paging.\n *\n *\n * Unlike [Query Invoices], Search Invoices supports free-text search across fields like `title`, `numbering.displayNumber`, and customer contact details. It also returns aggregation data.\n */\nexport function searchInvoices(payload: object): RequestOptionsFactory<any> {\n  function __searchInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'search.aggregations.range.buckets.from' },\n          { path: 'search.aggregations.range.buckets.to' },\n          {\n            path: 'search.aggregations.nested.nestedAggregations.range.buckets.from',\n          },\n          {\n            path: 'search.aggregations.nested.nestedAggregations.range.buckets.to',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.SearchInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/search',\n        data: serializedData,\n        host,\n      }),\n      params: toURLSearchParams(serializedData, true),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoices.createdDate' },\n              { path: 'invoices.updatedDate' },\n              { path: 'invoices.issueDate' },\n              { path: 'invoices.dueDate' },\n              {\n                path: 'invoices.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoices.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoices.payments.createdDate' },\n              { path: 'invoices.payments.updatedDate' },\n              { path: 'invoices.payments.paymentDate' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.documentInfo.documentExpirationDate' },\n              { path: 'invoices.activityInfo.lastSentDate' },\n              { path: 'invoices.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n              {\n                path: 'invoices.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoices.businessDetails.address.geocode.latitude' },\n              { path: 'invoices.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n              { path: 'aggregationData.results.ranges.results.from' },\n              { path: 'aggregationData.results.ranges.results.to' },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.from',\n              },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.to',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.range.from',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.range.to',\n              },\n              { path: 'aggregationData.results.scalar.value' },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.scalar.value',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.scalar.value',\n              },\n            ],\n          },\n        ]),\n      fallback: [\n        {\n          method: 'POST' as any,\n          url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n            protoPath: '/v4/invoices/search',\n            data: serializedData,\n            host,\n          }),\n          data: serializedData,\n        },\n      ],\n    };\n\n    return metadata;\n  }\n\n  return __searchInvoices;\n}\n\n/**\n * Sends an invoice to one or more contacts.\n *\n *\n * Specify `contactIds` in the request to choose recipients. If `contactIds` isn't provided, the invoice is sent to the customer contact on the invoice.\n */\nexport function sendInvoice(payload: object): RequestOptionsFactory<any> {\n  function __sendInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.SendInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/send',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __sendInvoice;\n}\n\n/**\n * Publishes an invoice.\n *\n *\n * Transitions the invoice status from `DRAFT` to `PUBLISHED`, finalizing it and assigning an invoice number. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n */\nexport function publishInvoice(payload: object): RequestOptionsFactory<any> {\n  function __publishInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.PublishInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/publish',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __publishInvoice;\n}\n\n/**\n * Voids an invoice.\n *\n *\n * Transitions the invoice status to `VOIDED`, canceling it and making it no longer valid. Any payments made before voiding are preserved for the audit trail. For details on status transitions, see [Invoice Lifecycle](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/standalone-invoice-payment-lifecycle).\n */\nexport function voidInvoice(payload: object): RequestOptionsFactory<any> {\n  function __voidInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.VoidInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/void',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __voidInvoice;\n}\n\n/**\n * Archives an invoice.\n *\n *\n * Use archiving to filter and organize invoices. Archiving is available for all statuses except `DRAFT`.\n *\n * To remove an invoice from the archive, call [Unarchive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/unarchive-invoice).\n */\nexport function archiveInvoice(payload: object): RequestOptionsFactory<any> {\n  function __archiveInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.ArchiveInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/archive',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __archiveInvoice;\n}\n\n/**\n * Unarchives an invoice.\n *\n *\n * Removes the invoice from the archived state. To archive an invoice, call [Archive Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/archive-invoice).\n */\nexport function unarchiveInvoice(payload: object): RequestOptionsFactory<any> {\n  function __unarchiveInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.UnarchiveInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/unarchive',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __unarchiveInvoice;\n}\n\n/**\n * Initiates payment for an invoice.\n *\n *\n * Creates a Wix eCommerce order if one doesn't exist, generates a payment request, and returns a checkout URL for the customer.\n */\nexport function initiatePayment(payload: object): RequestOptionsFactory<any> {\n  function __initiatePayment({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.InitiatePayment',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/initiate-payment',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __initiatePayment;\n}\n\n/**\n * Enables payments for an invoice.\n *\n *\n * Use this to record manual (offline) or MOTO (Mail Order/Telephone Order) payments against an invoice. Creates a Wix eCommerce order if one doesn't exist, which enables payment recording against the invoice. To generate a checkout URL for online payment instead, call [Initiate Payment](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/initiate-payment).\n */\nexport function enableInvoicePayments(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __enableInvoicePayments({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.EnableInvoicePayments',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/enable-payments',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __enableInvoicePayments;\n}\n\n/**\n * Generates a PDF document for an invoice.\n *\n *\n * PDF generation is asynchronous. Poll the invoice using [Get Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/get-invoice) and check `documentInfo.status` until it's `AVAILABLE`, then use `documentInfo.downloadUrl` to access the file.\n */\nexport function generatePdfDocument(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __generatePdfDocument({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GeneratePdfDocument',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/generate-pdf-document',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __generatePdfDocument;\n}\n\n/**\n * Marks an invoice as viewed.\n *\n *\n * Adds the `VIEWED` status qualifier to the invoice and records the view timestamp in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n */\nexport function markInvoiceAsViewed(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __markInvoiceAsViewed({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.MarkInvoiceAsViewed',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/mark-as-viewed',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __markInvoiceAsViewed;\n}\n\n/**\n * Marks an invoice as sent.\n *\n *\n * Adds the `SENT` status qualifier to the invoice and records the send timestamp and recipient in `activityInfo`. For details, see [Status Qualifiers](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/status-qualifiers).\n */\nexport function markInvoiceAsSent(payload: object): RequestOptionsFactory<any> {\n  function __markInvoiceAsSent({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.MarkInvoiceAsSent',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/mark-as-sent',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __markInvoiceAsSent;\n}\n\n/**\n * Calculates totals, taxes, and available shipping options for a standalone invoice. Supports both custom and catalog line items.\n *\n *\n * Use this method before creating or updating an invoice to preview calculated values. Pass the returned `correlationId` in subsequent calculations to optimize incremental recalculations.\n */\nexport function calculateInvoice(payload: object): RequestOptionsFactory<any> {\n  function __calculateInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.lineItems.customItem.subscriptionInfo.startDate' },\n          { path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n          { path: 'invoice.activityInfo.lastSentDate' },\n          { path: 'invoice.activityInfo.lastViewedDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n          },\n          {\n            path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.CalculateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/calculate-invoice',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              {\n                path: 'invoice.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'invoice.activityInfo.lastSentDate' },\n              { path: 'invoice.activityInfo.lastViewedDate' },\n              { path: 'shipmentOptions.logistics.deliveryTimeSlot.from' },\n              { path: 'shipmentOptions.logistics.deliveryTimeSlot.to' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'shipmentOptions.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'shipmentOptions.logistics.pickupDetails.address.geocode.longitude',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __calculateInvoice;\n}\n\n/**\n * Retrieves the highest invoice number currently in use.\n *\n *\n * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n */\nexport function getLatestInvoiceNumber(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __getLatestInvoiceNumber({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GetLatestInvoiceNumber',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/get-latest-number',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __getLatestInvoiceNumber;\n}\n\n/** Generates a receipt document for a specific payment on an invoice. Requires the `paymentId` of a confirmed payment on the invoice. */\nexport function generateReceipt(payload: object): RequestOptionsFactory<any> {\n  function __generateReceipt({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GenerateReceipt',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/generate-receipt',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __generateReceipt;\n}\n\n/**\n * Creates multiple invoices.\n *\n *\n * To create a single invoice, call [Create Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/create-invoice).\n */\nexport function bulkCreateInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkCreateInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoices.createdDate' },\n          { path: 'invoices.updatedDate' },\n          { path: 'invoices.issueDate' },\n          { path: 'invoices.dueDate' },\n          { path: 'invoices.lineItems.customItem.subscriptionInfo.startDate' },\n          { path: 'invoices.lineItems.catalogItem.subscriptionInfo.startDate' },\n          { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoices.payments.createdDate' },\n          { path: 'invoices.payments.updatedDate' },\n          { path: 'invoices.payments.paymentDate' },\n          {\n            path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.documentInfo.documentExpirationDate' },\n          { path: 'invoices.activityInfo.lastSentDate' },\n          { path: 'invoices.activityInfo.lastViewedDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoices.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoices.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoices.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoices.businessDetails.address.geocode.latitude' },\n          { path: 'invoices.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n          },\n          {\n            path: 'invoices.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkCreateInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/create',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.item.createdDate' },\n              { path: 'results.item.updatedDate' },\n              { path: 'results.item.issueDate' },\n              { path: 'results.item.dueDate' },\n              {\n                path: 'results.item.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'results.item.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.from',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.to',\n              },\n              { path: 'results.item.payments.createdDate' },\n              { path: 'results.item.payments.updatedDate' },\n              { path: 'results.item.payments.paymentDate' },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.createdDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.updatedDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'results.item.documentInfo.documentExpirationDate' },\n              { path: 'results.item.activityInfo.lastSentDate' },\n              { path: 'results.item.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'results.item.businessDetails.address.geocode.latitude' },\n              {\n                path: 'results.item.businessDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkCreateInvoices;\n}\n\n/**\n * Updates multiple invoices.\n *\n *\n * To update a single invoice, call [Update Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/update-invoice).\n */\nexport function bulkUpdateInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'invoices.fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoices.invoice.createdDate' },\n          { path: 'invoices.invoice.updatedDate' },\n          { path: 'invoices.invoice.issueDate' },\n          { path: 'invoices.invoice.dueDate' },\n          {\n            path: 'invoices.invoice.lineItems.customItem.subscriptionInfo.startDate',\n          },\n          {\n            path: 'invoices.invoice.lineItems.catalogItem.subscriptionInfo.startDate',\n          },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.deliveryTimeSlot.from',\n          },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.deliveryTimeSlot.to',\n          },\n          { path: 'invoices.invoice.payments.createdDate' },\n          { path: 'invoices.invoice.payments.updatedDate' },\n          { path: 'invoices.invoice.payments.paymentDate' },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.createdDate',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.updatedDate',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.invoice.documentInfo.documentExpirationDate' },\n          { path: 'invoices.invoice.activityInfo.lastSentDate' },\n          { path: 'invoices.invoice.activityInfo.lastViewedDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          {\n            path: 'invoices.invoice.customerInfo.billingAddress.geocode.latitude',\n          },\n          {\n            path: 'invoices.invoice.customerInfo.billingAddress.geocode.longitude',\n          },\n          {\n            path: 'invoices.invoice.shippingInfo.shippingAddress.geocode.latitude',\n          },\n          {\n            path: 'invoices.invoice.shippingInfo.shippingAddress.geocode.longitude',\n          },\n          { path: 'invoices.invoice.businessDetails.address.geocode.latitude' },\n          {\n            path: 'invoices.invoice.businessDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n          },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.item.createdDate' },\n              { path: 'results.item.updatedDate' },\n              { path: 'results.item.issueDate' },\n              { path: 'results.item.dueDate' },\n              {\n                path: 'results.item.lineItems.customItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'results.item.lineItems.catalogItem.subscriptionInfo.startDate',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.from',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.to',\n              },\n              { path: 'results.item.payments.createdDate' },\n              { path: 'results.item.payments.updatedDate' },\n              { path: 'results.item.payments.paymentDate' },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.createdDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.updatedDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'results.item.documentInfo.documentExpirationDate' },\n              { path: 'results.item.activityInfo.lastSentDate' },\n              { path: 'results.item.activityInfo.lastViewedDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'results.item.businessDetails.address.geocode.latitude' },\n              {\n                path: 'results.item.businessDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.pickupDetails.address.geocode.latitude',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.pickupDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.x',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.y',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.width',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.crop.height',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.tocData.fontSize',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.smartBlockCellData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.buttonData.styles.backgroundHover.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.x',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.y',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.width',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.crop.height',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdrop.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.background.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerX',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.centerY',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.cardData.backgroundImage.overlay.gradient.stops.position',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.fontSize',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.tocData.itemSpacing',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.smartBlockCellData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoices;\n}\n\n/**\n * Deletes multiple invoices.\n *\n *\n * To delete a single invoice, call [Delete Invoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/delete-invoice).\n */\nexport function bulkDeleteInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkDeleteInvoices({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkDeleteInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/delete',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkDeleteInvoices;\n}\n\n/**\n * Adds or removes tags on multiple invoices. Tags are labels used to organize and filter invoices — they can be public (visible to anyone with access to the invoice) or private (restricted to site owners).\n *\n * Unlike [Bulk Update Invoices](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoices), which replaces fields entirely, this method lets you specify individual tags to assign or unassign without affecting other existing tags. A tag that appears in both the list to assign and the list to unassign is assigned. Tags that don't exist are ignored.\n *\n * To update tags on all invoices matching a filter, call [Bulk Update Invoice Tags By Filter](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags-by-filter).\n */\nexport function bulkUpdateInvoiceTags(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoiceTags({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTags',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update-tags',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoiceTags;\n}\n\n/**\n * Asynchronously updates tags on multiple invoices that match the provided filter criteria.\n *\n *\n * To check the status of the bulk update, pass the returned `jobId` to [Get Async Job](https://dev.wix.com/docs/api-reference/business-management/async-job/get-async-job).\n *\n * To update tags on specific invoices by ID, call [Bulk Update Invoice Tags](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/bulk-update-invoice-tags).\n */\nexport function bulkUpdateInvoiceTagsByFilter(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoiceTagsByFilter({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTagsByFilter',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update-tags-by-filter',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoiceTagsByFilter;\n}\n","import {\n  createInvoice as publicCreateInvoice,\n  getInvoice as publicGetInvoice,\n  updateInvoice as publicUpdateInvoice,\n  deleteInvoice as publicDeleteInvoice,\n  queryInvoices as publicQueryInvoices,\n  typedQueryInvoices as publicTypedQueryInvoices,\n  searchInvoices as publicSearchInvoices,\n  sendInvoice as publicSendInvoice,\n  publishInvoice as publicPublishInvoice,\n  voidInvoice as publicVoidInvoice,\n  archiveInvoice as publicArchiveInvoice,\n  unarchiveInvoice as publicUnarchiveInvoice,\n  initiatePayment as publicInitiatePayment,\n  enableInvoicePayments as publicEnableInvoicePayments,\n  generatePdfDocument as publicGeneratePdfDocument,\n  markInvoiceAsViewed as publicMarkInvoiceAsViewed,\n  markInvoiceAsSent as publicMarkInvoiceAsSent,\n  calculateInvoice as publicCalculateInvoice,\n  getLatestInvoiceNumber as publicGetLatestInvoiceNumber,\n  generateReceipt as publicGenerateReceipt,\n  bulkCreateInvoices as publicBulkCreateInvoices,\n  bulkUpdateInvoices as publicBulkUpdateInvoices,\n  bulkDeleteInvoices as publicBulkDeleteInvoices,\n  bulkUpdateInvoiceTags as publicBulkUpdateInvoiceTags,\n  bulkUpdateInvoiceTagsByFilter as publicBulkUpdateInvoiceTagsByFilter,\n} from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n  BuildRESTFunction,\n  MaybeContext,\n  BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n  InvoiceQuery,\n  InvoicesQueryBuilder,\n  typedQueryInvoices as universalTypedQueryInvoices,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\nimport { onInvoiceCreated as publicOnInvoiceCreated } from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { onInvoiceDeleted as publicOnInvoiceDeleted } from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { onInvoiceSent as publicOnInvoiceSent } from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { onInvoiceTagsModified as publicOnInvoiceTagsModified } from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { onInvoiceUpdated as publicOnInvoiceUpdated } from './invoices-invoices-v4-invoice-invoices.public.js';\n\nfunction customQueryInvoices(httpClient: HttpClient) {\n  const router = /*#__PURE__*/ createQueryOverloadRouter({\n    builderQueryFunction: () => publicQueryInvoices(httpClient)(),\n    typedQueryFunction: (query: InvoiceQuery) =>\n      publicTypedQueryInvoices(httpClient)(query),\n    hasOptionsParameter: false,\n  });\n\n  function overloadedQuery(): InvoicesQueryBuilder;\n  function overloadedQuery(\n    query: InvoiceQuery\n  ): ReturnType<typeof universalTypedQueryInvoices>;\n  function overloadedQuery(query?: InvoiceQuery): any {\n    return router(...arguments);\n  }\n\n  return overloadedQuery;\n}\n\nexport const createInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicCreateInvoice> & typeof publicCreateInvoice\n> = /*#__PURE__*/ createRESTModule(publicCreateInvoice);\nexport const getInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicGetInvoice> & typeof publicGetInvoice\n> = /*#__PURE__*/ createRESTModule(publicGetInvoice);\nexport const updateInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicUpdateInvoice> & typeof publicUpdateInvoice\n> = /*#__PURE__*/ createRESTModule(publicUpdateInvoice);\nexport const deleteInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicDeleteInvoice> & typeof publicDeleteInvoice\n> = /*#__PURE__*/ createRESTModule(publicDeleteInvoice);\nexport const searchInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicSearchInvoices> & typeof publicSearchInvoices\n> = /*#__PURE__*/ createRESTModule(publicSearchInvoices);\nexport const sendInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicSendInvoice> & typeof publicSendInvoice\n> = /*#__PURE__*/ createRESTModule(publicSendInvoice);\nexport const publishInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicPublishInvoice> & typeof publicPublishInvoice\n> = /*#__PURE__*/ createRESTModule(publicPublishInvoice);\nexport const voidInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicVoidInvoice> & typeof publicVoidInvoice\n> = /*#__PURE__*/ createRESTModule(publicVoidInvoice);\nexport const archiveInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicArchiveInvoice> & typeof publicArchiveInvoice\n> = /*#__PURE__*/ createRESTModule(publicArchiveInvoice);\nexport const unarchiveInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicUnarchiveInvoice> &\n    typeof publicUnarchiveInvoice\n> = /*#__PURE__*/ createRESTModule(publicUnarchiveInvoice);\nexport const initiatePayment: MaybeContext<\n  BuildRESTFunction<typeof publicInitiatePayment> & typeof publicInitiatePayment\n> = /*#__PURE__*/ createRESTModule(publicInitiatePayment);\nexport const enableInvoicePayments: MaybeContext<\n  BuildRESTFunction<typeof publicEnableInvoicePayments> &\n    typeof publicEnableInvoicePayments\n> = /*#__PURE__*/ createRESTModule(publicEnableInvoicePayments);\nexport const generatePdfDocument: MaybeContext<\n  BuildRESTFunction<typeof publicGeneratePdfDocument> &\n    typeof publicGeneratePdfDocument\n> = /*#__PURE__*/ createRESTModule(publicGeneratePdfDocument);\nexport const markInvoiceAsViewed: MaybeContext<\n  BuildRESTFunction<typeof publicMarkInvoiceAsViewed> &\n    typeof publicMarkInvoiceAsViewed\n> = /*#__PURE__*/ createRESTModule(publicMarkInvoiceAsViewed);\nexport const markInvoiceAsSent: MaybeContext<\n  BuildRESTFunction<typeof publicMarkInvoiceAsSent> &\n    typeof publicMarkInvoiceAsSent\n> = /*#__PURE__*/ createRESTModule(publicMarkInvoiceAsSent);\nexport const calculateInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicCalculateInvoice> &\n    typeof publicCalculateInvoice\n> = /*#__PURE__*/ createRESTModule(publicCalculateInvoice);\nexport const getLatestInvoiceNumber: MaybeContext<\n  BuildRESTFunction<typeof publicGetLatestInvoiceNumber> &\n    typeof publicGetLatestInvoiceNumber\n> = /*#__PURE__*/ createRESTModule(publicGetLatestInvoiceNumber);\nexport const generateReceipt: MaybeContext<\n  BuildRESTFunction<typeof publicGenerateReceipt> & typeof publicGenerateReceipt\n> = /*#__PURE__*/ createRESTModule(publicGenerateReceipt);\nexport const bulkCreateInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkCreateInvoices> &\n    typeof publicBulkCreateInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkCreateInvoices);\nexport const bulkUpdateInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoices> &\n    typeof publicBulkUpdateInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoices);\nexport const bulkDeleteInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkDeleteInvoices> &\n    typeof publicBulkDeleteInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkDeleteInvoices);\nexport const bulkUpdateInvoiceTags: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoiceTags> &\n    typeof publicBulkUpdateInvoiceTags\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoiceTags);\nexport const bulkUpdateInvoiceTagsByFilter: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoiceTagsByFilter> &\n    typeof publicBulkUpdateInvoiceTagsByFilter\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoiceTagsByFilter);\nexport const queryInvoices: MaybeContext<\n  BuildRESTFunction<typeof customQueryInvoices> & typeof customQueryInvoices\n> = /*#__PURE__*/ createRESTModule(customQueryInvoices);\n/**\n * Triggered when an invoice is created.\n */\nexport const onInvoiceCreated: BuildEventDefinition<\n  typeof publicOnInvoiceCreated\n> &\n  typeof publicOnInvoiceCreated = /*#__PURE__*/ createEventModule(\n  publicOnInvoiceCreated\n);\n/**\n * Triggered when an invoice is deleted.\n */\nexport const onInvoiceDeleted: BuildEventDefinition<\n  typeof publicOnInvoiceDeleted\n> &\n  typeof publicOnInvoiceDeleted = /*#__PURE__*/ createEventModule(\n  publicOnInvoiceDeleted\n);\n/**\n * Triggered when an invoice is sent to a customer.\n */\nexport const onInvoiceSent: BuildEventDefinition<typeof publicOnInvoiceSent> &\n  typeof publicOnInvoiceSent =\n  /*#__PURE__*/ createEventModule(publicOnInvoiceSent);\n/**\n * Triggered when an invoice's tags are modified.\n */\nexport const onInvoiceTagsModified: BuildEventDefinition<\n  typeof publicOnInvoiceTagsModified\n> &\n  typeof publicOnInvoiceTagsModified = /*#__PURE__*/ createEventModule(\n  publicOnInvoiceTagsModified\n);\n/**\n * Triggered when an invoice is updated.\n */\nexport const onInvoiceUpdated: BuildEventDefinition<\n  typeof publicOnInvoiceUpdated\n> &\n  typeof publicOnInvoiceUpdated = /*#__PURE__*/ createEventModule(\n  publicOnInvoiceUpdated\n);\n\nexport {\n  Status,\n  StatusQualifier,\n  Action,\n  ReferenceType,\n  VatType,\n  LineItemType,\n  LineItemDiscountDiscountType,\n  PresetType,\n  PickupMethod,\n  AdditionalFeeSource,\n  DiscountType,\n  DepositType,\n  PaymentType,\n  PaymentStatus,\n  ReceiptType,\n  NodeType,\n  BackgroundType,\n  GradientType,\n  WidthType,\n  PluginContainerDataAlignment,\n  ButtonDataType,\n  Target,\n  Type,\n  EntranceEffectType,\n  LoopEffectType,\n  PointerEffectType,\n  TextAlignment,\n  LineCap,\n  LineStyle,\n  Width,\n  DividerDataAlignment,\n  ViewMode,\n  LayoutType,\n  Orientation,\n  Crop,\n  ThumbnailsAlignment,\n  GIFType,\n  Source,\n  StylesPosition,\n  MapType,\n  ViewRole,\n  VoteRole,\n  PollLayoutType,\n  PollLayoutDirection,\n  PollDesignBackgroundType,\n  DecorationType,\n  FontType,\n  Variant,\n  Position,\n  AspectRatio,\n  Resizing,\n  Placement,\n  CardStylesType,\n  Alignment,\n  Layout,\n  AppType,\n  InitialExpandedItems,\n  Direction,\n  VerticalAlignment,\n  NullValue,\n  ImageScalingScaling,\n  ImagePosition,\n  LayoutDataBackgroundType,\n  Origin,\n  BannerPosition,\n  LayerEffect,\n  Shape,\n  BackdropType,\n  VerticalAlignmentAlignment,\n  ResponsivenessBehaviour,\n  DesignTarget,\n  Scaling,\n  ImagePositionPosition,\n  CardDataBackgroundType,\n  ListStyle,\n  Indentation,\n  SmartBlockDataType,\n  ColumnSize,\n  DocumentStatus,\n  FileState,\n  ErrorType,\n  SortOrder,\n  SortType,\n  SortDirection,\n  MissingValues,\n  ScalarType,\n  NestedAggregationType,\n  Interval,\n  AggregationType,\n  Mode,\n  SendErrorType,\n  RuleType,\n  WebhookIdentityType,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport {\n  Invoice,\n  SourceReference,\n  Reference,\n  ReferenceReferenceOptionsOneOf,\n  Standalone,\n  Order,\n  Migrated,\n  AutoCharge,\n  RegionalProperties,\n  Locale,\n  Numbering,\n  CustomerInfo,\n  FullAddressContactDetails,\n  VatId,\n  Address,\n  StreetAddress,\n  AddressLocation,\n  ShippingInfo,\n  BusinessDetails,\n  LineItem,\n  LineItemLineItemOptionsOneOf,\n  CustomItem,\n  CatalogReference,\n  LineItemDiscount,\n  LineItemDiscountDiscountOptionsOneOf,\n  LineItemTaxInfo,\n  LineItemTaxBreakdown,\n  LineItemTotals,\n  SubscriptionInfo,\n  Cycle,\n  CycleCycleOptionsOneOf,\n  Weekly,\n  Monthly,\n  Yearly,\n  CatalogItem,\n  ItemType,\n  ItemTypeItemTypeDataOneOf,\n  ShipmentInfo,\n  DeliveryLogistics,\n  DeliveryTimeSlot,\n  PickupDetails,\n  ShipmentRegion,\n  ShipmentTaxInfo,\n  ShipmentTaxBreakdown,\n  ShipmentTotals,\n  AdditionalFee,\n  Discount,\n  DiscountDiscountOptionsOneOf,\n  Deposit,\n  DepositDepositOptionsOneOf,\n  TaxInfo,\n  TaxBreakdown,\n  Payment,\n  PaymentPaymentOptionsOneOf,\n  PaymentReceiptOptionsOneOf,\n  RegularPaymentDetails,\n  CreditCardDetails,\n  GiftCardPaymentDetails,\n  WixReceipt,\n  ExternalReceipt,\n  CashRounding,\n  Totals,\n  CustomFields,\n  CustomField,\n  FooterContent,\n  RichContent,\n  Node,\n  NodeDataOneOf,\n  NodeStyle,\n  ButtonData,\n  Gradient,\n  Stop,\n  Border,\n  Colors,\n  Background,\n  PluginContainerData,\n  PluginContainerDataWidth,\n  PluginContainerDataWidthDataOneOf,\n  Spoiler,\n  Height,\n  Styles,\n  Link,\n  LinkDataOneOf,\n  Rel,\n  Animation,\n  EntranceAnimation,\n  EntranceEffect,\n  LoopAnimation,\n  LoopEffect,\n  PointerEffect,\n  CodeBlockData,\n  TextStyle,\n  DividerData,\n  DividerDataStyles,\n  FileData,\n  FileSource,\n  FileSourceDataOneOf,\n  PDFSettings,\n  GalleryData,\n  Media,\n  Image,\n  Video,\n  Item,\n  ItemDataOneOf,\n  GalleryOptions,\n  GalleryOptionsLayout,\n  ItemStyle,\n  Thumbnails,\n  GIFData,\n  GIF,\n  HeadingData,\n  HTMLData,\n  HTMLDataDataOneOf,\n  ImageData,\n  StylesBorder,\n  ImageDataStyles,\n  ImageDataCrop,\n  LinkPreviewData,\n  LinkPreviewDataStyles,\n  MapData,\n  MapSettings,\n  ParagraphData,\n  PollData,\n  Permissions,\n  Option,\n  Settings,\n  PollLayout,\n  OptionLayout,\n  BackgroundGradient,\n  PollDesignBackground,\n  PollDesignBackgroundBackgroundOneOf,\n  PollDesign,\n  OptionDesign,\n  Poll,\n  PollDataLayout,\n  Design,\n  TextData,\n  Decoration,\n  DecorationDataOneOf,\n  AnchorData,\n  ColorData,\n  LinkData,\n  MentionData,\n  FontSizeData,\n  SpoilerData,\n  FontFamilyData,\n  SketchData,\n  AppEmbedData,\n  AppEmbedDataAppDataOneOf,\n  BookingData,\n  EventData,\n  ButtonStyles,\n  ImageStyles,\n  RibbonStyles,\n  CardStyles,\n  PricingData,\n  VideoData,\n  PlaybackOptions,\n  EmbedData,\n  Oembed,\n  CollapsibleListData,\n  TableData,\n  Dimensions,\n  TableCellData,\n  CellStyle,\n  BorderColors,\n  BorderWidths,\n  ListValue,\n  AudioData,\n  OrderedListData,\n  BulletedListData,\n  BlockquoteData,\n  CaptionData,\n  LayoutData,\n  LayoutDataBackground,\n  Layers,\n  LayoutDataBackgroundImage,\n  Banner,\n  Backdrop,\n  SectionDivider,\n  LayoutCellData,\n  ShapeData,\n  ShapeDataStyles,\n  CardData,\n  CardDataBackground,\n  BackgroundImage,\n  TocData,\n  SmartBlockData,\n  SmartBlockCellData,\n  CheckboxListData,\n  ListItemNodeData,\n  Metadata,\n  DocumentStyle,\n  TextNodeStyle,\n  PresetProperties,\n  InvoicePreset,\n  DisplaySettings,\n  BusinessDisplayOptions,\n  CustomerDisplayOptions,\n  ItemsDisplayOptions,\n  TotalsDisplayOptions,\n  PaymentsDisplayOptions,\n  DomainCustomFields,\n  DomainCustomField,\n  CustomFieldPlaceholder,\n  DisplayValues,\n  Attachment,\n  DocumentInfo,\n  Links,\n  BusinessLocation,\n  ActivityInfo,\n  Tags,\n  TagList,\n  InvoiceNumberingProcess,\n  InvoiceDocumentProcess,\n  InvoiceDocumentHandled,\n  InvoiceDocumentHandledResultOneOf,\n  Succeeded,\n  Failed,\n  MediaFileStateChanged,\n  SideEffectsTriggerRequested,\n  SiteTaxesMigrationRequested,\n  TagsModified,\n  InvoiceSent,\n  CreateInvoiceRequest,\n  CreateInvoiceResponse,\n  GetInvoiceRequest,\n  GetInvoiceResponse,\n  UpdateInvoiceRequest,\n  UpdateInvoiceResponse,\n  IllegalActionErrorData,\n  ConvertInvoiceRequest,\n  ConvertInvoiceResponse,\n  DeleteInvoiceRequest,\n  DeleteInvoiceResponse,\n  QueryInvoicesRequest,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Sorting,\n  CursorPaging,\n  QueryInvoicesResponse,\n  CursorPagingMetadata,\n  Cursors,\n  SearchInvoicesRequest,\n  CursorSearch,\n  CursorSearchPagingMethodOneOf,\n  Aggregation,\n  AggregationKindOneOf,\n  RangeBucket,\n  IncludeMissingValuesOptions,\n  ValueAggregation,\n  ValueAggregationOptionsOneOf,\n  RangeAggregation,\n  ScalarAggregation,\n  DateHistogramAggregation,\n  NestedAggregationItem,\n  NestedAggregationItemKindOneOf,\n  NestedAggregation,\n  GroupByAggregation,\n  GroupByAggregationKindOneOf,\n  SearchDetails,\n  SearchInvoicesResponse,\n  PagingMetadataV2,\n  AggregationData,\n  ValueAggregationResult,\n  RangeAggregationResult,\n  NestedAggregationResults,\n  NestedAggregationResultsResultOneOf,\n  ValueResults,\n  RangeResults,\n  AggregationResultsScalarResult,\n  NestedValueAggregationResult,\n  ValueResult,\n  RangeResult,\n  ScalarResult,\n  NestedResultValue,\n  NestedResultValueResultOneOf,\n  Results,\n  DateHistogramResult,\n  GroupByValueResults,\n  DateHistogramResults,\n  NestedResults,\n  AggregationResults,\n  AggregationResultsResultOneOf,\n  SendInvoiceRequest,\n  SendInvoiceResponse,\n  SendResult,\n  PublishInvoiceRequest,\n  PublishInvoiceResponse,\n  VoidInvoiceRequest,\n  VoidInvoiceResponse,\n  ArchiveInvoiceRequest,\n  ArchiveInvoiceResponse,\n  UnarchiveInvoiceRequest,\n  UnarchiveInvoiceResponse,\n  InitiatePaymentRequest,\n  InitiatePaymentResponse,\n  EnableInvoicePaymentsRequest,\n  EnableInvoicePaymentsResponse,\n  GeneratePdfDocumentRequest,\n  GeneratePdfDocumentResponse,\n  MarkInvoiceAsViewedRequest,\n  MarkInvoiceAsViewedResponse,\n  MarkInvoiceAsSentRequest,\n  MarkInvoiceAsSentResponse,\n  CalculateInvoiceRequest,\n  CalculateInvoiceResponse,\n  ShipmentOption,\n  DeliveryLogisticsOption,\n  CalculationErrors,\n  CalculationErrorsShippingCalculationErrorOneOf,\n  Details,\n  DetailsKindOneOf,\n  ApplicationError,\n  ValidationError,\n  FieldViolation,\n  SystemError,\n  CarrierErrors,\n  CarrierError,\n  GetLatestInvoiceNumberRequest,\n  GetLatestInvoiceNumberResponse,\n  InternalCountInvoicesRequest,\n  InternalCountInvoicesResponse,\n  GenerateReceiptRequest,\n  GenerateReceiptResponse,\n  BulkCreateInvoicesRequest,\n  BulkCreateInvoicesResponse,\n  ItemMetadata,\n  BulkInvoiceResult,\n  BulkActionMetadata,\n  BulkUpdateInvoicesRequest,\n  MaskedInvoice,\n  BulkUpdateInvoicesResponse,\n  BulkUpdateInvoicesResponseBulkInvoiceResult,\n  BulkDeleteInvoicesRequest,\n  BulkDeleteInvoicesResponse,\n  BulkDeleteInvoicesResponseBulkInvoiceResult,\n  BulkUpdateInvoiceTagsRequest,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoiceTagsResult,\n  BulkUpdateInvoiceTagsByFilterRequest,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  AddPaymentRequest,\n  AddPaymentResponse,\n  Empty,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  AccountInfo,\n  BaseEventMetadata,\n  EventMetadata,\n  AccountInfoMetadata,\n  InvoiceCreatedEnvelope,\n  InvoiceDeletedEnvelope,\n  InvoiceSentEnvelope,\n  InvoiceTagsModifiedEnvelope,\n  InvoiceUpdatedEnvelope,\n  UpdateInvoice,\n  InvoicesQueryResult,\n  InvoicesQueryBuilder,\n  InvoiceQuerySpec,\n  InvoiceSearchSpec,\n  SendInvoiceOptions,\n  CalculateInvoiceOptions,\n  GetLatestInvoiceNumberOptions,\n  BulkCreateInvoicesOptions,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsByFilterOptions,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport { utils } from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport {\n  StatusWithLiterals,\n  StatusQualifierWithLiterals,\n  ActionWithLiterals,\n  ReferenceTypeWithLiterals,\n  VatTypeWithLiterals,\n  LineItemTypeWithLiterals,\n  LineItemDiscountDiscountTypeWithLiterals,\n  PresetTypeWithLiterals,\n  PickupMethodWithLiterals,\n  AdditionalFeeSourceWithLiterals,\n  DiscountTypeWithLiterals,\n  DepositTypeWithLiterals,\n  PaymentTypeWithLiterals,\n  PaymentStatusWithLiterals,\n  ReceiptTypeWithLiterals,\n  NodeTypeWithLiterals,\n  BackgroundTypeWithLiterals,\n  GradientTypeWithLiterals,\n  WidthTypeWithLiterals,\n  PluginContainerDataAlignmentWithLiterals,\n  ButtonDataTypeWithLiterals,\n  TargetWithLiterals,\n  TypeWithLiterals,\n  EntranceEffectTypeWithLiterals,\n  LoopEffectTypeWithLiterals,\n  PointerEffectTypeWithLiterals,\n  TextAlignmentWithLiterals,\n  LineCapWithLiterals,\n  LineStyleWithLiterals,\n  WidthWithLiterals,\n  DividerDataAlignmentWithLiterals,\n  ViewModeWithLiterals,\n  LayoutTypeWithLiterals,\n  OrientationWithLiterals,\n  CropWithLiterals,\n  ThumbnailsAlignmentWithLiterals,\n  GIFTypeWithLiterals,\n  SourceWithLiterals,\n  StylesPositionWithLiterals,\n  MapTypeWithLiterals,\n  ViewRoleWithLiterals,\n  VoteRoleWithLiterals,\n  PollLayoutTypeWithLiterals,\n  PollLayoutDirectionWithLiterals,\n  PollDesignBackgroundTypeWithLiterals,\n  DecorationTypeWithLiterals,\n  FontTypeWithLiterals,\n  VariantWithLiterals,\n  PositionWithLiterals,\n  AspectRatioWithLiterals,\n  ResizingWithLiterals,\n  PlacementWithLiterals,\n  CardStylesTypeWithLiterals,\n  AlignmentWithLiterals,\n  LayoutWithLiterals,\n  AppTypeWithLiterals,\n  InitialExpandedItemsWithLiterals,\n  DirectionWithLiterals,\n  VerticalAlignmentWithLiterals,\n  NullValueWithLiterals,\n  ImageScalingScalingWithLiterals,\n  ImagePositionWithLiterals,\n  LayoutDataBackgroundTypeWithLiterals,\n  OriginWithLiterals,\n  BannerPositionWithLiterals,\n  LayerEffectWithLiterals,\n  ShapeWithLiterals,\n  BackdropTypeWithLiterals,\n  VerticalAlignmentAlignmentWithLiterals,\n  ResponsivenessBehaviourWithLiterals,\n  DesignTargetWithLiterals,\n  ScalingWithLiterals,\n  ImagePositionPositionWithLiterals,\n  CardDataBackgroundTypeWithLiterals,\n  ListStyleWithLiterals,\n  IndentationWithLiterals,\n  SmartBlockDataTypeWithLiterals,\n  ColumnSizeWithLiterals,\n  DocumentStatusWithLiterals,\n  FileStateWithLiterals,\n  ErrorTypeWithLiterals,\n  SortOrderWithLiterals,\n  SortTypeWithLiterals,\n  SortDirectionWithLiterals,\n  MissingValuesWithLiterals,\n  ScalarTypeWithLiterals,\n  NestedAggregationTypeWithLiterals,\n  IntervalWithLiterals,\n  AggregationTypeWithLiterals,\n  ModeWithLiterals,\n  SendErrorTypeWithLiterals,\n  RuleTypeWithLiterals,\n  WebhookIdentityTypeWithLiterals,\n  CreateInvoiceApplicationErrors,\n  CreateInvoiceValidationErrors,\n  GetInvoiceApplicationErrors,\n  UpdateInvoiceApplicationErrors,\n  UpdateInvoiceValidationErrors,\n  DeleteInvoiceApplicationErrors,\n  QueryInvoicesApplicationErrors,\n  SendInvoiceApplicationErrors,\n  PublishInvoiceApplicationErrors,\n  VoidInvoiceApplicationErrors,\n  ArchiveInvoiceApplicationErrors,\n  UnarchiveInvoiceApplicationErrors,\n  InitiatePaymentApplicationErrors,\n  EnableInvoicePaymentsApplicationErrors,\n  GeneratePdfDocumentApplicationErrors,\n  CalculateInvoiceApplicationErrors,\n  BulkCreateInvoicesApplicationErrors,\n  BulkCreateInvoicesValidationErrors,\n  BulkUpdateInvoicesApplicationErrors,\n  BulkUpdateInvoicesValidationErrors,\n  BulkUpdateInvoiceTagsApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterApplicationErrors,\n  CommonQueryWithEntityContext,\n  InvoiceQuery,\n  CommonSearchWithEntityContext,\n  InvoiceSearch,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n"],"mappings":"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YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;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A;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAA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YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,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AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;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E,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAA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CA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AA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,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA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AA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AA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AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;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AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;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M;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YAC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,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA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AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;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AM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YA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E,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAA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CE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AA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;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA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AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,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CE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AA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AA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MA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;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA,YACR;AAAA,YACA;AAAA,cACE,MAAM;AAAA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A,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AACJ,EAA0B;AACnB,IAAM,mBAAiC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA,CAAC,UACCJ;AAAA,IACEC,gBAAe,OAAO;AAAA,MACpB;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL,EAAE,MAAM,qBAAqB;AAAA,UAC7B,EAAE,MAAM,qBAAqB;AAAA,UAC7B,EAAE,MAAM,mBAAmB;AAAA,UAC3B,EAAE,MAAM,iBAAiB;AAAA,UACzB,EAAE,MAAM,yDAAyD;AAAA,UACjE,EAAE,MAAM,0DAA0D;AAAA,UAClE,EAAE,MAAM,sDAAsD;AAAA,UAC9D,EAAE,MAAM,oDAAoD;AAAA,UAC5D,EAAE,MAAM,8BAA8B;AAAA,UACtC,EAAE,MAAM,8BAA8B;AAAA,UACtC,EAAE,MAAM,8BAA8B;AAAA,UACtC;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA,EAAE,MAAM,oDAAoD;AAAA,UAC5D,EAAE,MAAM,oDAAoD;AAAA,UAC5D;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA,EAAE,MAAM,6CAA6C;AAAA,UACrD,EAAE,MAAM,mCAAmC;AAAA,UAC3C,EAAE,MAAM,qCAAqC;AAAA,UAC7C,EAAE,MAAM,qBAAqB;AAAA,QAC/B;AAAA,MACF;AAAA,MACA;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL,EAAE,MAAM,qCAAqC;AAAA,UAC7C,EAAE,MAAM,sCAAsC;AAAA,UAC9C,EAAE,MAAM,iCAAiC;AAAA,UACzC,EAAE,MAAM,sDAAsD;AAAA,QAChE;AAAA,MACF;AAAA,MACA;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AACJ,EAA0B;AACnB,IAAM,gBAA8B;AAAA,EACzC;AAAA,EACA;AAAA,EACA,CAAC,UACCJ;AAAA,IACEC,gBAAe,OAAO;AAAA,MACpB;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL,EAAE,MAAM,2BAA2B;AAAA,UACnC,EAAE,MAAM,2BAA2B;AAAA,UACnC,EAAE,MAAM,yBAAyB;AAAA,UACjC,EAAE,MAAM,uBAAuB;AAAA,UAC/B;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA,EAAE,MAAM,0DAA0D;AAAA,UAClE,EAAE,MAAM,oCAAoC;AAAA,UAC5C,EAAE,MAAM,oCAAoC;AAAA,UAC5C,EAAE,MAAM,oCAAoC;AAAA,UAC5C;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA,EAAE,MAAM,0DAA0D;AAAA,UAClE,EAAE,MAAM,0DAA0D;AAAA,UAClE;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA,EAAE,MAAM,mDAAmD;AAAA,UAC3D,EAAE,MAAM,yCAAyC;AAAA,UACjD,EAAE,MAAM,2CAA2C;AAAA,UACnD,EAAE,MAAM,qBAAqB;AAAA,QAC/B;AAAA,MACF;AAAA,MACA;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL,EAAE,MAAM,2CAA2C;AAAA,UACnD,EAAE,MAAM,4CAA4C;AAAA,UACpD,EAAE,MAAM,uCAAuC;AAAA,UAC/C;AAAA,YACE,MAAM;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,MACA;AAAA,QACE,aAAaC;AAAA,QACb,OAAO;AAAA,UACL;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;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AM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UA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R;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAAA,YACE,MAAM;AAAA,UACR;AAAA,UACA;AAA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","names":["renameKeysFromRESTResponseToSDKResponse","transformRESTAddressToSDKAddress","transformRESTFloatToSDKFloat","transformRESTTimestampToSDKTimestamp","transformPaths","payload","transformPaths","Status","StatusQualifier","Action","ReferenceType","VatType","LineItemType","LineItemDiscountDiscountType","PresetType","PickupMethod","AdditionalFeeSource","DiscountType","DepositType","PaymentType","PaymentStatus","ReceiptType","NodeType","BackgroundType","GradientType","WidthType","PluginContainerDataAlignment","ButtonDataType","Target","Type","EntranceEffectType","LoopEffectType","PointerEffectType","TextAlignment","LineCap","LineStyle","Width","DividerDataAlignment","ViewMode","LayoutType","Orientation","Crop","ThumbnailsAlignment","GIFType","Source","StylesPosition","MapType","ViewRole","VoteRole","PollLayoutType","PollLayoutDirection","PollDesignBackgroundType","DecorationType","FontType","Variant","Position","AspectRatio","Resizing","Placement","CardStylesType","Alignment","Layout","AppType","InitialExpandedItems","Direction","VerticalAlignment","NullValue","ImageScalingScaling","ImagePosition","LayoutDataBackgroundType","Origin","BannerPosition","LayerEffect","Shape","BackdropType","VerticalAlignmentAlignment","ResponsivenessBehaviour","DesignTarget","Scaling","ImagePositionPosition","CardDataBackgroundType","ListStyle","Indentation","SmartBlockDataType","ColumnSize","DocumentStatus","FileState","ErrorType","SortOrder","SortType","SortDirection","MissingValues","ScalarType","NestedAggregationType","Interval","AggregationType","Mode","SendErrorType","RuleType","WebhookIdentityType","createInvoice","getInvoice","updateInvoice","deleteInvoice","queryInvoices","searchInvoices","sendInvoice","publishInvoice","voidInvoice","archiveInvoice","unarchiveInvoice","initiatePayment","enableInvoicePayments","generatePdfDocument","markInvoiceAsViewed","markInvoiceAsSent","calculateInvoice","getLatestInvoiceNumber","generateReceipt","bulkCreateInvoices","bulkUpdateInvoices","bulkDeleteInvoices","bulkUpdateInvoiceTags","bulkUpdateInvoiceTagsByFilter","createInvoice","getInvoice","updateInvoice","deleteInvoice","queryInvoices","typedQueryInvoices","searchInvoices","sendInvoice","publishInvoice","voidInvoice","archiveInvoice","unarchiveInvoice","initiatePayment","enableInvoicePayments","generatePdfDocument","markInvoiceAsViewed","markInvoiceAsSent","calculateInvoice","getLatestInvoiceNumber","generateReceipt","bulkCreateInvoices","bulkUpdateInvoices","bulkDeleteInvoices","bulkUpdateInvoiceTags","bulkUpdateInvoiceTagsByFilter","renameKeysFromRESTResponseToSDKResponse","transformPaths","transformRESTTimestampToSDKTimestamp","transformRESTAddressToSDKAddress","transformRESTFloatToSDKFloat","queryInvoices","typedQueryInvoices","createInvoice","getInvoice","updateInvoice","deleteInvoice","searchInvoices","sendInvoice","publishInvoice","voidInvoice","archiveInvoice","unarchiveInvoice","initiatePayment","enableInvoicePayments","generatePdfDocument","markInvoiceAsViewed","markInvoiceAsSent","calculateInvoice","getLatestInvoiceNumber","generateReceipt","bulkCreateInvoices","bulkUpdateInvoices","bulkDeleteInvoices","bulkUpdateInvoiceTags","bulkUpdateInvoiceTagsByFilter","onInvoiceCreated","onInvoiceDeleted","onInvoiceSent","onInvoiceTagsModified","onInvoiceUpdated"]}