@cheqi/sdk 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (335) hide show
  1. package/README.md +57 -0
  2. package/dist/cheqi-sdk.d.ts +98 -0
  3. package/dist/cheqi-sdk.js +134 -0
  4. package/dist/cheqi-sdk.js.map +1 -0
  5. package/dist/config.d.ts +23 -0
  6. package/dist/config.js +63 -0
  7. package/dist/config.js.map +1 -0
  8. package/dist/crypto.d.ts +9 -0
  9. package/dist/crypto.js +10 -0
  10. package/dist/crypto.js.map +1 -0
  11. package/dist/entity/index.d.ts +1 -0
  12. package/dist/entity/index.js +2 -0
  13. package/dist/entity/index.js.map +1 -0
  14. package/dist/errors.d.ts +40 -0
  15. package/dist/errors.js +48 -0
  16. package/dist/errors.js.map +1 -0
  17. package/dist/http/client.d.ts +32 -0
  18. package/dist/http/client.js +199 -0
  19. package/dist/http/client.js.map +1 -0
  20. package/dist/http/endpoints.d.ts +13 -0
  21. package/dist/http/endpoints.js +14 -0
  22. package/dist/http/endpoints.js.map +1 -0
  23. package/dist/http/retry.d.ts +30 -0
  24. package/dist/http/retry.js +74 -0
  25. package/dist/http/retry.js.map +1 -0
  26. package/dist/index.d.ts +21 -0
  27. package/dist/index.js +19 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/logger.d.ts +31 -0
  30. package/dist/logger.js +31 -0
  31. package/dist/logger.js.map +1 -0
  32. package/dist/models/domain.d.ts +366 -0
  33. package/dist/models/domain.js +467 -0
  34. package/dist/models/domain.js.map +1 -0
  35. package/dist/models/entity.d.ts +226 -0
  36. package/dist/models/entity.js +334 -0
  37. package/dist/models/entity.js.map +1 -0
  38. package/dist/models/generated/AccountIdentifierType.d.ts +24 -0
  39. package/dist/models/generated/AccountIdentifierType.js +43 -0
  40. package/dist/models/generated/AccountIdentifierType.js.map +1 -0
  41. package/dist/models/generated/AcknowledgeRequest.d.ts +32 -0
  42. package/dist/models/generated/AcknowledgeRequest.js +42 -0
  43. package/dist/models/generated/AcknowledgeRequest.js.map +1 -0
  44. package/dist/models/generated/AddressDTO.d.ts +74 -0
  45. package/dist/models/generated/AddressDTO.js +64 -0
  46. package/dist/models/generated/AddressDTO.js.map +1 -0
  47. package/dist/models/generated/AuthorizedCardDTO.d.ts +38 -0
  48. package/dist/models/generated/AuthorizedCardDTO.js +44 -0
  49. package/dist/models/generated/AuthorizedCardDTO.js.map +1 -0
  50. package/dist/models/generated/AuthorizedCompanyDTO.d.ts +64 -0
  51. package/dist/models/generated/AuthorizedCompanyDTO.js +54 -0
  52. package/dist/models/generated/AuthorizedCompanyDTO.js.map +1 -0
  53. package/dist/models/generated/AuthorizedEmailDTO.d.ts +38 -0
  54. package/dist/models/generated/AuthorizedEmailDTO.js +44 -0
  55. package/dist/models/generated/AuthorizedEmailDTO.js.map +1 -0
  56. package/dist/models/generated/AuthorizedPaymentAccountDTO.d.ts +70 -0
  57. package/dist/models/generated/AuthorizedPaymentAccountDTO.js +63 -0
  58. package/dist/models/generated/AuthorizedPaymentAccountDTO.js.map +1 -0
  59. package/dist/models/generated/AuthorizedResourcesResponse.d.ts +53 -0
  60. package/dist/models/generated/AuthorizedResourcesResponse.js +51 -0
  61. package/dist/models/generated/AuthorizedResourcesResponse.js.map +1 -0
  62. package/dist/models/generated/Barcode.d.ts +44 -0
  63. package/dist/models/generated/Barcode.js +46 -0
  64. package/dist/models/generated/Barcode.js.map +1 -0
  65. package/dist/models/generated/BarcodeType.d.ts +29 -0
  66. package/dist/models/generated/BarcodeType.js +48 -0
  67. package/dist/models/generated/BarcodeType.js.map +1 -0
  68. package/dist/models/generated/BuyerType.d.ts +25 -0
  69. package/dist/models/generated/BuyerType.js +44 -0
  70. package/dist/models/generated/BuyerType.js.map +1 -0
  71. package/dist/models/generated/CardDetails.d.ts +54 -0
  72. package/dist/models/generated/CardDetails.js +57 -0
  73. package/dist/models/generated/CardDetails.js.map +1 -0
  74. package/dist/models/generated/Charge.d.ts +44 -0
  75. package/dist/models/generated/Charge.js +48 -0
  76. package/dist/models/generated/Charge.js.map +1 -0
  77. package/dist/models/generated/CheqiCreditNote.d.ts +148 -0
  78. package/dist/models/generated/CheqiCreditNote.js +86 -0
  79. package/dist/models/generated/CheqiCreditNote.js.map +1 -0
  80. package/dist/models/generated/CheqiReceipt.d.ts +143 -0
  81. package/dist/models/generated/CheqiReceipt.js +85 -0
  82. package/dist/models/generated/CheqiReceipt.js.map +1 -0
  83. package/dist/models/generated/CompanyCreationRequest.d.ts +114 -0
  84. package/dist/models/generated/CompanyCreationRequest.js +80 -0
  85. package/dist/models/generated/CompanyCreationRequest.js.map +1 -0
  86. package/dist/models/generated/CompanyIdentifierDTO.d.ts +92 -0
  87. package/dist/models/generated/CompanyIdentifierDTO.js +73 -0
  88. package/dist/models/generated/CompanyIdentifierDTO.js.map +1 -0
  89. package/dist/models/generated/CompanyIdentifierRequirement.d.ts +63 -0
  90. package/dist/models/generated/CompanyIdentifierRequirement.js +53 -0
  91. package/dist/models/generated/CompanyIdentifierRequirement.js.map +1 -0
  92. package/dist/models/generated/CompanyIdentifierType.d.ts +29 -0
  93. package/dist/models/generated/CompanyIdentifierType.js +48 -0
  94. package/dist/models/generated/CompanyIdentifierType.js.map +1 -0
  95. package/dist/models/generated/CompanyReceiptDeliveryDeviceDto.d.ts +65 -0
  96. package/dist/models/generated/CompanyReceiptDeliveryDeviceDto.js +58 -0
  97. package/dist/models/generated/CompanyReceiptDeliveryDeviceDto.js.map +1 -0
  98. package/dist/models/generated/CompanyReceiptDeliverySettingsResponse.d.ts +39 -0
  99. package/dist/models/generated/CompanyReceiptDeliverySettingsResponse.js +45 -0
  100. package/dist/models/generated/CompanyReceiptDeliverySettingsResponse.js.map +1 -0
  101. package/dist/models/generated/CompanyResponseBody.d.ts +151 -0
  102. package/dist/models/generated/CompanyResponseBody.js +85 -0
  103. package/dist/models/generated/CompanyResponseBody.js.map +1 -0
  104. package/dist/models/generated/CompanyRole.d.ts +25 -0
  105. package/dist/models/generated/CompanyRole.js +44 -0
  106. package/dist/models/generated/CompanyRole.js.map +1 -0
  107. package/dist/models/generated/ContactDetailDto.d.ts +50 -0
  108. package/dist/models/generated/ContactDetailDto.js +48 -0
  109. package/dist/models/generated/ContactDetailDto.js.map +1 -0
  110. package/dist/models/generated/CreateChildCompanyRequest.d.ts +39 -0
  111. package/dist/models/generated/CreateChildCompanyRequest.js +45 -0
  112. package/dist/models/generated/CreateChildCompanyRequest.js.map +1 -0
  113. package/dist/models/generated/CreateStoreRequest.d.ts +63 -0
  114. package/dist/models/generated/CreateStoreRequest.js +59 -0
  115. package/dist/models/generated/CreateStoreRequest.js.map +1 -0
  116. package/dist/models/generated/CreditNoteContextEnvelope.d.ts +40 -0
  117. package/dist/models/generated/CreditNoteContextEnvelope.js +46 -0
  118. package/dist/models/generated/CreditNoteContextEnvelope.js.map +1 -0
  119. package/dist/models/generated/CreditNoteCreatedResponse.d.ts +50 -0
  120. package/dist/models/generated/CreditNoteCreatedResponse.js +48 -0
  121. package/dist/models/generated/CreditNoteCreatedResponse.js.map +1 -0
  122. package/dist/models/generated/CreditNoteTemplateGenerationRequest.d.ts +59 -0
  123. package/dist/models/generated/CreditNoteTemplateGenerationRequest.js +63 -0
  124. package/dist/models/generated/CreditNoteTemplateGenerationRequest.js.map +1 -0
  125. package/dist/models/generated/CreditNoteTemplateRequest.d.ts +128 -0
  126. package/dist/models/generated/CreditNoteTemplateRequest.js +98 -0
  127. package/dist/models/generated/CreditNoteTemplateRequest.js.map +1 -0
  128. package/dist/models/generated/CreditNoteTemplateResponse.d.ts +39 -0
  129. package/dist/models/generated/CreditNoteTemplateResponse.js +45 -0
  130. package/dist/models/generated/CreditNoteTemplateResponse.js.map +1 -0
  131. package/dist/models/generated/Discount.d.ts +44 -0
  132. package/dist/models/generated/Discount.js +48 -0
  133. package/dist/models/generated/Discount.js.map +1 -0
  134. package/dist/models/generated/DocumentType.d.ts +25 -0
  135. package/dist/models/generated/DocumentType.js +44 -0
  136. package/dist/models/generated/DocumentType.js.map +1 -0
  137. package/dist/models/generated/EmailReceiptRequest.d.ts +39 -0
  138. package/dist/models/generated/EmailReceiptRequest.js +49 -0
  139. package/dist/models/generated/EmailReceiptRequest.js.map +1 -0
  140. package/dist/models/generated/EncryptedCreditNote.d.ts +86 -0
  141. package/dist/models/generated/EncryptedCreditNote.js +72 -0
  142. package/dist/models/generated/EncryptedCreditNote.js.map +1 -0
  143. package/dist/models/generated/EncryptedCreditNoteDto.d.ts +102 -0
  144. package/dist/models/generated/EncryptedCreditNoteDto.js +85 -0
  145. package/dist/models/generated/EncryptedCreditNoteDto.js.map +1 -0
  146. package/dist/models/generated/EncryptedCreditNoteInitiationRequest.d.ts +50 -0
  147. package/dist/models/generated/EncryptedCreditNoteInitiationRequest.js +48 -0
  148. package/dist/models/generated/EncryptedCreditNoteInitiationRequest.js.map +1 -0
  149. package/dist/models/generated/EncryptedCreditNotesRequest.d.ts +51 -0
  150. package/dist/models/generated/EncryptedCreditNotesRequest.js +57 -0
  151. package/dist/models/generated/EncryptedCreditNotesRequest.js.map +1 -0
  152. package/dist/models/generated/EncryptedReceiptDto.d.ts +118 -0
  153. package/dist/models/generated/EncryptedReceiptDto.js +77 -0
  154. package/dist/models/generated/EncryptedReceiptDto.js.map +1 -0
  155. package/dist/models/generated/EncryptedReceiptRequest.d.ts +69 -0
  156. package/dist/models/generated/EncryptedReceiptRequest.js +63 -0
  157. package/dist/models/generated/EncryptedReceiptRequest.js.map +1 -0
  158. package/dist/models/generated/EncryptedReceiptsRequest.d.ts +45 -0
  159. package/dist/models/generated/EncryptedReceiptsRequest.js +53 -0
  160. package/dist/models/generated/EncryptedReceiptsRequest.js.map +1 -0
  161. package/dist/models/generated/IdentificationDetails.d.ts +71 -0
  162. package/dist/models/generated/IdentificationDetails.js +57 -0
  163. package/dist/models/generated/IdentificationDetails.js.map +1 -0
  164. package/dist/models/generated/Identifier.d.ts +38 -0
  165. package/dist/models/generated/Identifier.js +44 -0
  166. package/dist/models/generated/Identifier.js.map +1 -0
  167. package/dist/models/generated/KeyAlgorithm.d.ts +25 -0
  168. package/dist/models/generated/KeyAlgorithm.js +44 -0
  169. package/dist/models/generated/KeyAlgorithm.js.map +1 -0
  170. package/dist/models/generated/MatchedRecipient.d.ts +51 -0
  171. package/dist/models/generated/MatchedRecipient.js +49 -0
  172. package/dist/models/generated/MatchedRecipient.js.map +1 -0
  173. package/dist/models/generated/NotificationDisplayCode.d.ts +39 -0
  174. package/dist/models/generated/NotificationDisplayCode.js +49 -0
  175. package/dist/models/generated/NotificationDisplayCode.js.map +1 -0
  176. package/dist/models/generated/PartyAddress.d.ts +56 -0
  177. package/dist/models/generated/PartyAddress.js +50 -0
  178. package/dist/models/generated/PartyAddress.js.map +1 -0
  179. package/dist/models/generated/PaymentAccountDetails.d.ts +57 -0
  180. package/dist/models/generated/PaymentAccountDetails.js +55 -0
  181. package/dist/models/generated/PaymentAccountDetails.js.map +1 -0
  182. package/dist/models/generated/PaymentMeansEnvelope.d.ts +68 -0
  183. package/dist/models/generated/PaymentMeansEnvelope.js +54 -0
  184. package/dist/models/generated/PaymentMeansEnvelope.js.map +1 -0
  185. package/dist/models/generated/PaymentType.d.ts +26 -0
  186. package/dist/models/generated/PaymentType.js +45 -0
  187. package/dist/models/generated/PaymentType.js.map +1 -0
  188. package/dist/models/generated/Period.d.ts +44 -0
  189. package/dist/models/generated/Period.js +50 -0
  190. package/dist/models/generated/Period.js.map +1 -0
  191. package/dist/models/generated/PermanentFailureAcknowledgeRequest.d.ts +38 -0
  192. package/dist/models/generated/PermanentFailureAcknowledgeRequest.js +44 -0
  193. package/dist/models/generated/PermanentFailureAcknowledgeRequest.js.map +1 -0
  194. package/dist/models/generated/Product.d.ts +122 -0
  195. package/dist/models/generated/Product.js +94 -0
  196. package/dist/models/generated/Product.js.map +1 -0
  197. package/dist/models/generated/PublicKeyResponse.d.ts +51 -0
  198. package/dist/models/generated/PublicKeyResponse.js +49 -0
  199. package/dist/models/generated/PublicKeyResponse.js.map +1 -0
  200. package/dist/models/generated/ReceiptContextEnvelope.d.ts +40 -0
  201. package/dist/models/generated/ReceiptContextEnvelope.js +46 -0
  202. package/dist/models/generated/ReceiptContextEnvelope.js.map +1 -0
  203. package/dist/models/generated/ReceiptCreatedResponse.d.ts +44 -0
  204. package/dist/models/generated/ReceiptCreatedResponse.js +46 -0
  205. package/dist/models/generated/ReceiptCreatedResponse.js.map +1 -0
  206. package/dist/models/generated/ReceiptEnvelope.d.ts +52 -0
  207. package/dist/models/generated/ReceiptEnvelope.js +50 -0
  208. package/dist/models/generated/ReceiptEnvelope.js.map +1 -0
  209. package/dist/models/generated/ReceiptFormat.d.ts +27 -0
  210. package/dist/models/generated/ReceiptFormat.js +46 -0
  211. package/dist/models/generated/ReceiptFormat.js.map +1 -0
  212. package/dist/models/generated/ReceiptQueueDto.d.ts +137 -0
  213. package/dist/models/generated/ReceiptQueueDto.js +79 -0
  214. package/dist/models/generated/ReceiptQueueDto.js.map +1 -0
  215. package/dist/models/generated/ReceiptTemplateGenerationRequest.d.ts +59 -0
  216. package/dist/models/generated/ReceiptTemplateGenerationRequest.js +63 -0
  217. package/dist/models/generated/ReceiptTemplateGenerationRequest.js.map +1 -0
  218. package/dist/models/generated/ReceiptTemplateRequest.d.ts +141 -0
  219. package/dist/models/generated/ReceiptTemplateRequest.js +99 -0
  220. package/dist/models/generated/ReceiptTemplateRequest.js.map +1 -0
  221. package/dist/models/generated/ReceiptTemplateResponse.d.ts +52 -0
  222. package/dist/models/generated/ReceiptTemplateResponse.js +50 -0
  223. package/dist/models/generated/ReceiptTemplateResponse.js.map +1 -0
  224. package/dist/models/generated/ReceivingParty.d.ts +76 -0
  225. package/dist/models/generated/ReceivingParty.js +58 -0
  226. package/dist/models/generated/ReceivingParty.js.map +1 -0
  227. package/dist/models/generated/ReceivingPartyEnvelope.d.ts +39 -0
  228. package/dist/models/generated/ReceivingPartyEnvelope.js +45 -0
  229. package/dist/models/generated/ReceivingPartyEnvelope.js.map +1 -0
  230. package/dist/models/generated/RecipientResolutionResponse.d.ts +76 -0
  231. package/dist/models/generated/RecipientResolutionResponse.js +58 -0
  232. package/dist/models/generated/RecipientResolutionResponse.js.map +1 -0
  233. package/dist/models/generated/ReturnProcessingMode.d.ts +25 -0
  234. package/dist/models/generated/ReturnProcessingMode.js +44 -0
  235. package/dist/models/generated/ReturnProcessingMode.js.map +1 -0
  236. package/dist/models/generated/RoutingIdentifier.d.ts +39 -0
  237. package/dist/models/generated/RoutingIdentifier.js +45 -0
  238. package/dist/models/generated/RoutingIdentifier.js.map +1 -0
  239. package/dist/models/generated/RoutingIdentifierType.d.ts +27 -0
  240. package/dist/models/generated/RoutingIdentifierType.js +46 -0
  241. package/dist/models/generated/RoutingIdentifierType.js.map +1 -0
  242. package/dist/models/generated/SellingParty.d.ts +58 -0
  243. package/dist/models/generated/SellingParty.js +52 -0
  244. package/dist/models/generated/SellingParty.js.map +1 -0
  245. package/dist/models/generated/StoreDTO.d.ts +99 -0
  246. package/dist/models/generated/StoreDTO.js +69 -0
  247. package/dist/models/generated/StoreDTO.js.map +1 -0
  248. package/dist/models/generated/Tax.d.ts +56 -0
  249. package/dist/models/generated/Tax.js +56 -0
  250. package/dist/models/generated/Tax.js.map +1 -0
  251. package/dist/models/generated/UnitCode.d.ts +77 -0
  252. package/dist/models/generated/UnitCode.js +96 -0
  253. package/dist/models/generated/UnitCode.js.map +1 -0
  254. package/dist/models/generated/UpdateCompanyReceiptDeliveryPreferenceRequest.d.ts +32 -0
  255. package/dist/models/generated/UpdateCompanyReceiptDeliveryPreferenceRequest.js +44 -0
  256. package/dist/models/generated/UpdateCompanyReceiptDeliveryPreferenceRequest.js.map +1 -0
  257. package/dist/models/generated/UpdateStoreRequest.d.ts +63 -0
  258. package/dist/models/generated/UpdateStoreRequest.js +53 -0
  259. package/dist/models/generated/UpdateStoreRequest.js.map +1 -0
  260. package/dist/models/generated/UploadPublicKeyRequest.d.ts +39 -0
  261. package/dist/models/generated/UploadPublicKeyRequest.js +49 -0
  262. package/dist/models/generated/UploadPublicKeyRequest.js.map +1 -0
  263. package/dist/models/generated/VatMetadata.d.ts +70 -0
  264. package/dist/models/generated/VatMetadata.js +56 -0
  265. package/dist/models/generated/VatMetadata.js.map +1 -0
  266. package/dist/models/generated/VatRegime.d.ts +31 -0
  267. package/dist/models/generated/VatRegime.js +50 -0
  268. package/dist/models/generated/VatRegime.js.map +1 -0
  269. package/dist/models/generated/WebhookDTO.d.ts +62 -0
  270. package/dist/models/generated/WebhookDTO.js +52 -0
  271. package/dist/models/generated/WebhookDTO.js.map +1 -0
  272. package/dist/models/generated/WebhookEventDTO.d.ts +113 -0
  273. package/dist/models/generated/WebhookEventDTO.js +78 -0
  274. package/dist/models/generated/WebhookEventDTO.js.map +1 -0
  275. package/dist/models/generated/WebhookRequestBody.d.ts +55 -0
  276. package/dist/models/generated/WebhookRequestBody.js +56 -0
  277. package/dist/models/generated/WebhookRequestBody.js.map +1 -0
  278. package/dist/models/generated/WebhookResponse.d.ts +39 -0
  279. package/dist/models/generated/WebhookResponse.js +45 -0
  280. package/dist/models/generated/WebhookResponse.js.map +1 -0
  281. package/dist/models/generated/WebhookSecretRotationResponse.d.ts +56 -0
  282. package/dist/models/generated/WebhookSecretRotationResponse.js +50 -0
  283. package/dist/models/generated/WebhookSecretRotationResponse.js.map +1 -0
  284. package/dist/models/generated/index.d.ts +82 -0
  285. package/dist/models/generated/index.js +83 -0
  286. package/dist/models/generated/index.js.map +1 -0
  287. package/dist/models/generated/runtime.d.ts +182 -0
  288. package/dist/models/generated/runtime.js +330 -0
  289. package/dist/models/generated/runtime.js.map +1 -0
  290. package/dist/models/index.d.ts +3 -0
  291. package/dist/models/index.js +4 -0
  292. package/dist/models/index.js.map +1 -0
  293. package/dist/models.d.ts +51 -0
  294. package/dist/models.js +106 -0
  295. package/dist/models.js.map +1 -0
  296. package/dist/rfc8785.d.ts +1 -0
  297. package/dist/rfc8785.js +42 -0
  298. package/dist/rfc8785.js.map +1 -0
  299. package/dist/services/company.d.ts +7 -0
  300. package/dist/services/company.js +33 -0
  301. package/dist/services/company.js.map +1 -0
  302. package/dist/services/credit-note.d.ts +25 -0
  303. package/dist/services/credit-note.js +211 -0
  304. package/dist/services/credit-note.js.map +1 -0
  305. package/dist/services/decryption.d.ts +33 -0
  306. package/dist/services/decryption.js +145 -0
  307. package/dist/services/decryption.js.map +1 -0
  308. package/dist/services/encryption.d.ts +25 -0
  309. package/dist/services/encryption.js +94 -0
  310. package/dist/services/encryption.js.map +1 -0
  311. package/dist/services/matching.d.ts +7 -0
  312. package/dist/services/matching.js +32 -0
  313. package/dist/services/matching.js.map +1 -0
  314. package/dist/services/receipt.d.ts +17 -0
  315. package/dist/services/receipt.js +186 -0
  316. package/dist/services/receipt.js.map +1 -0
  317. package/dist/services/store.d.ts +16 -0
  318. package/dist/services/store.js +89 -0
  319. package/dist/services/store.js.map +1 -0
  320. package/dist/services/verification.d.ts +10 -0
  321. package/dist/services/verification.js +30 -0
  322. package/dist/services/verification.js.map +1 -0
  323. package/dist/types.d.ts +70 -0
  324. package/dist/types.js +2 -0
  325. package/dist/types.js.map +1 -0
  326. package/dist/utils.d.ts +11 -0
  327. package/dist/utils.js +54 -0
  328. package/dist/utils.js.map +1 -0
  329. package/dist/validators.d.ts +11 -0
  330. package/dist/validators.js +56 -0
  331. package/dist/validators.js.map +1 -0
  332. package/dist/xml.d.ts +2 -0
  333. package/dist/xml.js +11 -0
  334. package/dist/xml.js.map +1 -0
  335. package/package.json +56 -0
@@ -0,0 +1,467 @@
1
+ class BuilderBase {
2
+ values = {};
3
+ from(value) {
4
+ Object.assign(this.values, value);
5
+ return this;
6
+ }
7
+ }
8
+ export class CardDetails {
9
+ paymentAccountNumber;
10
+ paymentAccountReference;
11
+ cardProvider;
12
+ constructor(init = {}) {
13
+ Object.assign(this, init);
14
+ }
15
+ static builder() {
16
+ return new CardDetailsBuilder();
17
+ }
18
+ }
19
+ export class CardDetailsBuilder extends BuilderBase {
20
+ paymentAccountNumber(value) { this.values.paymentAccountNumber = value; return this; }
21
+ paymentAccountReference(value) { this.values.paymentAccountReference = value; return this; }
22
+ cardProvider(value) { this.values.cardProvider = value; return this; }
23
+ build() { return { ...this.values }; }
24
+ }
25
+ export class PaymentAccountDetails {
26
+ identifier;
27
+ identifierType;
28
+ constructor(init = {}) {
29
+ Object.assign(this, init);
30
+ }
31
+ static builder() {
32
+ return new PaymentAccountDetailsBuilder();
33
+ }
34
+ }
35
+ export class PaymentAccountDetailsBuilder extends BuilderBase {
36
+ identifier(value) { this.values.identifier = value; return this; }
37
+ identifierType(value) { this.values.identifierType = value; return this; }
38
+ build() { return { ...this.values }; }
39
+ }
40
+ export class IdentificationDetails {
41
+ paymentType;
42
+ cardDetails;
43
+ paymentAccountDetails;
44
+ paymentIds;
45
+ recipientEmail;
46
+ cheqiReceiptId;
47
+ pairingCode;
48
+ constructor(init = {}) {
49
+ Object.assign(this, init);
50
+ }
51
+ static builder() {
52
+ return new IdentificationDetailsBuilder();
53
+ }
54
+ getPaymentType() { return this.paymentType; }
55
+ getCardDetails() { return this.cardDetails; }
56
+ getPaymentAccountDetails() { return this.paymentAccountDetails; }
57
+ getPaymentIds() { return this.paymentIds; }
58
+ getRecipientEmail() { return this.recipientEmail; }
59
+ getCheqiReceiptId() { return this.cheqiReceiptId; }
60
+ getPairingCode() { return this.pairingCode; }
61
+ }
62
+ export class IdentificationDetailsBuilder extends BuilderBase {
63
+ paymentType(value) { this.values.paymentType = value; return this; }
64
+ cardDetails(value) { this.values.cardDetails = value; return this; }
65
+ paymentAccountDetails(value) { this.values.paymentAccountDetails = value; return this; }
66
+ paymentIds(value) { this.values.paymentIds = value; return this; }
67
+ recipientEmail(value) { this.values.recipientEmail = value; return this; }
68
+ cheqiReceiptId(value) { this.values.cheqiReceiptId = value; return this; }
69
+ pairingCode(value) { this.values.pairingCode = value; return this; }
70
+ build() { return new IdentificationDetails(this.values); }
71
+ }
72
+ export class NotificationDisplayCode {
73
+ type;
74
+ data;
75
+ constructor(init) {
76
+ this.type = init.type;
77
+ this.data = init.data;
78
+ }
79
+ static builder() {
80
+ return new NotificationDisplayCodeBuilder();
81
+ }
82
+ }
83
+ export class NotificationDisplayCodeBuilder extends BuilderBase {
84
+ type(value) { this.values.type = value; return this; }
85
+ data(value) { this.values.data = value; return this; }
86
+ build() { return new NotificationDisplayCode(this.values); }
87
+ }
88
+ export class Identifier {
89
+ value;
90
+ schemeID;
91
+ constructor(init = {}) {
92
+ Object.assign(this, init);
93
+ }
94
+ static builder() {
95
+ return new IdentifierBuilder();
96
+ }
97
+ }
98
+ export class IdentifierBuilder extends BuilderBase {
99
+ value(value) { this.values.value = value; return this; }
100
+ schemeID(value) { this.values.schemeID = value; return this; }
101
+ build() { return { ...this.values }; }
102
+ }
103
+ export class Period {
104
+ startDate;
105
+ endDate;
106
+ description;
107
+ constructor(init = {}) {
108
+ Object.assign(this, init);
109
+ }
110
+ static builder() {
111
+ return new PeriodBuilder();
112
+ }
113
+ }
114
+ export class PeriodBuilder extends BuilderBase {
115
+ startDate(value) { this.values.startDate = value; return this; }
116
+ endDate(value) { this.values.endDate = value; return this; }
117
+ description(value) { this.values.description = value; return this; }
118
+ build() { return { ...this.values }; }
119
+ }
120
+ export class Barcode {
121
+ type;
122
+ data;
123
+ label;
124
+ constructor(init = {}) {
125
+ Object.assign(this, init);
126
+ }
127
+ static builder() {
128
+ return new BarcodeBuilder();
129
+ }
130
+ }
131
+ export class BarcodeBuilder extends BuilderBase {
132
+ type(value) { this.values.type = value; return this; }
133
+ data(value) { this.values.data = value; return this; }
134
+ label(value) { this.values.label = value; return this; }
135
+ build() { return { ...this.values }; }
136
+ }
137
+ export class Tax {
138
+ rate;
139
+ type;
140
+ taxableAmount;
141
+ amount;
142
+ label;
143
+ constructor(init = {}) {
144
+ Object.assign(this, init);
145
+ }
146
+ static builder() {
147
+ return new TaxBuilder();
148
+ }
149
+ }
150
+ export class TaxBuilder extends BuilderBase {
151
+ rate(value) { this.values.rate = value; return this; }
152
+ type(value) { this.values.type = value; return this; }
153
+ taxableAmount(value) { this.values.taxableAmount = value; return this; }
154
+ amount(value) { this.values.amount = value; return this; }
155
+ label(value) { this.values.label = value; return this; }
156
+ build() { return { ...this.values }; }
157
+ }
158
+ export class Discount {
159
+ amount;
160
+ percentage;
161
+ label;
162
+ constructor(init = {}) {
163
+ Object.assign(this, init);
164
+ }
165
+ static builder() {
166
+ return new DiscountBuilder();
167
+ }
168
+ }
169
+ export class DiscountBuilder extends BuilderBase {
170
+ amount(value) { this.values.amount = value; return this; }
171
+ percentage(value) { this.values.percentage = value; return this; }
172
+ label(value) { this.values.label = value; return this; }
173
+ build() { return { ...this.values }; }
174
+ }
175
+ export class Charge {
176
+ amount;
177
+ percentage;
178
+ label;
179
+ constructor(init = {}) {
180
+ Object.assign(this, init);
181
+ }
182
+ static builder() {
183
+ return new ChargeBuilder();
184
+ }
185
+ }
186
+ export class ChargeBuilder extends BuilderBase {
187
+ amount(value) { this.values.amount = value; return this; }
188
+ percentage(value) { this.values.percentage = value; return this; }
189
+ label(value) { this.values.label = value; return this; }
190
+ build() { return { ...this.values }; }
191
+ }
192
+ export class Product {
193
+ name;
194
+ identifier;
195
+ description;
196
+ brandName;
197
+ quantity;
198
+ baseQuantity;
199
+ unitCode;
200
+ unitPrice;
201
+ discounts;
202
+ charges;
203
+ taxes;
204
+ subtotal;
205
+ total;
206
+ barcodes;
207
+ period;
208
+ constructor(init = {}) {
209
+ Object.assign(this, init);
210
+ }
211
+ static builder() {
212
+ return new ProductBuilder();
213
+ }
214
+ }
215
+ export class ProductBuilder extends BuilderBase {
216
+ name(value) { this.values.name = value; return this; }
217
+ identifier(value) { this.values.identifier = value; return this; }
218
+ description(value) { this.values.description = value; return this; }
219
+ brandName(value) { this.values.brandName = value; return this; }
220
+ quantity(value) { this.values.quantity = value; return this; }
221
+ baseQuantity(value) { this.values.baseQuantity = value; return this; }
222
+ unitCode(value) { this.values.unitCode = value; return this; }
223
+ unitPrice(value) { this.values.unitPrice = value; return this; }
224
+ discounts(value) { this.values.discounts = value; return this; }
225
+ charges(value) { this.values.charges = value; return this; }
226
+ taxes(value) { this.values.taxes = value; return this; }
227
+ subtotal(value) { this.values.subtotal = value; return this; }
228
+ total(value) { this.values.total = value; return this; }
229
+ barcodes(value) { this.values.barcodes = value; return this; }
230
+ period(value) { this.values.period = value; return this; }
231
+ addTax(rate, type, taxableAmount, amount) {
232
+ const existing = this.values.taxes ?? [];
233
+ this.values.taxes = [...existing, Tax.builder().rate(rate).type(type).taxableAmount(taxableAmount).amount(amount).build()];
234
+ return this;
235
+ }
236
+ addDiscount(amount, label, percentage) {
237
+ const existing = this.values.discounts ?? [];
238
+ this.values.discounts = [...existing, Discount.builder().amount(amount).label(label).percentage(percentage ?? 0).build()];
239
+ return this;
240
+ }
241
+ addCharge(amount, label, percentage) {
242
+ const existing = this.values.charges ?? [];
243
+ this.values.charges = [...existing, Charge.builder().amount(amount).label(label).percentage(percentage ?? 0).build()];
244
+ return this;
245
+ }
246
+ build() { return { ...this.values }; }
247
+ }
248
+ export class PaymentInfo {
249
+ paymentType;
250
+ paymentAccountReference;
251
+ cardIssuer;
252
+ cardBrand;
253
+ lastFourDigits;
254
+ paymentIds;
255
+ constructor(init = {}) { Object.assign(this, init); }
256
+ static builder() { return new PaymentInfoBuilder(); }
257
+ }
258
+ export class PaymentInfoBuilder extends BuilderBase {
259
+ paymentType(value) { this.values.paymentType = value; return this; }
260
+ paymentAccountReference(value) { this.values.paymentAccountReference = value; return this; }
261
+ cardIssuer(value) { this.values.cardIssuer = value; return this; }
262
+ cardBrand(value) { this.values.cardBrand = value; return this; }
263
+ lastFourDigits(value) { this.values.lastFourDigits = value; return this; }
264
+ paymentIds(value) { this.values.paymentIds = value; return this; }
265
+ build() { return new PaymentInfo(this.values); }
266
+ }
267
+ export class VatMetadata {
268
+ supplierCountry;
269
+ buyerCountry;
270
+ crossBorder;
271
+ buyerType;
272
+ vatOnReceipt;
273
+ vatRegime;
274
+ taxesApplied;
275
+ constructor(init = {}) { Object.assign(this, init); }
276
+ static builder() { return new VatMetadataBuilder(); }
277
+ }
278
+ export class VatMetadataBuilder extends BuilderBase {
279
+ supplierCountry(value) { this.values.supplierCountry = value; return this; }
280
+ buyerCountry(value) { this.values.buyerCountry = value; return this; }
281
+ crossBorder(value) { this.values.crossBorder = value; return this; }
282
+ buyerType(value) { this.values.buyerType = value; return this; }
283
+ vatOnReceipt(value) { this.values.vatOnReceipt = value; return this; }
284
+ vatRegime(value) { this.values.vatRegime = value; return this; }
285
+ taxesApplied(value) { this.values.taxesApplied = value; return this; }
286
+ build() { return { ...this.values }; }
287
+ }
288
+ export class ReceiptTemplateRequest {
289
+ childCompanyId;
290
+ documentNumber;
291
+ identifiers;
292
+ issueDate;
293
+ currency;
294
+ receiptSubtotal;
295
+ totalBeforeTax;
296
+ totalTaxAmount;
297
+ totalAmount;
298
+ products;
299
+ discounts;
300
+ charges;
301
+ taxes;
302
+ transactionDate;
303
+ purchaseDate;
304
+ period;
305
+ barcodes;
306
+ note;
307
+ constructor(init = {}) {
308
+ Object.assign(this, init);
309
+ }
310
+ static builder() {
311
+ return new ReceiptTemplateRequestBuilder();
312
+ }
313
+ }
314
+ export class ReceiptTemplateRequestBuilder extends BuilderBase {
315
+ childCompanyId(value) { this.values.childCompanyId = value; return this; }
316
+ documentNumber(value) { this.values.documentNumber = value; return this; }
317
+ identifiers(value) { this.values.identifiers = value; return this; }
318
+ issueDate(value) { this.values.issueDate = value; return this; }
319
+ currency(value) { this.values.currency = value; return this; }
320
+ receiptSubtotal(value) { this.values.receiptSubtotal = value; return this; }
321
+ totalBeforeTax(value) { this.values.totalBeforeTax = value; return this; }
322
+ totalTaxAmount(value) { this.values.totalTaxAmount = value; return this; }
323
+ totalAmount(value) { this.values.totalAmount = value; return this; }
324
+ products(value) { this.values.products = value; return this; }
325
+ discounts(value) { this.values.discounts = value; return this; }
326
+ charges(value) { this.values.charges = value; return this; }
327
+ taxes(value) { this.values.taxes = value; return this; }
328
+ transactionDate(value) { this.values.transactionDate = value; return this; }
329
+ purchaseDate(value) { this.values.purchaseDate = value; return this; }
330
+ period(value) { this.values.period = value; return this; }
331
+ barcodes(value) { this.values.barcodes = value; return this; }
332
+ note(value) { this.values.note = value; return this; }
333
+ addProduct(product) {
334
+ this.values.products = [...(this.values.products ?? []), product];
335
+ return this;
336
+ }
337
+ addTax(tax) {
338
+ this.values.taxes = [...(this.values.taxes ?? []), tax];
339
+ return this;
340
+ }
341
+ addDiscount(discount) {
342
+ this.values.discounts = [...(this.values.discounts ?? []), discount];
343
+ return this;
344
+ }
345
+ addCharge(charge) {
346
+ this.values.charges = [...(this.values.charges ?? []), charge];
347
+ return this;
348
+ }
349
+ build() { return new ReceiptTemplateRequest(this.values); }
350
+ }
351
+ export class ReceiptTemplateResponse {
352
+ ubl;
353
+ cheqi;
354
+ vatMetadata;
355
+ constructor(init = {}) {
356
+ Object.assign(this, init);
357
+ }
358
+ }
359
+ export class CompanyAddress {
360
+ streetName;
361
+ additionalStreetName;
362
+ addressLine;
363
+ region;
364
+ cityName;
365
+ postalZone;
366
+ countryIsoCode;
367
+ constructor(init = {}) { Object.assign(this, init); }
368
+ static builder() { return new CompanyAddressBuilder(); }
369
+ }
370
+ export class CompanyAddressBuilder extends BuilderBase {
371
+ streetName(value) { this.values.streetName = value; return this; }
372
+ additionalStreetName(value) { this.values.additionalStreetName = value; return this; }
373
+ addressLine(value) { this.values.addressLine = value; return this; }
374
+ region(value) { this.values.region = value; return this; }
375
+ cityName(value) { this.values.cityName = value; return this; }
376
+ postalZone(value) { this.values.postalZone = value; return this; }
377
+ countryIsoCode(value) { this.values.countryIsoCode = value; return this; }
378
+ build() { return new CompanyAddress(this.values); }
379
+ }
380
+ export class Company {
381
+ companyName;
382
+ companyLegalName;
383
+ chamberOfCommerceNumber;
384
+ taxNumber;
385
+ companyEmail;
386
+ phoneNumber;
387
+ website;
388
+ returnDays;
389
+ companyReceiptText;
390
+ companyLogoUrl;
391
+ address;
392
+ constructor(init = {}) { Object.assign(this, init); }
393
+ static builder() { return new CompanyBuilder(); }
394
+ toCompanyDTO() {
395
+ return {
396
+ companyName: this.companyName ?? "",
397
+ companyLegalName: this.companyLegalName ?? "",
398
+ taxNumber: this.taxNumber ?? "",
399
+ companyEmail: this.companyEmail ?? "",
400
+ address: {
401
+ streetName: this.address?.streetName ?? "",
402
+ cityName: this.address?.cityName ?? "",
403
+ postalZone: this.address?.postalZone ?? "",
404
+ countryIsoCode: this.address?.countryIsoCode ?? "",
405
+ additionalStreetName: this.address?.additionalStreetName,
406
+ addressLine: this.address?.addressLine,
407
+ region: this.address?.region,
408
+ },
409
+ phoneNumber: this.phoneNumber,
410
+ website: this.website,
411
+ returnDays: this.returnDays,
412
+ companyReceiptText: this.companyReceiptText,
413
+ };
414
+ }
415
+ }
416
+ export class CompanyBuilder extends BuilderBase {
417
+ companyName(value) { this.values.companyName = value; return this; }
418
+ companyLegalName(value) { this.values.companyLegalName = value; return this; }
419
+ chamberOfCommerceNumber(value) { this.values.chamberOfCommerceNumber = value; return this; }
420
+ taxNumber(value) { this.values.taxNumber = value; return this; }
421
+ companyEmail(value) { this.values.companyEmail = value; return this; }
422
+ phoneNumber(value) { this.values.phoneNumber = value; return this; }
423
+ website(value) { this.values.website = value; return this; }
424
+ returnDays(value) { this.values.returnDays = value; return this; }
425
+ companyReceiptText(value) { this.values.companyReceiptText = value; return this; }
426
+ companyLogoUrl(value) { this.values.companyLogoUrl = value; return this; }
427
+ address(value) { this.values.address = value; return this; }
428
+ build() { return new Company(this.values); }
429
+ }
430
+ export class CreateStoreRequest {
431
+ storeName;
432
+ storeCode;
433
+ address;
434
+ phoneNumber;
435
+ email;
436
+ openingHours;
437
+ constructor(init = {}) { Object.assign(this, init); }
438
+ static builder() { return new CreateStoreRequestBuilder(); }
439
+ toCreateStoreRequestDTO() {
440
+ return {
441
+ storeName: this.storeName ?? "",
442
+ storeCode: this.storeCode ?? "",
443
+ addressDto: {
444
+ streetName: this.address?.streetName ?? "",
445
+ cityName: this.address?.cityName ?? "",
446
+ postalZone: this.address?.postalZone ?? "",
447
+ countryIsoCode: this.address?.countryIsoCode ?? "",
448
+ additionalStreetName: this.address?.additionalStreetName,
449
+ addressLine: this.address?.addressLine,
450
+ region: this.address?.region,
451
+ },
452
+ phoneNumber: this.phoneNumber,
453
+ email: this.email,
454
+ openingHours: this.openingHours,
455
+ };
456
+ }
457
+ }
458
+ export class CreateStoreRequestBuilder extends BuilderBase {
459
+ storeName(value) { this.values.storeName = value; return this; }
460
+ storeCode(value) { this.values.storeCode = value; return this; }
461
+ address(value) { this.values.address = value; return this; }
462
+ phoneNumber(value) { this.values.phoneNumber = value; return this; }
463
+ email(value) { this.values.email = value; return this; }
464
+ openingHours(value) { this.values.openingHours = value; return this; }
465
+ build() { return new CreateStoreRequest(this.values); }
466
+ }
467
+ //# sourceMappingURL=domain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../../src/models/domain.ts"],"names":[],"mappings":"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"}