@wipperoz/wipperoz-core 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/README.md +35 -0
  2. package/bin/run-clean.js +53 -0
  3. package/dist/account/index.d.ts +2 -0
  4. package/dist/account/index.d.ts.map +1 -0
  5. package/dist/account/index.js +5 -0
  6. package/dist/account/index.js.map +1 -0
  7. package/dist/account/interfaces/accountRecord.interface.d.ts +9 -0
  8. package/dist/account/interfaces/accountRecord.interface.d.ts.map +1 -0
  9. package/dist/account/interfaces/accountRecord.interface.js +3 -0
  10. package/dist/account/interfaces/accountRecord.interface.js.map +1 -0
  11. package/dist/account/services/account.service.d.ts +9 -0
  12. package/dist/account/services/account.service.d.ts.map +1 -0
  13. package/dist/account/services/account.service.js +30 -0
  14. package/dist/account/services/account.service.js.map +1 -0
  15. package/dist/billing/constants.d.ts +39 -0
  16. package/dist/billing/constants.d.ts.map +1 -0
  17. package/dist/billing/constants.js +57 -0
  18. package/dist/billing/constants.js.map +1 -0
  19. package/dist/billing/enums/accountType.enum.d.ts +2 -0
  20. package/dist/billing/enums/accountType.enum.d.ts.map +1 -0
  21. package/dist/billing/enums/accountType.enum.js +6 -0
  22. package/dist/billing/enums/accountType.enum.js.map +1 -0
  23. package/dist/billing/enums/creditReason.enum.d.ts +7 -0
  24. package/dist/billing/enums/creditReason.enum.d.ts.map +1 -0
  25. package/dist/billing/enums/creditReason.enum.js +11 -0
  26. package/dist/billing/enums/creditReason.enum.js.map +1 -0
  27. package/dist/billing/enums/displayCurrency.enum.d.ts +2 -0
  28. package/dist/billing/enums/displayCurrency.enum.d.ts.map +1 -0
  29. package/dist/billing/enums/displayCurrency.enum.js +6 -0
  30. package/dist/billing/enums/displayCurrency.enum.js.map +1 -0
  31. package/dist/billing/enums/index.d.ts +8 -0
  32. package/dist/billing/enums/index.d.ts.map +1 -0
  33. package/dist/billing/enums/index.js +11 -0
  34. package/dist/billing/enums/index.js.map +1 -0
  35. package/dist/billing/enums/reasoningEffort.enum.d.ts +8 -0
  36. package/dist/billing/enums/reasoningEffort.enum.d.ts.map +1 -0
  37. package/dist/billing/enums/reasoningEffort.enum.js +12 -0
  38. package/dist/billing/enums/reasoningEffort.enum.js.map +1 -0
  39. package/dist/billing/enums/stripePaymentStatus.enum.d.ts +7 -0
  40. package/dist/billing/enums/stripePaymentStatus.enum.d.ts.map +1 -0
  41. package/dist/billing/enums/stripePaymentStatus.enum.js +11 -0
  42. package/dist/billing/enums/stripePaymentStatus.enum.js.map +1 -0
  43. package/dist/billing/enums/stripeRegion.enum.d.ts +2 -0
  44. package/dist/billing/enums/stripeRegion.enum.d.ts.map +1 -0
  45. package/dist/billing/enums/stripeRegion.enum.js +6 -0
  46. package/dist/billing/enums/stripeRegion.enum.js.map +1 -0
  47. package/dist/billing/enums/transactionType.enum.d.ts +8 -0
  48. package/dist/billing/enums/transactionType.enum.d.ts.map +1 -0
  49. package/dist/billing/enums/transactionType.enum.js +12 -0
  50. package/dist/billing/enums/transactionType.enum.js.map +1 -0
  51. package/dist/billing/index.d.ts +3 -0
  52. package/dist/billing/index.d.ts.map +1 -0
  53. package/dist/billing/index.js +6 -0
  54. package/dist/billing/index.js.map +1 -0
  55. package/dist/billing/interfaces/addCreditsResult.interface.d.ts +7 -0
  56. package/dist/billing/interfaces/addCreditsResult.interface.d.ts.map +1 -0
  57. package/dist/billing/interfaces/addCreditsResult.interface.js +3 -0
  58. package/dist/billing/interfaces/addCreditsResult.interface.js.map +1 -0
  59. package/dist/billing/interfaces/aiRequestBillingResponse.interface.d.ts +30 -0
  60. package/dist/billing/interfaces/aiRequestBillingResponse.interface.d.ts.map +1 -0
  61. package/dist/billing/interfaces/aiRequestBillingResponse.interface.js +3 -0
  62. package/dist/billing/interfaces/aiRequestBillingResponse.interface.js.map +1 -0
  63. package/dist/billing/interfaces/autoTopUpCheckResult.interface.d.ts +6 -0
  64. package/dist/billing/interfaces/autoTopUpCheckResult.interface.d.ts.map +1 -0
  65. package/dist/billing/interfaces/autoTopUpCheckResult.interface.js +3 -0
  66. package/dist/billing/interfaces/autoTopUpCheckResult.interface.js.map +1 -0
  67. package/dist/billing/interfaces/autoTopUpMessage.interface.d.ts +15 -0
  68. package/dist/billing/interfaces/autoTopUpMessage.interface.d.ts.map +1 -0
  69. package/dist/billing/interfaces/autoTopUpMessage.interface.js +3 -0
  70. package/dist/billing/interfaces/autoTopUpMessage.interface.js.map +1 -0
  71. package/dist/billing/interfaces/balanceResponse.interface.d.ts +9 -0
  72. package/dist/billing/interfaces/balanceResponse.interface.d.ts.map +1 -0
  73. package/dist/billing/interfaces/balanceResponse.interface.js +3 -0
  74. package/dist/billing/interfaces/balanceResponse.interface.js.map +1 -0
  75. package/dist/billing/interfaces/billing.interface.d.ts +2 -0
  76. package/dist/billing/interfaces/billing.interface.d.ts.map +1 -0
  77. package/dist/billing/interfaces/billing.interface.js +3 -0
  78. package/dist/billing/interfaces/billing.interface.js.map +1 -0
  79. package/dist/billing/interfaces/canAffordResult.interface.d.ts +6 -0
  80. package/dist/billing/interfaces/canAffordResult.interface.d.ts.map +1 -0
  81. package/dist/billing/interfaces/canAffordResult.interface.js +3 -0
  82. package/dist/billing/interfaces/canAffordResult.interface.js.map +1 -0
  83. package/dist/billing/interfaces/chargeResult.interface.d.ts +7 -0
  84. package/dist/billing/interfaces/chargeResult.interface.d.ts.map +1 -0
  85. package/dist/billing/interfaces/chargeResult.interface.js +3 -0
  86. package/dist/billing/interfaces/chargeResult.interface.js.map +1 -0
  87. package/dist/billing/interfaces/costBreakdown.interface.d.ts +9 -0
  88. package/dist/billing/interfaces/costBreakdown.interface.d.ts.map +1 -0
  89. package/dist/billing/interfaces/costBreakdown.interface.js +3 -0
  90. package/dist/billing/interfaces/costBreakdown.interface.js.map +1 -0
  91. package/dist/billing/interfaces/creditTransaction.interface.d.ts +28 -0
  92. package/dist/billing/interfaces/creditTransaction.interface.d.ts.map +1 -0
  93. package/dist/billing/interfaces/creditTransaction.interface.js +3 -0
  94. package/dist/billing/interfaces/creditTransaction.interface.js.map +1 -0
  95. package/dist/billing/interfaces/depositMetadata.interface.d.ts +10 -0
  96. package/dist/billing/interfaces/depositMetadata.interface.d.ts.map +1 -0
  97. package/dist/billing/interfaces/depositMetadata.interface.js +3 -0
  98. package/dist/billing/interfaces/depositMetadata.interface.js.map +1 -0
  99. package/dist/billing/interfaces/iAccountCreditManager.interface.d.ts +43 -0
  100. package/dist/billing/interfaces/iAccountCreditManager.interface.d.ts.map +1 -0
  101. package/dist/billing/interfaces/iAccountCreditManager.interface.js +3 -0
  102. package/dist/billing/interfaces/iAccountCreditManager.interface.js.map +1 -0
  103. package/dist/billing/interfaces/iCostCalculator.interface.d.ts +7 -0
  104. package/dist/billing/interfaces/iCostCalculator.interface.d.ts.map +1 -0
  105. package/dist/billing/interfaces/iCostCalculator.interface.js +3 -0
  106. package/dist/billing/interfaces/iCostCalculator.interface.js.map +1 -0
  107. package/dist/billing/interfaces/index.d.ts +16 -0
  108. package/dist/billing/interfaces/index.d.ts.map +1 -0
  109. package/dist/billing/interfaces/index.js +19 -0
  110. package/dist/billing/interfaces/index.js.map +1 -0
  111. package/dist/billing/interfaces/initialCreditResult.interface.d.ts +7 -0
  112. package/dist/billing/interfaces/initialCreditResult.interface.d.ts.map +1 -0
  113. package/dist/billing/interfaces/initialCreditResult.interface.js +3 -0
  114. package/dist/billing/interfaces/initialCreditResult.interface.js.map +1 -0
  115. package/dist/billing/interfaces/requestCostParams.interface.d.ts +7 -0
  116. package/dist/billing/interfaces/requestCostParams.interface.d.ts.map +1 -0
  117. package/dist/billing/interfaces/requestCostParams.interface.js +3 -0
  118. package/dist/billing/interfaces/requestCostParams.interface.js.map +1 -0
  119. package/dist/billing/interfaces/stripePayment.interface.d.ts +29 -0
  120. package/dist/billing/interfaces/stripePayment.interface.d.ts.map +1 -0
  121. package/dist/billing/interfaces/stripePayment.interface.js +3 -0
  122. package/dist/billing/interfaces/stripePayment.interface.js.map +1 -0
  123. package/dist/billing/interfaces/transactionHistory.interface.d.ts +16 -0
  124. package/dist/billing/interfaces/transactionHistory.interface.d.ts.map +1 -0
  125. package/dist/billing/interfaces/transactionHistory.interface.js +3 -0
  126. package/dist/billing/interfaces/transactionHistory.interface.js.map +1 -0
  127. package/dist/billing/interfaces/triggeredBy.interface.d.ts +1 -0
  128. package/dist/billing/interfaces/triggeredBy.interface.d.ts.map +1 -0
  129. package/dist/billing/interfaces/triggeredBy.interface.js +2 -0
  130. package/dist/billing/interfaces/triggeredBy.interface.js.map +1 -0
  131. package/dist/billing/interfaces/usageMetadata.interface.d.ts +12 -0
  132. package/dist/billing/interfaces/usageMetadata.interface.d.ts.map +1 -0
  133. package/dist/billing/interfaces/usageMetadata.interface.js +3 -0
  134. package/dist/billing/interfaces/usageMetadata.interface.js.map +1 -0
  135. package/dist/billing/services/accountCreditManager.service.d.ts +81 -0
  136. package/dist/billing/services/accountCreditManager.service.d.ts.map +1 -0
  137. package/dist/billing/services/accountCreditManager.service.js +658 -0
  138. package/dist/billing/services/accountCreditManager.service.js.map +1 -0
  139. package/dist/billing/services/costCalculator.service.d.ts +36 -0
  140. package/dist/billing/services/costCalculator.service.d.ts.map +1 -0
  141. package/dist/billing/services/costCalculator.service.js +100 -0
  142. package/dist/billing/services/costCalculator.service.js.map +1 -0
  143. package/dist/billing/services/tokenFormatter.d.ts +10 -0
  144. package/dist/billing/services/tokenFormatter.d.ts.map +1 -0
  145. package/dist/billing/services/tokenFormatter.js +27 -0
  146. package/dist/billing/services/tokenFormatter.js.map +1 -0
  147. package/dist/billing/utils.d.ts +8 -0
  148. package/dist/billing/utils.d.ts.map +1 -0
  149. package/dist/billing/utils.js +33 -0
  150. package/dist/billing/utils.js.map +1 -0
  151. package/dist/index.d.ts +3 -0
  152. package/dist/index.d.ts.map +1 -0
  153. package/dist/index.js +6 -0
  154. package/dist/index.js.map +1 -0
  155. package/dist/tsconfig.tsbuildinfo +1 -0
  156. package/package.json +196 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accountCreditManager.service.js","sourceRoot":"","sources":["../../../src/billing/services/accountCreditManager.service.ts"],"names":[],"mappings":";;;AAgBA,qEAA+D;AAC/D,oDAAkE;AAClE,4CAAsD;AACtD,oCAAsC;AAEtC,oCAAoF;AAIpF,4EAAsE;AAEtE,MAAa,2BAA2B;IAC9B,EAAE,CAAkB;IACpB,SAAS,CAAS;IAClB,cAAc,CAAwB;IACtC,SAAS,CAAY;IACrB,iBAAiB,CAAS;IAC1B,cAAc,CAAiB;IAEvC,YACE,EAAmB,EACnB,SAAiB,EACjB,SAAoB,EACpB,iBAAyB,EACzB,cAAsC,EACtC,cAA+B;QAE/B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,IAAI,8CAAqB,EAAE,CAAC;QACpE,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,IAAI,gCAAc,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,QAAuC;QAEvC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;YAC/C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,gBAAgB,GAA4B,EAAE,CAAC;QAErD,IAAI,QAAQ,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACrD,iBAAiB,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;YAC3G,gBAAgB,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC,yBAAyB,CAAC;QACzE,CAAC;QAED,IAAI,QAAQ,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC/C,iBAAiB,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;YAChG,gBAAgB,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,mBAAmB,CAAC;QAC9D,CAAC;QAED,IAAI,QAAQ,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAChD,iBAAiB,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;YACvG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC;QACrE,CAAC;QAED,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACvC,iBAAiB,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YAC5F,gBAAgB,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;gBACD,gBAAgB,EAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACvD,yBAAyB,EAAE,gBAAgB;aAC5C,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAC1B,SAAiB,EACjB,QAAmC;QAEnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;YAC/C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,gBAAgB,GAA4B,EAAE,CAAC;QAErD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC/C,iBAAiB,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YACxG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,mBAAmB,CAAC;QACpE,CAAC;QAED,IAAI,QAAQ,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;YACvD,iBAAiB,CAAC,IAAI,CAAC,yFAAyF,CAAC,CAAC;YAClH,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,QAAQ,CAAC,2BAA2B,CAAC;QAC9E,CAAC;QAED,IAAI,QAAQ,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;YACnD,iBAAiB,CAAC,IAAI,CAAC,uFAAuF,CAAC,CAAC;YAChH,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,QAAQ,CAAC,uBAAuB,CAAC;QAC5E,CAAC;QAED,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC1C,iBAAiB,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;YACpG,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;gBACD,gBAAgB,EAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACvD,yBAAyB,EAAE,gBAAgB;aAC5C,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAiB,EAAE,UAAkB;QAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;YAC/C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;gBACD,gBAAgB,EAAE,qEAAqE;gBACvF,yBAAyB,EAAE;oBACzB,aAAa,EAAE,UAAU;iBAC1B;aACF,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,SAAiB,EACjB,eAAuB;QAEvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;YAC/C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;gBACD,gBAAgB,EAAE,sFAAsF;gBACxG,yBAAyB,EAAE;oBACzB,kBAAkB,EAAE,eAAe;iBACpC;aACF,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;YAC/C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;gBACD,gBAAgB,EACd,0JAA0J;gBAC5J,yBAAyB,EAAE;oBACzB,OAAO,EAAE,CAAC;iBACX;aACF,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAEpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,EAAC,OAAO,EAAC,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QAElD,OAAO;YACL,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC;YAC1C,gBAAgB,EAAE,IAAA,oBAAY,EAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC;YAC3D,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,IAAI,CAAC;YAChD,oBAAoB,EAAE,OAAO,EAAE,oBAAoB,IAAI,CAAC;YACxD,eAAe,EAAE,OAAO,EAAE,eAAe,IAAI,2BAAmB,CAAC,GAAG;SACrE,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAiB,EAAE,mBAA2B;QACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAEjD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,IAAI,mBAAmB,CAAC;QAC/D,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;QAE5F,OAAO;YACL,SAAS;YACT,oBAAoB,EAAE,OAAO,CAAC,aAAa;YAC3C,eAAe;SAChB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,SAAiB,EACjB,IAAmB,EACnB,WAAmB,EACnB,QAA8C;QAE9C,MAAM,aAAa,GAAG,uBAAW,CAAC,qBAAqB,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,uBAAW,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAEzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,CAAC;gBACnB,aAAa;gBACb,KAAK,EAAE,mBAAmB;aAC3B,CAAC;QACJ,CAAC;QAED,MAAM,EAAC,OAAO,EAAC,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC;QAE1C,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,GAAG,YAAY,EAAE,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC;gBAC7C,aAAa;gBACb,KAAK,EAAE,sBAAsB;aAC9B,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAKb,CAAC;QAEd,IAAI,QAAQ,EAAE,mBAAmB,IAAI,QAAQ,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,iBAAiB,GAAG,QAAQ,CAAC,uBAAuB,IAAI,CAAC,CAAC;YAChE,MAAM,cAAc,GAAG,iBAAiB,GAAG,YAAY,CAAC;YAExD,IAAI,cAAc,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC;gBAClD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,gBAAgB,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC;oBAC7C,aAAa;oBACb,KAAK,EAAE,yBAAyB;iBACjC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,GAAG,YAAY,CAAC;QAEhE,MAAM,kBAAkB,GAA6B;YACnD,aAAa;YACb,IAAI,EAAE,2BAAmB,CAAC,KAAK;YAC/B,YAAY,EAAE,YAAY;YAC1B,SAAS;YACT,WAAW;YACX,aAAa,EAAE;gBACb,GAAG,QAAQ;gBACX,aAAa,EAAE,IAAI;aACpB;SACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;gBAC1B,aAAa,EAAE;oBACb;wBACE,MAAM,EAAE;4BACN,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,GAAG,EAAE;gCACH,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;6BACnB;4BACD,gBAAgB,EAAE;;;;;eAKjB;4BACD,mBAAmB,EAAE,0DAA0D;4BAC/E,yBAAyB,EAAE;gCACzB,aAAa,EAAE,UAAU;gCACzB,SAAS,EAAE,YAAY;gCACvB,YAAY,EAAE,SAAS;gCACvB,OAAO,EAAE,CAAC;6BACX;yBACF;qBACF;oBACD;wBACE,GAAG,EAAE;4BACH,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,IAAI,EAAE;gCACJ,IAAI,EAAE,uBAAW,CAAC,WAAW,CAAC,SAAS,CAAC;gCACxC,IAAI,EAAE,uBAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;gCACtD,OAAO,EAAE,kBAAkB;gCAC3B,GAAG,EAAE,GAAG;6BACT;yBACF;qBACF;iBACF;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,gBAAgB,EAAE,UAAU;gBAC5B,aAAa;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACnF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC;gBAC7C,aAAa;gBACb,KAAK,EAAE,YAAY;aACpB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,MAAc,EAAE,eAAgC;QAClF,MAAM,aAAa,GAAG,uBAAW,CAAC,qBAAqB,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,CAAC;gBACnB,aAAa;gBACb,KAAK,EAAE,mBAAmB;aAC3B,CAAC;QACJ,CAAC;QAED,MAAM,EAAC,OAAO,EAAC,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QAClD,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC;QAE1D,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,2BAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,2BAAmB,CAAC,OAAO,CAAC;QAEnH,MAAM,kBAAkB,GAA6B;YACnD,aAAa;YACb,IAAI,EAAE,eAAe;YACrB,YAAY,EAAE,MAAM;YACpB,SAAS;YACT,WAAW,EAAE,eAAe,KAAK,2BAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YACnF,eAAe;SAChB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;gBAC1B,aAAa,EAAE;oBACb;wBACE,MAAM,EAAE;4BACN,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,GAAG,EAAE;gCACH,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;6BACnB;4BACD,gBAAgB,EAAE;;;;;eAKjB;4BACD,yBAAyB,EAAE;gCACzB,aAAa,EAAE,UAAU;gCACzB,SAAS,EAAE,MAAM;gCACjB,YAAY,EAAE,SAAS;gCACvB,aAAa,EAAE,KAAK;6BACrB;yBACF;qBACF;oBACD;wBACE,GAAG,EAAE;4BACH,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,IAAI,EAAE;gCACJ,IAAI,EAAE,uBAAW,CAAC,WAAW,CAAC,SAAS,CAAC;gCACxC,IAAI,EAAE,uBAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;gCACtD,OAAO,EAAE,kBAAkB;gCAC3B,sBAAsB;6BACvB;yBACF;qBACF;iBACF;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,gBAAgB,EAAE,UAAU;gBAC5B,aAAa;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACnF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC;gBAC7C,aAAa;gBACb,KAAK,EAAE,YAAY;aACpB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,MAAM,aAAa,GAAG,uBAAW,CAAC,qBAAqB,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,uBAAW,CAAC,mBAAmB,CAAC;QAEtD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB;aAC3B,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,oBAAoB,EAAE,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK,EAAE,kBAAkB;aACnC,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,GAAG,aAAa,CAAC;QAEjG,MAAM,kBAAkB,GAA6B;YACnD,aAAa;YACb,IAAI,EAAE,2BAAmB,CAAC,cAAc;YACxC,YAAY,EAAE,aAAa;YAC3B,SAAS;YACT,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,wBAAgB,CAAC,cAAc;SACxC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;gBAC1B,aAAa,EAAE;oBACb;wBACE,MAAM,EAAE;4BACN,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,GAAG,EAAE;gCACH,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;6BACnB;4BACD,gBAAgB,EAAE;;;eAGjB;4BACD,mBAAmB,EACjB,6IAA6I;4BAC/I,yBAAyB,EAAE;gCACzB,aAAa,EAAE,UAAU;gCACzB,UAAU,EAAE,IAAI;gCAChB,QAAQ,EAAE,KAAK;6BAChB;yBACF;qBACF;oBACD;wBACE,GAAG,EAAE;4BACH,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,IAAI,EAAE;gCACJ,IAAI,EAAE,uBAAW,CAAC,WAAW,CAAC,SAAS,CAAC;gCACxC,IAAI,EAAE,uBAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;gCACtD,OAAO,EAAE,kBAAkB;6BAC5B;yBACF;qBACF;iBACF;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,IAAI;gBACb,aAAa;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACnF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;aACpB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAAC,SAAiB;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAC,CAAC;QACzD,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC;QAExD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAC,CAAC;QAClE,CAAC;QAED,MAAM,EAAC,SAAS,EAAE,MAAM,EAAC,GAAG,OAAO,CAAC;QAEpC,mBAAmB;QACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,sBAAsB,EAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;YACvD,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAC,CAAC;QAC/D,CAAC;QAED,IAAI,SAAS,EAAE,cAAc,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAC,CAAC;QAChE,CAAC;QAED,IAAI,SAAS,CAAC,WAAW,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YAC1E,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YAC1D,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAC,CAAC;QACpE,CAAC;QAED,oBAAoB;QACpB,IAAI,SAAS,CAAC,sBAAsB,EAAE,CAAC;YACrC,MAAM,WAAW,GACf,CAAC,SAAS,CAAC,wBAAwB,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,sBAAsB,CAAC;YAExG,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,OAAO,GAAqB;YAChC,SAAS;YACT,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,gBAAgB,EAAE,MAAM,CAAC,UAAU;YACnC,qBAAqB,EAAE,MAAM,CAAC,sBAAsB;YACpD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,oBAAoB,EAAE,OAAO,CAAC,aAAa;YAC3C,eAAe,EAAE,SAAS,CAAC,eAAe;YAC1C,aAAa,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3E,CAAC;QAEF,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CACvB,IAAI,+BAAkB,CAAC;YACrB,QAAQ,EAAE,IAAI,CAAC,iBAAiB;YAChC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACrC,CAAC,CACH,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,SAAS,CAAC,YAAY;SACrC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,KAAK,GAAG,EAAE,EAAE,MAAe;QACxE,MAAM,iBAAiB,GAAG,MAAM;YAC9B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAA6B;YACnF,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACjC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,sBAAsB,EAAE,uCAAuC;YAC/D,yBAAyB,EAAE;gBACzB,KAAK,EAAE,uBAAW,CAAC,WAAW,CAAC,SAAS,CAAC;gBACzC,KAAK,EAAE,aAAa;aACrB;YACD,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE,KAAK,GAAG,CAAC;YAChB,GAAG,CAAC,iBAAiB,IAAI,EAAC,iBAAiB,EAAE,iBAAiB,EAAC,CAAC;SACjE,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;QACrC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACpD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAmC,CAAC;YACzD,OAAO;gBACL,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,eAAe,EAAE,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC;gBACtD,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;aACrD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GACd,OAAO,IAAI,MAAM,EAAE,gBAAgB;YACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzE,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,YAAY;YACZ,OAAO;YACP,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAC3B,SAAiB,EACjB,QAAoC;QAEpC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC5E,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAC,CAAC;QAC/D,CAAC;QAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,gBAAgB,GAA4B,EAAE,CAAC;QAErD,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACnC,iBAAiB,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;YACvF,gBAAgB,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC;YAEhD,uBAAuB;YACvB,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACzC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,uBAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC3C,iBAAiB,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;YACjG,gBAAgB,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC;QAC5D,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACxC,iBAAiB,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;YAC3F,gBAAgB,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC;QACtD,CAAC;QAED,IAAI,QAAQ,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YAClD,iBAAiB,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;YACzG,gBAAgB,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,sBAAsB,CAAC;QACpE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE;oBACH,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,qCAAqC;oBACjE,IAAI,EAAE,eAAe,CAAC,IAAI;iBAC3B;gBACD,gBAAgB,EAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACvD,yBAAyB,EAAE,gBAAgB;aAC5C,CAAC,CAAC;YAEH,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAEtE,uBAAuB,CAAC,OAAiC;QAC/D,MAAM,QAAQ,GAAG;YACf,2BAAmB,CAAC,OAAO;YAC3B,2BAAmB,CAAC,cAAc;YAClC,2BAAmB,CAAC,UAAU;SAC/B,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAClC,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,SAAS,CAAC;IACjD,CAAC;IAEO,yBAAyB,CAAC,OAAiC;QACjE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,2BAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO,IAAI,YAAY,CAAC;gBAC/D,OAAO,cAAc,OAAO,EAAE,CAAC;YACjC,CAAC;YACD,KAAK,2BAAmB,CAAC,OAAO;gBAC9B,OAAO,0BAA0B,CAAC;YACpC,KAAK,2BAAmB,CAAC,UAAU;gBACjC,OAAO,wBAAwB,CAAC;YAClC,KAAK,2BAAmB,CAAC,cAAc;gBACrC,OAAO,gBAAgB,CAAC;YAC1B;gBACE,OAAO,aAAa,CAAC;QACzB,CAAC;IACH,CAAC;CACF;AA3vBD,kEA2vBC"}
@@ -0,0 +1,36 @@
1
+ import { COST_CONFIG } from '../constants';
2
+ import { ICostCalculator, CostBreakdown, RequestCostParams } from '../interfaces';
3
+ export declare class CostCalculatorService implements ICostCalculator {
4
+ private config;
5
+ constructor(configOverrides?: Partial<typeof COST_CONFIG>);
6
+ /**
7
+ * Calculate GPT-5.1 API cost in tokens
8
+ * (AI tokens in, billing tokens out)
9
+ */
10
+ private calculateApiCost;
11
+ /**
12
+ * Calculate AWS infrastructure cost in tokens
13
+ */
14
+ private calculateInfraCost;
15
+ /**
16
+ * Calculate operational overhead cost in tokens
17
+ */
18
+ private calculateOpsCost;
19
+ /**
20
+ * Calculate payment processing cost in tokens (amortized Stripe fees)
21
+ */
22
+ private calculatePaymentCost;
23
+ /**
24
+ * Calculate complete cost breakdown for a request
25
+ */
26
+ calculateRequestCost(params: RequestCostParams): CostBreakdown;
27
+ /**
28
+ * Estimate cost before making API call (conservative, no caching assumed)
29
+ */
30
+ estimateRequestCost(estimatedInputTokens: number, maxOutputTokens: number): CostBreakdown;
31
+ /**
32
+ * Get breakdown summary for logging
33
+ */
34
+ getBreakdownSummary(breakdown: CostBreakdown): string;
35
+ }
36
+ //# sourceMappingURL=costCalculator.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"costCalculator.service.d.ts","sourceRoot":"","sources":["../../../src/billing/services/costCalculator.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AACzC,OAAO,EAAC,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAEhF,qBAAa,qBAAsB,YAAW,eAAe;IAC3D,OAAO,CAAC,MAAM,CAAqB;gBAEvB,eAAe,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC;IAIzD;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,aAAa;IAuB9D;;OAEG;IACH,mBAAmB,CAAC,oBAAoB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,aAAa;IAQzF;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM;CAUtD"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CostCalculatorService = void 0;
4
+ const constants_1 = require("../constants");
5
+ class CostCalculatorService {
6
+ config;
7
+ constructor(configOverrides) {
8
+ this.config = { ...constants_1.COST_CONFIG, ...configOverrides };
9
+ }
10
+ /**
11
+ * Calculate GPT-5.1 API cost in tokens
12
+ * (AI tokens in, billing tokens out)
13
+ */
14
+ calculateApiCost(inputTokens, outputTokens, cachedTokens = 0) {
15
+ const { gpt51 } = this.config;
16
+ const newInputTokens = Math.max(0, inputTokens - cachedTokens);
17
+ const newInputCost = (newInputTokens / 1_000_000) * gpt51.inputPerMillion;
18
+ const cachedInputCost = (cachedTokens / 1_000_000) * gpt51.cachedInputPerMillion;
19
+ const outputCost = (outputTokens / 1_000_000) * gpt51.outputPerMillion;
20
+ // Convert dollars to tokens (1 token = $0.01)
21
+ return Math.ceil((newInputCost + cachedInputCost + outputCost) * 100);
22
+ }
23
+ /**
24
+ * Calculate AWS infrastructure cost in tokens
25
+ */
26
+ calculateInfraCost() {
27
+ const { infrastructure } = this.config;
28
+ const totalDollars = infrastructure.lambda +
29
+ infrastructure.dynamodb +
30
+ infrastructure.apiGateway +
31
+ infrastructure.cloudwatch +
32
+ infrastructure.sqs;
33
+ return Math.ceil(totalDollars * 100);
34
+ }
35
+ /**
36
+ * Calculate operational overhead cost in tokens
37
+ */
38
+ calculateOpsCost(monthlyVolume) {
39
+ const { operations } = this.config;
40
+ const volume = monthlyVolume ?? operations.estimatedMonthlyRequests;
41
+ const perRequestDollars = operations.monthlyTotal / volume;
42
+ return Math.ceil(perRequestDollars * 100);
43
+ }
44
+ /**
45
+ * Calculate payment processing cost in tokens (amortized Stripe fees)
46
+ */
47
+ calculatePaymentCost() {
48
+ const { payment } = this.config;
49
+ const avgTopUpDollars = payment.avgTopUpTokens / 100;
50
+ const feePerTopUp = avgTopUpDollars * payment.stripePercentage + payment.stripeFixed;
51
+ const perRequestDollars = feePerTopUp / payment.avgRequestsPerTopUp;
52
+ return Math.ceil(perRequestDollars * 100);
53
+ }
54
+ /**
55
+ * Calculate complete cost breakdown for a request
56
+ */
57
+ calculateRequestCost(params) {
58
+ const { inputTokens, outputTokens, cachedTokens = 0, monthlyVolume } = params;
59
+ const apiCostTokens = this.calculateApiCost(inputTokens, outputTokens, cachedTokens);
60
+ const infraCostTokens = this.calculateInfraCost();
61
+ const opsCostTokens = this.calculateOpsCost(monthlyVolume);
62
+ const paymentCostTokens = this.calculatePaymentCost();
63
+ const totalCostTokens = apiCostTokens + infraCostTokens + opsCostTokens + paymentCostTokens;
64
+ // Apply profit margin: userPrice = totalCost / (1 - margin)
65
+ const userPriceTokens = Math.ceil(totalCostTokens / (1 - this.config.profitMargin));
66
+ return {
67
+ apiCostTokens,
68
+ infraCostTokens,
69
+ opsCostTokens,
70
+ paymentCostTokens,
71
+ totalCostTokens,
72
+ userPriceTokens,
73
+ };
74
+ }
75
+ /**
76
+ * Estimate cost before making API call (conservative, no caching assumed)
77
+ */
78
+ estimateRequestCost(estimatedInputTokens, maxOutputTokens) {
79
+ return this.calculateRequestCost({
80
+ inputTokens: estimatedInputTokens,
81
+ outputTokens: maxOutputTokens,
82
+ cachedTokens: 0,
83
+ });
84
+ }
85
+ /**
86
+ * Get breakdown summary for logging
87
+ */
88
+ getBreakdownSummary(breakdown) {
89
+ return [
90
+ `API: ${breakdown.apiCostTokens}`,
91
+ `Infra: ${breakdown.infraCostTokens}`,
92
+ `Ops: ${breakdown.opsCostTokens}`,
93
+ `Payment: ${breakdown.paymentCostTokens}`,
94
+ `Total: ${breakdown.totalCostTokens}`,
95
+ `Price: ${breakdown.userPriceTokens}`,
96
+ ].join(' | ');
97
+ }
98
+ }
99
+ exports.CostCalculatorService = CostCalculatorService;
100
+ //# sourceMappingURL=costCalculator.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"costCalculator.service.js","sourceRoot":"","sources":["../../../src/billing/services/costCalculator.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { DisplayCurrencyEnum } from '../enums';
2
+ export declare class TokenFormatter {
3
+ static format(tokens: number): string;
4
+ static formatWithSign(tokens: number, isCredit: boolean): string;
5
+ static formatWithCurrency(tokens: number, currency: DisplayCurrencyEnum): string;
6
+ static toDisplayCurrency(tokens: number, currency: DisplayCurrencyEnum): string;
7
+ static fromCents(cents: number): number;
8
+ static toCents(tokens: number): number;
9
+ }
10
+ //# sourceMappingURL=tokenFormatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenFormatter.d.ts","sourceRoot":"","sources":["../../../src/billing/services/tokenFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAS7C,qBAAa,cAAc;IACzB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAIrC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAKhE,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAIhF,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAI/E,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIvC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGvC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TokenFormatter = void 0;
4
+ const utils_1 = require("../utils");
5
+ class TokenFormatter {
6
+ static format(tokens) {
7
+ return (0, utils_1.formatTokens)(tokens);
8
+ }
9
+ static formatWithSign(tokens, isCredit) {
10
+ const sign = isCredit ? '+' : '-';
11
+ return `${sign}${Math.abs(tokens)} token${Math.abs(tokens) !== 1 ? 's' : ''}`;
12
+ }
13
+ static formatWithCurrency(tokens, currency) {
14
+ return (0, utils_1.formatTokensWithCurrency)(tokens, currency);
15
+ }
16
+ static toDisplayCurrency(tokens, currency) {
17
+ return (0, utils_1.tokensToDisplayCurrency)(tokens, currency);
18
+ }
19
+ static fromCents(cents) {
20
+ return (0, utils_1.currencyCentsToTokens)(cents);
21
+ }
22
+ static toCents(tokens) {
23
+ return (0, utils_1.tokensToCurrencyCents)(tokens);
24
+ }
25
+ }
26
+ exports.TokenFormatter = TokenFormatter;
27
+ //# sourceMappingURL=tokenFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenFormatter.js","sourceRoot":"","sources":["../../../src/billing/services/tokenFormatter.ts"],"names":[],"mappings":";;;AACA,oCAMkB;AAElB,MAAa,cAAc;IACzB,MAAM,CAAC,MAAM,CAAC,MAAc;QAC1B,OAAO,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAc,EAAE,QAAiB;QACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAClC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,MAAc,EAAE,QAA6B;QACrE,OAAO,IAAA,gCAAwB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,MAAc,EAAE,QAA6B;QACpE,OAAO,IAAA,+BAAuB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAa;QAC5B,OAAO,IAAA,6BAAqB,EAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,MAAc;QAC3B,OAAO,IAAA,6BAAqB,EAAC,MAAM,CAAC,CAAC;IACvC,CAAC;CACF;AAzBD,wCAyBC"}
@@ -0,0 +1,8 @@
1
+ import { DisplayCurrencyEnum } from './enums';
2
+ export declare const formatTokens: (tokens: number) => string;
3
+ export declare const formatTokensWithSign: (tokens: number) => string;
4
+ export declare const formatTokensWithCurrency: (tokens: number, currency: DisplayCurrencyEnum) => string;
5
+ export declare const tokensToDisplayCurrency: (tokens: number, currency: DisplayCurrencyEnum) => string;
6
+ export declare const currencyCentsToTokens: (cents: number) => number;
7
+ export declare const tokensToCurrencyCents: (tokens: number) => number;
8
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/billing/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,KAAG,MAE7C,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,KAAG,MAGrD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,EAAE,UAAU,mBAAmB,KAAG,MAIxF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,QAAQ,MAAM,EAAE,UAAU,mBAAmB,KAAG,MAGvF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,MAErD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,KAAG,MAEtD,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tokensToCurrencyCents = exports.currencyCentsToTokens = exports.tokensToDisplayCurrency = exports.formatTokensWithCurrency = exports.formatTokensWithSign = exports.formatTokens = void 0;
4
+ const enums_1 = require("./enums");
5
+ const formatTokens = (tokens) => {
6
+ return `${tokens} token${tokens !== 1 ? 's' : ''}`;
7
+ };
8
+ exports.formatTokens = formatTokens;
9
+ const formatTokensWithSign = (tokens) => {
10
+ const sign = tokens >= 0 ? '+' : '';
11
+ return `${sign}${tokens} token${Math.abs(tokens) !== 1 ? 's' : ''}`;
12
+ };
13
+ exports.formatTokensWithSign = formatTokensWithSign;
14
+ const formatTokensWithCurrency = (tokens, currency) => {
15
+ const symbol = currency === enums_1.DisplayCurrencyEnum.AUD ? 'A$' : '$';
16
+ const dollarValue = (tokens / 100).toFixed(2);
17
+ return `${tokens} tokens (${symbol}${dollarValue})`;
18
+ };
19
+ exports.formatTokensWithCurrency = formatTokensWithCurrency;
20
+ const tokensToDisplayCurrency = (tokens, currency) => {
21
+ const symbol = currency === enums_1.DisplayCurrencyEnum.AUD ? 'A$' : '$';
22
+ return `${symbol}${(tokens / 100).toFixed(2)}`;
23
+ };
24
+ exports.tokensToDisplayCurrency = tokensToDisplayCurrency;
25
+ const currencyCentsToTokens = (cents) => {
26
+ return cents; // 1:1 mapping
27
+ };
28
+ exports.currencyCentsToTokens = currencyCentsToTokens;
29
+ const tokensToCurrencyCents = (tokens) => {
30
+ return tokens; // 1:1 mapping
31
+ };
32
+ exports.tokensToCurrencyCents = tokensToCurrencyCents;
33
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/billing/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAErC,MAAM,YAAY,GAAG,CAAC,MAAc,EAAU,EAAE;IACrD,OAAO,GAAG,MAAM,SAAS,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACrD,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEK,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAU,EAAE;IAC7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,OAAO,GAAG,IAAI,GAAG,MAAM,SAAS,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACtE,CAAC,CAAC;AAHW,QAAA,oBAAoB,wBAG/B;AAEK,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAE,QAA6B,EAAU,EAAE;IAChG,MAAM,MAAM,GAAG,QAAQ,KAAK,2BAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACjE,MAAM,WAAW,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,GAAG,MAAM,YAAY,MAAM,GAAG,WAAW,GAAG,CAAC;AACtD,CAAC,CAAC;AAJW,QAAA,wBAAwB,4BAInC;AAEK,MAAM,uBAAuB,GAAG,CAAC,MAAc,EAAE,QAA6B,EAAU,EAAE;IAC/F,MAAM,MAAM,GAAG,QAAQ,KAAK,2BAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACjE,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AACjD,CAAC,CAAC;AAHW,QAAA,uBAAuB,2BAGlC;AAEK,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE;IAC7D,OAAO,KAAK,CAAC,CAAC,cAAc;AAC9B,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEK,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAU,EAAE;IAC9D,OAAO,MAAM,CAAC,CAAC,cAAc;AAC/B,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC"}
@@ -0,0 +1,3 @@
1
+ export * from './billing';
2
+ export * from './account/services/account.service';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,oCAAoC,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./billing"), exports);
5
+ tslib_1.__exportStar(require("./account/services/account.service"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,6EAAmD"}