@super-protocol/sdk-js 2.1.2 → 2.1.3

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 (526) hide show
  1. package/{build → dist/cjs}/TIIGenerator.d.ts +2 -2
  2. package/dist/cjs/TIIGenerator.js +230 -0
  3. package/{build → dist/cjs}/analytics/Analytics.d.ts +2 -2
  4. package/dist/cjs/analytics/Analytics.js +67 -0
  5. package/{build → dist/cjs}/analytics/AnalyticsError.js +2 -1
  6. package/{build → dist/cjs}/analytics/eventProviders/BrowserEventProvider.d.ts +1 -1
  7. package/dist/cjs/analytics/eventProviders/BrowserEventProvider.js +38 -0
  8. package/dist/cjs/analytics/eventProviders/EventProvider.js +25 -0
  9. package/{build → dist/cjs}/analytics/eventProviders/NodeEventProvider.d.ts +1 -1
  10. package/dist/cjs/analytics/eventProviders/NodeEventProvider.js +56 -0
  11. package/{build → dist/cjs}/analytics/transports/AxiosTransport.d.ts +1 -1
  12. package/dist/cjs/analytics/transports/AxiosTransport.js +60 -0
  13. package/{build → dist/cjs}/analytics/transports/FetchTransport.d.ts +1 -1
  14. package/dist/cjs/analytics/transports/FetchTransport.js +31 -0
  15. package/{build → dist/cjs}/analytics/types.d.ts +2 -2
  16. package/{build → dist/cjs}/analytics/types.js +1 -1
  17. package/{build → dist/cjs}/config.js +1 -1
  18. package/{build → dist/cjs}/connectors/BaseConnector.d.ts +1 -1
  19. package/dist/cjs/connectors/BaseConnector.js +41 -0
  20. package/{build → dist/cjs}/connectors/BlockchainConnector.d.ts +3 -3
  21. package/dist/cjs/connectors/BlockchainConnector.js +341 -0
  22. package/{build → dist/cjs}/connectors/BlockchainEventsListener.d.ts +1 -1
  23. package/dist/cjs/connectors/BlockchainEventsListener.js +103 -0
  24. package/{build → dist/cjs}/connectors/index.d.ts +2 -2
  25. package/{build → dist/cjs}/connectors/index.js +5 -5
  26. package/{build → dist/cjs}/constants.js +1 -1
  27. package/{build → dist/cjs}/contracts/abi.js +1 -1
  28. package/dist/cjs/crypto/Crypto.js +100 -0
  29. package/dist/cjs/crypto/index.d.ts +2 -0
  30. package/{build → dist/cjs}/crypto/index.js +3 -3
  31. package/dist/cjs/crypto/nodejs/AES.js +79 -0
  32. package/dist/cjs/crypto/nodejs/ARIA.js +78 -0
  33. package/dist/cjs/crypto/nodejs/ECIES.js +56 -0
  34. package/{build → dist/cjs}/crypto/nodejs/NativeCrypto.d.ts +3 -3
  35. package/dist/cjs/crypto/nodejs/NativeCrypto.js +165 -0
  36. package/dist/cjs/crypto/nodejs/RSA-Hybrid.js +94 -0
  37. package/dist/cjs/index.d.ts +80 -0
  38. package/dist/cjs/index.js +143 -0
  39. package/{build → dist/cjs}/logger.js +1 -1
  40. package/{build → dist/cjs}/models/EtlModel.d.ts +1 -1
  41. package/dist/cjs/models/EtlModel.js +126 -0
  42. package/{build → dist/cjs}/models/Offer.d.ts +1 -1
  43. package/dist/cjs/models/Offer.js +361 -0
  44. package/{build → dist/cjs}/models/Order.d.ts +1 -1
  45. package/dist/cjs/models/Order.js +543 -0
  46. package/{build → dist/cjs}/models/Provider.d.ts +1 -1
  47. package/dist/cjs/models/Provider.js +119 -0
  48. package/{build → dist/cjs}/models/TCB.d.ts +1 -1
  49. package/dist/cjs/models/TCB.js +112 -0
  50. package/{build → dist/cjs}/models/TeeOffer.d.ts +2 -2
  51. package/dist/cjs/models/TeeOffer.js +538 -0
  52. package/dist/cjs/models/index.d.ts +5 -0
  53. package/dist/cjs/models/index.js +17 -0
  54. package/dist/cjs/package.json +1 -0
  55. package/dist/cjs/polyfills.js +7 -0
  56. package/{build → dist/cjs}/proto/Compression.d.ts +1 -1
  57. package/dist/cjs/proto/Compression.js +131 -0
  58. package/{build → dist/cjs}/proto/TRI.d.ts +1 -1
  59. package/dist/cjs/proto/TRI.js +290 -0
  60. package/{build → dist/cjs}/proto/TeeProperties.d.ts +1 -1
  61. package/dist/cjs/proto/TeeProperties.js +397 -0
  62. package/{build → dist/cjs}/providers/storage/ChunksDownloadDecorator.d.ts +2 -2
  63. package/dist/cjs/providers/storage/ChunksDownloadDecorator.js +145 -0
  64. package/{build → dist/cjs}/providers/storage/IStorageProvider.d.ts +1 -1
  65. package/{build → dist/cjs}/providers/storage/IStorageProvider.js +1 -1
  66. package/{build → dist/cjs}/providers/storage/S3StorageProvider.d.ts +2 -2
  67. package/dist/cjs/providers/storage/S3StorageProvider.js +171 -0
  68. package/{build → dist/cjs}/providers/storage/StorageAdapter.d.ts +2 -2
  69. package/dist/cjs/providers/storage/StorageAdapter.js +301 -0
  70. package/{build → dist/cjs}/providers/storage/StorageContentWriter.d.ts +2 -2
  71. package/dist/cjs/providers/storage/StorageContentWriter.js +168 -0
  72. package/{build → dist/cjs}/providers/storage/StorageKeyValueAdapter.d.ts +2 -2
  73. package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +125 -0
  74. package/{build → dist/cjs}/providers/storage/StorageMetadataReader.d.ts +3 -3
  75. package/dist/cjs/providers/storage/StorageMetadataReader.js +57 -0
  76. package/{build → dist/cjs}/providers/storage/StorjAdapter.d.ts +2 -2
  77. package/dist/cjs/providers/storage/StorjAdapter.js +54 -0
  78. package/{build → dist/cjs}/providers/storage/StorjStorageProvider.d.ts +2 -3
  79. package/dist/cjs/providers/storage/StorjStorageProvider.js +145 -0
  80. package/dist/cjs/providers/storage/getStorageProvider.d.ts +4 -0
  81. package/dist/cjs/providers/storage/getStorageProvider.js +20 -0
  82. package/{build → dist/cjs}/providers/storage/types.js +1 -1
  83. package/{build → dist/cjs}/staticModels/ActiveOffers.d.ts +1 -1
  84. package/dist/cjs/staticModels/ActiveOffers.js +37 -0
  85. package/{build → dist/cjs}/staticModels/ActiveOrders.d.ts +1 -1
  86. package/dist/cjs/staticModels/ActiveOrders.js +76 -0
  87. package/{build → dist/cjs}/staticModels/Consensus.d.ts +1 -1
  88. package/dist/cjs/staticModels/Consensus.js +225 -0
  89. package/{build → dist/cjs}/staticModels/Deposits.d.ts +1 -1
  90. package/dist/cjs/staticModels/Deposits.js +195 -0
  91. package/{build → dist/cjs}/staticModels/Marks.d.ts +1 -1
  92. package/dist/cjs/staticModels/Marks.js +30 -0
  93. package/dist/cjs/staticModels/ModelPackager.js +49 -0
  94. package/{build → dist/cjs}/staticModels/Offers.d.ts +2 -2
  95. package/dist/cjs/staticModels/Offers.js +189 -0
  96. package/{build → dist/cjs}/staticModels/Orders.d.ts +1 -1
  97. package/dist/cjs/staticModels/Orders.js +504 -0
  98. package/{build → dist/cjs}/staticModels/ProviderRegistry.d.ts +1 -1
  99. package/dist/cjs/staticModels/ProviderRegistry.js +174 -0
  100. package/{build → dist/cjs}/staticModels/StaticModel.d.ts +2 -2
  101. package/dist/cjs/staticModels/StaticModel.js +35 -0
  102. package/{build → dist/cjs}/staticModels/Superpro.d.ts +2 -2
  103. package/dist/cjs/staticModels/Superpro.js +25 -0
  104. package/{build → dist/cjs}/staticModels/SuperproToken.d.ts +1 -1
  105. package/dist/cjs/staticModels/SuperproToken.js +141 -0
  106. package/{build → dist/cjs}/staticModels/TeeOffers.d.ts +1 -1
  107. package/dist/cjs/staticModels/TeeOffers.js +314 -0
  108. package/dist/cjs/store.js +17 -0
  109. package/{build → dist/cjs}/tee/QuoteParser.d.ts +1 -1
  110. package/dist/cjs/tee/QuoteParser.js +189 -0
  111. package/{build → dist/cjs}/tee/QuoteValidator.d.ts +1 -1
  112. package/dist/cjs/tee/QuoteValidator.js +391 -0
  113. package/{build → dist/cjs}/tee/errors.js +1 -1
  114. package/dist/cjs/tee/helpers.js +120 -0
  115. package/{build → dist/cjs}/tee/interface.d.ts +1 -1
  116. package/{build → dist/cjs}/tee/interface.js +1 -1
  117. package/{build → dist/cjs}/tee/statuses.js +4 -4
  118. package/{build → dist/cjs}/tee/types.d.ts +5 -0
  119. package/{build → dist/cjs}/tee/types.js +1 -1
  120. package/{build → dist/cjs}/types/Compressor.js +1 -1
  121. package/{build → dist/cjs}/types/Consensus.d.ts +1 -1
  122. package/{build → dist/cjs}/types/Consensus.js +2 -2
  123. package/{build → dist/cjs}/types/DepositInfo.d.ts +1 -1
  124. package/{build → dist/cjs}/types/DepositInfo.js +1 -1
  125. package/{build → dist/cjs}/types/EtlModel.js +1 -1
  126. package/{build → dist/cjs}/types/Events.d.ts +2 -2
  127. package/{build → dist/cjs}/types/Events.js +1 -1
  128. package/dist/cjs/types/HardwareInfo.d.ts +6 -0
  129. package/{build → dist/cjs}/types/HardwareInfo.js +1 -1
  130. package/{build → dist/cjs}/types/Marks.js +2 -2
  131. package/{build → dist/cjs}/types/Offer.d.ts +1 -1
  132. package/dist/cjs/types/Offer.js +17 -0
  133. package/{build → dist/cjs}/types/OptionInfo.js +1 -1
  134. package/{build → dist/cjs}/types/Order.d.ts +1 -1
  135. package/{build → dist/cjs}/types/Order.js +2 -2
  136. package/{build → dist/cjs}/types/OrderUsage.d.ts +4 -4
  137. package/{build → dist/cjs}/types/OrderUsage.js +1 -1
  138. package/{build → dist/cjs}/types/Origins.js +1 -1
  139. package/{build → dist/cjs}/types/Provider.js +1 -1
  140. package/{build → dist/cjs}/types/ResourceLoader.d.ts +1 -1
  141. package/{build → dist/cjs}/types/ResourceLoader.js +1 -1
  142. package/{build → dist/cjs}/types/SlotInfo.js +1 -1
  143. package/{build → dist/cjs}/types/SlotUsage.d.ts +1 -1
  144. package/{build → dist/cjs}/types/SlotUsage.js +2 -2
  145. package/{build → dist/cjs}/types/Superpro.js +2 -2
  146. package/{build → dist/cjs}/types/TeeOfferInfo.d.ts +1 -1
  147. package/{build → dist/cjs}/types/TeeOfferInfo.js +1 -1
  148. package/{build → dist/cjs}/types/TeeOfferOption.d.ts +3 -3
  149. package/{build → dist/cjs}/types/TeeOfferOption.js +1 -1
  150. package/dist/cjs/types/TeeOfferSlot.d.ts +8 -0
  151. package/{build → dist/cjs}/types/TeeOfferSlot.js +1 -1
  152. package/{build → dist/cjs}/types/ValueOfferSlot.d.ts +4 -4
  153. package/{build → dist/cjs}/types/ValueOfferSlot.js +1 -1
  154. package/{build → dist/cjs}/types/Web3.js +1 -1
  155. package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.d.ts +1 -1
  156. package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.js +1 -1
  157. package/dist/cjs/types/index.d.ts +22 -0
  158. package/dist/cjs/types/index.js +39 -0
  159. package/{build → dist/cjs}/types/storage/StorageAccess.js +1 -1
  160. package/{build → dist/cjs}/types/storage/StorageFileAccess.d.ts +1 -1
  161. package/{build → dist/cjs}/types/storage/StorageFileAccess.js +1 -1
  162. package/{build → dist/cjs}/types/storage/StorageObject.js +1 -1
  163. package/dist/cjs/utils/Monitoring.js +49 -0
  164. package/dist/cjs/utils/NonceTracker.js +78 -0
  165. package/dist/cjs/utils/PubSub.js +35 -0
  166. package/{build → dist/cjs}/utils/TxManager.d.ts +1 -1
  167. package/dist/cjs/utils/TxManager.js +169 -0
  168. package/{build → dist/cjs}/utils/compressors/GzipCompressor.d.ts +2 -2
  169. package/dist/cjs/utils/compressors/GzipCompressor.js +22 -0
  170. package/{build → dist/cjs}/utils/compressors/UncompressedCompressor.d.ts +2 -2
  171. package/dist/cjs/utils/compressors/UncompressedCompressor.js +17 -0
  172. package/dist/cjs/utils/compressors/index.d.ts +2 -0
  173. package/{build → dist/cjs}/utils/compressors/index.js +3 -3
  174. package/{build → dist/cjs}/utils/helper.d.ts +3 -3
  175. package/dist/cjs/utils/helper.js +289 -0
  176. package/dist/cjs/utils/helpers/getStreamChunks.js +35 -0
  177. package/dist/cjs/utils/helpers/index.d.ts +1 -0
  178. package/{build → dist/cjs}/utils/helpers/index.js +2 -2
  179. package/dist/cjs/utils/helpers/tryWithInterval.js +39 -0
  180. package/{build → dist/cjs}/utils/resourceLoaders/BaseResourceLoader.d.ts +1 -1
  181. package/dist/cjs/utils/resourceLoaders/BaseResourceLoader.js +14 -0
  182. package/{build → dist/cjs}/utils/resourceLoaders/StorageProviderLoader.d.ts +2 -2
  183. package/dist/cjs/utils/resourceLoaders/StorageProviderLoader.js +60 -0
  184. package/{build → dist/cjs}/utils/resourceLoaders/UrlResourceLoader.d.ts +1 -1
  185. package/dist/cjs/utils/resourceLoaders/UrlResourceLoader.js +51 -0
  186. package/{build → dist/cjs}/utils/resourceLoaders/getResourceLoader.d.ts +1 -1
  187. package/dist/cjs/utils/resourceLoaders/getResourceLoader.js +15 -0
  188. package/dist/cjs/utils/resourceLoaders/index.d.ts +1 -0
  189. package/{build → dist/cjs}/utils/resourceLoaders/index.js +2 -2
  190. package/dist/mjs/TIIGenerator.d.ts +22 -0
  191. package/dist/mjs/TIIGenerator.js +225 -0
  192. package/dist/mjs/analytics/Analytics.d.ts +15 -0
  193. package/dist/mjs/analytics/Analytics.js +61 -0
  194. package/dist/mjs/analytics/AnalyticsError.d.ts +7 -0
  195. package/dist/mjs/analytics/AnalyticsError.js +8 -0
  196. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.d.ts +18 -0
  197. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.js +32 -0
  198. package/dist/mjs/analytics/eventProviders/EventProvider.d.ts +24 -0
  199. package/dist/mjs/analytics/eventProviders/EventProvider.js +22 -0
  200. package/dist/mjs/analytics/eventProviders/NodeEventProvider.d.ts +22 -0
  201. package/dist/mjs/analytics/eventProviders/NodeEventProvider.js +50 -0
  202. package/dist/mjs/analytics/transports/AxiosTransport.d.ts +4 -0
  203. package/dist/mjs/analytics/transports/AxiosTransport.js +31 -0
  204. package/dist/mjs/analytics/transports/FetchTransport.d.ts +4 -0
  205. package/dist/mjs/analytics/transports/FetchTransport.js +28 -0
  206. package/dist/mjs/analytics/types.d.ts +22 -0
  207. package/dist/mjs/analytics/types.js +2 -0
  208. package/dist/mjs/config.d.ts +4 -0
  209. package/dist/mjs/config.js +5 -0
  210. package/dist/mjs/connectors/BaseConnector.d.ts +36 -0
  211. package/dist/mjs/connectors/BaseConnector.js +34 -0
  212. package/dist/mjs/connectors/BlockchainConnector.d.ts +81 -0
  213. package/dist/mjs/connectors/BlockchainConnector.js +313 -0
  214. package/dist/mjs/connectors/BlockchainEventsListener.d.ts +15 -0
  215. package/dist/mjs/connectors/BlockchainEventsListener.js +75 -0
  216. package/dist/mjs/connectors/index.d.ts +2 -0
  217. package/dist/mjs/connectors/index.js +3 -0
  218. package/dist/mjs/constants.d.ts +13 -0
  219. package/dist/mjs/constants.js +14 -0
  220. package/dist/mjs/contracts/abi.d.ts +9842 -0
  221. package/dist/mjs/contracts/abi.js +12844 -0
  222. package/dist/mjs/crypto/Crypto.d.ts +54 -0
  223. package/dist/mjs/crypto/Crypto.js +95 -0
  224. package/dist/mjs/crypto/index.d.ts +2 -0
  225. package/dist/mjs/crypto/index.js +3 -0
  226. package/dist/mjs/crypto/nodejs/AES.d.ts +24 -0
  227. package/dist/mjs/crypto/nodejs/AES.js +74 -0
  228. package/dist/mjs/crypto/nodejs/ARIA.d.ts +24 -0
  229. package/dist/mjs/crypto/nodejs/ARIA.js +73 -0
  230. package/dist/mjs/crypto/nodejs/ECIES.d.ts +6 -0
  231. package/dist/mjs/crypto/nodejs/ECIES.js +51 -0
  232. package/dist/mjs/crypto/nodejs/NativeCrypto.d.ts +58 -0
  233. package/dist/mjs/crypto/nodejs/NativeCrypto.js +163 -0
  234. package/dist/mjs/crypto/nodejs/RSA-Hybrid.d.ts +15 -0
  235. package/dist/mjs/crypto/nodejs/RSA-Hybrid.js +89 -0
  236. package/dist/mjs/index.d.ts +80 -0
  237. package/dist/mjs/index.js +76 -0
  238. package/dist/mjs/logger.d.ts +7 -0
  239. package/dist/mjs/logger.js +7 -0
  240. package/dist/mjs/models/EtlModel.d.ts +34 -0
  241. package/dist/mjs/models/EtlModel.js +96 -0
  242. package/dist/mjs/models/Offer.d.ts +130 -0
  243. package/dist/mjs/models/Offer.js +356 -0
  244. package/dist/mjs/models/Order.d.ts +148 -0
  245. package/dist/mjs/models/Order.js +538 -0
  246. package/dist/mjs/models/Provider.d.ts +51 -0
  247. package/dist/mjs/models/Provider.js +114 -0
  248. package/dist/mjs/models/TCB.d.ts +58 -0
  249. package/dist/mjs/models/TCB.js +107 -0
  250. package/dist/mjs/models/TeeOffer.d.ts +204 -0
  251. package/dist/mjs/models/TeeOffer.js +533 -0
  252. package/dist/mjs/models/index.d.ts +5 -0
  253. package/dist/mjs/models/index.js +6 -0
  254. package/dist/mjs/package.json +1 -0
  255. package/dist/mjs/polyfills.d.ts +0 -0
  256. package/dist/mjs/polyfills.js +7 -0
  257. package/dist/mjs/proto/Compression.d.ts +36 -0
  258. package/dist/mjs/proto/Compression.js +123 -0
  259. package/dist/mjs/proto/TRI.d.ts +124 -0
  260. package/dist/mjs/proto/TRI.js +284 -0
  261. package/dist/mjs/proto/TeeProperties.d.ts +263 -0
  262. package/dist/mjs/proto/TeeProperties.js +391 -0
  263. package/dist/mjs/providers/storage/ChunksDownloadDecorator.d.ts +36 -0
  264. package/dist/mjs/providers/storage/ChunksDownloadDecorator.js +139 -0
  265. package/dist/mjs/providers/storage/IStorageProvider.d.ts +15 -0
  266. package/dist/mjs/providers/storage/IStorageProvider.js +2 -0
  267. package/dist/mjs/providers/storage/S3StorageProvider.d.ts +25 -0
  268. package/dist/mjs/providers/storage/S3StorageProvider.js +167 -0
  269. package/dist/mjs/providers/storage/StorageAdapter.d.ts +60 -0
  270. package/dist/mjs/providers/storage/StorageAdapter.js +271 -0
  271. package/dist/mjs/providers/storage/StorageContentWriter.d.ts +46 -0
  272. package/dist/mjs/providers/storage/StorageContentWriter.js +161 -0
  273. package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +23 -0
  274. package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +119 -0
  275. package/dist/mjs/providers/storage/StorageMetadataReader.d.ts +20 -0
  276. package/dist/mjs/providers/storage/StorageMetadataReader.js +51 -0
  277. package/dist/mjs/providers/storage/StorjAdapter.d.ts +19 -0
  278. package/dist/mjs/providers/storage/StorjAdapter.js +48 -0
  279. package/dist/mjs/providers/storage/StorjStorageProvider.d.ts +24 -0
  280. package/dist/mjs/providers/storage/StorjStorageProvider.js +139 -0
  281. package/dist/mjs/providers/storage/getStorageProvider.d.ts +4 -0
  282. package/dist/mjs/providers/storage/getStorageProvider.js +15 -0
  283. package/dist/mjs/providers/storage/types.d.ts +7 -0
  284. package/dist/mjs/providers/storage/types.js +2 -0
  285. package/dist/mjs/staticModels/ActiveOffers.d.ts +15 -0
  286. package/dist/mjs/staticModels/ActiveOffers.js +32 -0
  287. package/dist/mjs/staticModels/ActiveOrders.d.ts +20 -0
  288. package/dist/mjs/staticModels/ActiveOrders.js +71 -0
  289. package/dist/mjs/staticModels/Consensus.d.ts +42 -0
  290. package/dist/mjs/staticModels/Consensus.js +220 -0
  291. package/dist/mjs/staticModels/Deposits.d.ts +70 -0
  292. package/dist/mjs/staticModels/Deposits.js +190 -0
  293. package/dist/mjs/staticModels/Marks.d.ts +8 -0
  294. package/dist/mjs/staticModels/Marks.js +25 -0
  295. package/dist/mjs/staticModels/ModelPackager.d.ts +18 -0
  296. package/dist/mjs/staticModels/ModelPackager.js +45 -0
  297. package/dist/mjs/staticModels/Offers.d.ts +65 -0
  298. package/dist/mjs/staticModels/Offers.js +184 -0
  299. package/dist/mjs/staticModels/Orders.d.ts +155 -0
  300. package/dist/mjs/staticModels/Orders.js +499 -0
  301. package/dist/mjs/staticModels/ProviderRegistry.d.ts +74 -0
  302. package/dist/mjs/staticModels/ProviderRegistry.js +169 -0
  303. package/dist/mjs/staticModels/StaticModel.d.ts +8 -0
  304. package/dist/mjs/staticModels/StaticModel.js +30 -0
  305. package/dist/mjs/staticModels/Superpro.d.ts +16 -0
  306. package/dist/mjs/staticModels/Superpro.js +23 -0
  307. package/dist/mjs/staticModels/SuperproToken.d.ts +48 -0
  308. package/dist/mjs/staticModels/SuperproToken.js +136 -0
  309. package/dist/mjs/staticModels/TeeOffers.d.ts +115 -0
  310. package/dist/mjs/staticModels/TeeOffers.js +309 -0
  311. package/dist/mjs/store.d.ts +15 -0
  312. package/dist/mjs/store.js +15 -0
  313. package/dist/mjs/tee/QuoteParser.d.ts +27 -0
  314. package/dist/mjs/tee/QuoteParser.js +162 -0
  315. package/dist/mjs/tee/QuoteValidator.d.ts +38 -0
  316. package/dist/mjs/tee/QuoteValidator.js +384 -0
  317. package/dist/mjs/tee/errors.d.ts +6 -0
  318. package/dist/mjs/tee/errors.js +7 -0
  319. package/dist/mjs/tee/helpers.d.ts +14 -0
  320. package/dist/mjs/tee/helpers.js +115 -0
  321. package/dist/mjs/tee/interface.d.ts +63 -0
  322. package/dist/mjs/tee/interface.js +2 -0
  323. package/dist/mjs/tee/statuses.d.ts +21 -0
  324. package/dist/mjs/tee/statuses.js +25 -0
  325. package/dist/mjs/tee/types.d.ts +80 -0
  326. package/dist/mjs/tee/types.js +2 -0
  327. package/dist/mjs/types/Compressor.d.ts +5 -0
  328. package/dist/mjs/types/Compressor.js +2 -0
  329. package/dist/mjs/types/Consensus.d.ts +60 -0
  330. package/dist/mjs/types/Consensus.js +16 -0
  331. package/dist/mjs/types/DepositInfo.d.ts +6 -0
  332. package/dist/mjs/types/DepositInfo.js +2 -0
  333. package/dist/mjs/types/EtlModel.d.ts +2 -0
  334. package/dist/mjs/types/EtlModel.js +2 -0
  335. package/dist/mjs/types/Events.d.ts +34 -0
  336. package/dist/mjs/types/Events.js +2 -0
  337. package/dist/mjs/types/HardwareInfo.d.ts +6 -0
  338. package/dist/mjs/types/HardwareInfo.js +2 -0
  339. package/dist/mjs/types/Marks.d.ts +9 -0
  340. package/dist/mjs/types/Marks.js +7 -0
  341. package/dist/mjs/types/Offer.d.ts +33 -0
  342. package/dist/mjs/types/Offer.js +14 -0
  343. package/dist/mjs/types/OptionInfo.d.ts +8 -0
  344. package/dist/mjs/types/OptionInfo.js +2 -0
  345. package/dist/mjs/types/Order.d.ts +44 -0
  346. package/dist/mjs/types/Order.js +12 -0
  347. package/dist/mjs/types/OrderUsage.d.ts +26 -0
  348. package/dist/mjs/types/OrderUsage.js +2 -0
  349. package/dist/mjs/types/Origins.d.ts +6 -0
  350. package/dist/mjs/types/Origins.js +2 -0
  351. package/dist/mjs/types/Provider.d.ts +7 -0
  352. package/dist/mjs/types/Provider.js +2 -0
  353. package/dist/mjs/types/ResourceLoader.d.ts +28 -0
  354. package/dist/mjs/types/ResourceLoader.js +2 -0
  355. package/dist/mjs/types/SlotInfo.d.ts +6 -0
  356. package/dist/mjs/types/SlotInfo.js +2 -0
  357. package/dist/mjs/types/SlotUsage.d.ts +11 -0
  358. package/dist/mjs/types/SlotUsage.js +6 -0
  359. package/dist/mjs/types/Superpro.d.ts +9 -0
  360. package/dist/mjs/types/Superpro.js +11 -0
  361. package/dist/mjs/types/TeeOfferInfo.d.ts +10 -0
  362. package/dist/mjs/types/TeeOfferInfo.js +2 -0
  363. package/dist/mjs/types/TeeOfferOption.d.ts +13 -0
  364. package/dist/mjs/types/TeeOfferOption.js +2 -0
  365. package/dist/mjs/types/TeeOfferSlot.d.ts +8 -0
  366. package/dist/mjs/types/TeeOfferSlot.js +2 -0
  367. package/dist/mjs/types/ValueOfferSlot.d.ts +16 -0
  368. package/dist/mjs/types/ValueOfferSlot.js +2 -0
  369. package/dist/mjs/types/Web3.d.ts +62 -0
  370. package/dist/mjs/types/Web3.js +2 -0
  371. package/dist/mjs/types/blockchainConnector/StorageAccess.d.ts +8 -0
  372. package/dist/mjs/types/blockchainConnector/StorageAccess.js +2 -0
  373. package/dist/mjs/types/index.d.ts +22 -0
  374. package/dist/mjs/types/index.js +23 -0
  375. package/dist/mjs/types/storage/StorageAccess.d.ts +7 -0
  376. package/dist/mjs/types/storage/StorageAccess.js +2 -0
  377. package/dist/mjs/types/storage/StorageFileAccess.d.ts +5 -0
  378. package/dist/mjs/types/storage/StorageFileAccess.js +2 -0
  379. package/dist/mjs/types/storage/StorageObject.d.ts +8 -0
  380. package/dist/mjs/types/storage/StorageObject.js +2 -0
  381. package/dist/mjs/utils/Monitoring.d.ts +11 -0
  382. package/dist/mjs/utils/Monitoring.js +42 -0
  383. package/dist/mjs/utils/NonceTracker.d.ts +19 -0
  384. package/dist/mjs/utils/NonceTracker.js +73 -0
  385. package/dist/mjs/utils/PubSub.d.ts +9 -0
  386. package/dist/mjs/utils/PubSub.js +32 -0
  387. package/dist/mjs/utils/TxManager.d.ts +25 -0
  388. package/dist/mjs/utils/TxManager.js +162 -0
  389. package/dist/mjs/utils/compressors/GzipCompressor.d.ts +8 -0
  390. package/dist/mjs/utils/compressors/GzipCompressor.js +15 -0
  391. package/dist/mjs/utils/compressors/UncompressedCompressor.d.ts +8 -0
  392. package/dist/mjs/utils/compressors/UncompressedCompressor.js +13 -0
  393. package/dist/mjs/utils/compressors/index.d.ts +2 -0
  394. package/dist/mjs/utils/compressors/index.js +3 -0
  395. package/dist/mjs/utils/helper.d.ts +44 -0
  396. package/dist/mjs/utils/helper.js +258 -0
  397. package/dist/mjs/utils/helpers/getStreamChunks.d.ts +9 -0
  398. package/dist/mjs/utils/helpers/getStreamChunks.js +31 -0
  399. package/dist/mjs/utils/helpers/index.d.ts +1 -0
  400. package/dist/mjs/utils/helpers/index.js +2 -0
  401. package/dist/mjs/utils/helpers/tryWithInterval.d.ts +13 -0
  402. package/dist/mjs/utils/helpers/tryWithInterval.js +35 -0
  403. package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.d.ts +10 -0
  404. package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.js +10 -0
  405. package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.d.ts +18 -0
  406. package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.js +53 -0
  407. package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.d.ts +9 -0
  408. package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.js +44 -0
  409. package/dist/mjs/utils/resourceLoaders/getResourceLoader.d.ts +5 -0
  410. package/dist/mjs/utils/resourceLoaders/getResourceLoader.js +11 -0
  411. package/dist/mjs/utils/resourceLoaders/index.d.ts +1 -0
  412. package/dist/mjs/utils/resourceLoaders/index.js +2 -0
  413. package/package.json +16 -18
  414. package/build/TIIGenerator.js +0 -246
  415. package/build/analytics/Analytics.js +0 -74
  416. package/build/analytics/eventProviders/BrowserEventProvider.js +0 -32
  417. package/build/analytics/eventProviders/EventProvider.js +0 -14
  418. package/build/analytics/eventProviders/NodeEventProvider.js +0 -48
  419. package/build/analytics/transports/AxiosTransport.js +0 -72
  420. package/build/analytics/transports/FetchTransport.js +0 -42
  421. package/build/connectors/BaseConnector.js +0 -53
  422. package/build/connectors/BlockchainConnector.js +0 -358
  423. package/build/connectors/BlockchainEventsListener.js +0 -114
  424. package/build/crypto/Crypto.js +0 -119
  425. package/build/crypto/index.d.ts +0 -2
  426. package/build/crypto/nodejs/AES.js +0 -94
  427. package/build/crypto/nodejs/ARIA.js +0 -93
  428. package/build/crypto/nodejs/ECIES.js +0 -69
  429. package/build/crypto/nodejs/NativeCrypto.js +0 -183
  430. package/build/crypto/nodejs/RSA-Hybrid.js +0 -95
  431. package/build/index.d.ts +0 -79
  432. package/build/index.js +0 -142
  433. package/build/models/EtlModel.js +0 -138
  434. package/build/models/Offer.js +0 -407
  435. package/build/models/Order.js +0 -577
  436. package/build/models/Provider.js +0 -137
  437. package/build/models/TCB.js +0 -135
  438. package/build/models/TeeOffer.js +0 -600
  439. package/build/models/index.d.ts +0 -5
  440. package/build/models/index.js +0 -17
  441. package/build/polyfills.js +0 -7
  442. package/build/proto/Compression.js +0 -132
  443. package/build/proto/TRI.js +0 -293
  444. package/build/proto/TeeProperties.js +0 -401
  445. package/build/providers/storage/ChunksDownloadDecorator.js +0 -177
  446. package/build/providers/storage/S3StorageProvider.js +0 -219
  447. package/build/providers/storage/StorageAdapter.js +0 -323
  448. package/build/providers/storage/StorageContentWriter.js +0 -183
  449. package/build/providers/storage/StorageKeyValueAdapter.js +0 -158
  450. package/build/providers/storage/StorageMetadataReader.js +0 -68
  451. package/build/providers/storage/StorjAdapter.js +0 -74
  452. package/build/providers/storage/StorjStorageProvider.js +0 -207
  453. package/build/providers/storage/getStorageProvider.d.ts +0 -4
  454. package/build/providers/storage/getStorageProvider.js +0 -20
  455. package/build/staticModels/ActiveOffers.js +0 -52
  456. package/build/staticModels/ActiveOrders.js +0 -91
  457. package/build/staticModels/Consensus.js +0 -247
  458. package/build/staticModels/Deposits.js +0 -214
  459. package/build/staticModels/Marks.js +0 -43
  460. package/build/staticModels/ModelPackager.js +0 -62
  461. package/build/staticModels/Offers.js +0 -207
  462. package/build/staticModels/Orders.js +0 -518
  463. package/build/staticModels/ProviderRegistry.js +0 -192
  464. package/build/staticModels/StaticModel.js +0 -46
  465. package/build/staticModels/Superpro.js +0 -24
  466. package/build/staticModels/SuperproToken.js +0 -154
  467. package/build/staticModels/TeeOffers.js +0 -344
  468. package/build/store.js +0 -17
  469. package/build/tee/QuoteParser.js +0 -189
  470. package/build/tee/QuoteValidator.js +0 -414
  471. package/build/tee/helpers.js +0 -119
  472. package/build/types/HardwareInfo.d.ts +0 -6
  473. package/build/types/Offer.js +0 -17
  474. package/build/types/TeeOfferSlot.d.ts +0 -8
  475. package/build/types/index.d.ts +0 -22
  476. package/build/types/index.js +0 -39
  477. package/build/utils/Monitoring.js +0 -48
  478. package/build/utils/NonceTracker.js +0 -90
  479. package/build/utils/PubSub.js +0 -37
  480. package/build/utils/TxManager.js +0 -179
  481. package/build/utils/compressors/GzipCompressor.js +0 -29
  482. package/build/utils/compressors/UncompressedCompressor.js +0 -17
  483. package/build/utils/compressors/index.d.ts +0 -2
  484. package/build/utils/helper.js +0 -286
  485. package/build/utils/helpers/getStreamChunks.js +0 -74
  486. package/build/utils/helpers/index.d.ts +0 -1
  487. package/build/utils/helpers/tryWithInterval.js +0 -48
  488. package/build/utils/resourceLoaders/BaseResourceLoader.js +0 -51
  489. package/build/utils/resourceLoaders/StorageProviderLoader.js +0 -69
  490. package/build/utils/resourceLoaders/UrlResourceLoader.js +0 -64
  491. package/build/utils/resourceLoaders/getResourceLoader.js +0 -15
  492. package/build/utils/resourceLoaders/index.d.ts +0 -1
  493. /package/{build → dist/cjs}/analytics/AnalyticsError.d.ts +0 -0
  494. /package/{build → dist/cjs}/analytics/eventProviders/EventProvider.d.ts +0 -0
  495. /package/{build → dist/cjs}/config.d.ts +0 -0
  496. /package/{build → dist/cjs}/constants.d.ts +0 -0
  497. /package/{build → dist/cjs}/contracts/abi.d.ts +0 -0
  498. /package/{build → dist/cjs}/crypto/Crypto.d.ts +0 -0
  499. /package/{build → dist/cjs}/crypto/nodejs/AES.d.ts +0 -0
  500. /package/{build → dist/cjs}/crypto/nodejs/ARIA.d.ts +0 -0
  501. /package/{build → dist/cjs}/crypto/nodejs/ECIES.d.ts +0 -0
  502. /package/{build → dist/cjs}/crypto/nodejs/RSA-Hybrid.d.ts +0 -0
  503. /package/{build → dist/cjs}/logger.d.ts +0 -0
  504. /package/{build → dist/cjs}/polyfills.d.ts +0 -0
  505. /package/{build → dist/cjs}/providers/storage/types.d.ts +0 -0
  506. /package/{build → dist/cjs}/staticModels/ModelPackager.d.ts +0 -0
  507. /package/{build → dist/cjs}/store.d.ts +0 -0
  508. /package/{build → dist/cjs}/tee/errors.d.ts +0 -0
  509. /package/{build → dist/cjs}/tee/helpers.d.ts +0 -0
  510. /package/{build → dist/cjs}/tee/statuses.d.ts +0 -0
  511. /package/{build → dist/cjs}/types/Compressor.d.ts +0 -0
  512. /package/{build → dist/cjs}/types/EtlModel.d.ts +0 -0
  513. /package/{build → dist/cjs}/types/Marks.d.ts +0 -0
  514. /package/{build → dist/cjs}/types/OptionInfo.d.ts +0 -0
  515. /package/{build → dist/cjs}/types/Origins.d.ts +0 -0
  516. /package/{build → dist/cjs}/types/Provider.d.ts +0 -0
  517. /package/{build → dist/cjs}/types/SlotInfo.d.ts +0 -0
  518. /package/{build → dist/cjs}/types/Superpro.d.ts +0 -0
  519. /package/{build → dist/cjs}/types/Web3.d.ts +0 -0
  520. /package/{build → dist/cjs}/types/storage/StorageAccess.d.ts +0 -0
  521. /package/{build → dist/cjs}/types/storage/StorageObject.d.ts +0 -0
  522. /package/{build → dist/cjs}/utils/Monitoring.d.ts +0 -0
  523. /package/{build → dist/cjs}/utils/NonceTracker.d.ts +0 -0
  524. /package/{build → dist/cjs}/utils/PubSub.d.ts +0 -0
  525. /package/{build → dist/cjs}/utils/helpers/getStreamChunks.d.ts +0 -0
  526. /package/{build → dist/cjs}/utils/helpers/tryWithInterval.d.ts +0 -0
@@ -0,0 +1,314 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const logger_js_1 = __importDefault(require("../logger.js"));
7
+ const helper_js_1 = require("../utils/helper.js");
8
+ const utils_js_1 = require("ethers/lib/utils.js");
9
+ const index_js_1 = require("../types/index.js");
10
+ const index_js_2 = require("../connectors/index.js");
11
+ const Superpro_js_1 = __importDefault(require("./Superpro.js"));
12
+ const TxManager_js_1 = __importDefault(require("../utils/TxManager.js"));
13
+ const StaticModel_js_1 = __importDefault(require("./StaticModel.js"));
14
+ class TeeOffers {
15
+ static coresDenominator;
16
+ static logger = logger_js_1.default.child({ className: 'TeeOffers' });
17
+ static teeOffers = [];
18
+ static get address() {
19
+ return Superpro_js_1.default.address;
20
+ }
21
+ static async packHardwareInfo(hw) {
22
+ const denominator = await TeeOffers.getDenominator();
23
+ hw.slotInfo.cpuCores *= denominator;
24
+ hw.slotInfo.gpuCores *= denominator;
25
+ return hw;
26
+ }
27
+ static async unpackHardwareInfo(hw) {
28
+ const coresDenominator = await TeeOffers.getDenominator();
29
+ hw.slotInfo = (0, helper_js_1.unpackSlotInfo)(hw.slotInfo, coresDenominator);
30
+ return hw;
31
+ }
32
+ static async getDenominator() {
33
+ if (!this.coresDenominator) {
34
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
35
+ this.coresDenominator = Number(await contract.methods.getCpuDenominator().call());
36
+ }
37
+ return this.coresDenominator;
38
+ }
39
+ /**
40
+ * Function for fetching list of all TEE offers addresses
41
+ */
42
+ static async getAll() {
43
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
44
+ const count = Number(await contract.methods.getOffersTotalCount().call());
45
+ const teeOfffersSet = new Set(this.teeOffers);
46
+ for (let offerId = teeOfffersSet.size + 1; offerId <= count; ++offerId) {
47
+ const offerType = (await contract.methods.getOfferType(offerId).call()).toString();
48
+ if (offerType === index_js_1.OfferType.TeeOffer) {
49
+ teeOfffersSet.add(offerId.toString());
50
+ }
51
+ }
52
+ this.teeOffers = Array.from(teeOfffersSet);
53
+ return this.teeOffers;
54
+ }
55
+ /**
56
+ * Creates new TEE offer
57
+ * @param providerAuthorityAccount - address of authority account of provider
58
+ * @param teeOfferInfo - data of new TEE offer
59
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
60
+ */
61
+ static async create(providerAuthorityAccount, teeOfferInfo,
62
+ // slotInfo: SlotInfo,
63
+ // optionInfo: OptionInfo,
64
+ externalId = 'default', enabled = true, transactionOptions) {
65
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
66
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
67
+ // Converts offer info to array of arrays (used in blockchain)
68
+ teeOfferInfo.hardwareInfo = await TeeOffers.packHardwareInfo(teeOfferInfo.hardwareInfo);
69
+ const formattedExternalId = (0, utils_js_1.formatBytes32String)(externalId);
70
+ await TxManager_js_1.default.execute(contract.methods.createTeeOffer(providerAuthorityAccount, teeOfferInfo, teeOfferInfo.hardwareInfo.slotInfo, (0, helper_js_1.convertOptionInfoToRaw)(teeOfferInfo.hardwareInfo.optionInfo), formattedExternalId, enabled), transactionOptions);
71
+ }
72
+ static async getByExternalId(filter, fromBlock, toBlock) {
73
+ const founded = await StaticModel_js_1.default.findItemsById('TeeOfferCreated', filter, fromBlock, toBlock);
74
+ if (!founded)
75
+ return null;
76
+ return founded;
77
+ }
78
+ /**
79
+ * Function for fetching TEE offer id by TEE deviceId
80
+ * @param deviceId - unque TEE device id (unparsed, from blockchain)
81
+ * @returns TEE offer id
82
+ */
83
+ static getByDeviceId(deviceId) {
84
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
85
+ const fromattedDeviceId = (0, helper_js_1.packDeviceId)(deviceId);
86
+ return contract.methods.getTeeOfferByDeviceId(fromattedDeviceId).call();
87
+ }
88
+ /**
89
+ * Function for fetching total count of tee offer slots
90
+ */
91
+ static async getSlotsCount() {
92
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
93
+ return Number(await contract.methods.getTeeOffersSlotsCountTotal().call());
94
+ }
95
+ /**
96
+ * Function for fetching whether tee offer option exists or not
97
+ * @param optionId - Option ID
98
+ */
99
+ static isOptionExists(optionId) {
100
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
101
+ return contract.methods.isOptionExists(optionId).call();
102
+ }
103
+ /**
104
+ * Function for fetching total count of options
105
+ */
106
+ static async getOptionsCount() {
107
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
108
+ return Number(await contract.methods.getOptionsCount().call());
109
+ }
110
+ /**
111
+ * Function for fetching tee offer option by id
112
+ * @param optionId - Option ID
113
+ */
114
+ static async getOptionById(optionId) {
115
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
116
+ return await contract.methods
117
+ .getOptionById(optionId)
118
+ .call()
119
+ .then((option) => (0, helper_js_1.convertTeeOfferOptionFromRaw)(option));
120
+ }
121
+ static async getSlotByExternalId(filter, fromBlock, toBlock) {
122
+ const founded = await StaticModel_js_1.default.findItemsById('TeeSlotAdded', filter, fromBlock, toBlock);
123
+ if (!founded)
124
+ return null;
125
+ return founded;
126
+ }
127
+ static async getOptionByExternalId(filter, fromBlock, toBlock) {
128
+ const founded = await StaticModel_js_1.default.findItemsById('OptionAdded', filter, fromBlock, toBlock);
129
+ if (!founded)
130
+ return null;
131
+ return founded;
132
+ }
133
+ /**
134
+ * Function for adding event listeners on onSlotAdded event in contract
135
+ * @param creator - creator address
136
+ * @param callback - function for processing created order
137
+ * @returns unsubscribe - unsubscribe function from event
138
+ */
139
+ static onSlotAdded(callback, creator) {
140
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
141
+ const logger = this.logger.child({ method: 'onTeeSlotAdded' });
142
+ const subscription = contract.events.TeeSlotAdded();
143
+ subscription.on('data', (event) => {
144
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
145
+ if (creator && parsedEvent.creator != creator) {
146
+ return;
147
+ }
148
+ callback(parsedEvent.creator, parsedEvent.offerId, parsedEvent.slotId, (0, utils_js_1.parseBytes32String)(parsedEvent.externalId), {
149
+ index: Number(event.blockNumber),
150
+ hash: event.blockHash,
151
+ });
152
+ });
153
+ subscription.on('error', (error) => {
154
+ logger.warn(error);
155
+ });
156
+ return () => subscription.unsubscribe();
157
+ }
158
+ /**
159
+ * Function for adding event listeners on onSlotUpdated event in contract
160
+ * @param callback - function for processing created order
161
+ * @returns unsubscribe - unsubscribe function from event
162
+ */
163
+ static onSlotUpdated(callback) {
164
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
165
+ const logger = this.logger.child({ method: 'onTeeSlotUpdated' });
166
+ const subscription = contract.events.TeeSlotUpdated();
167
+ subscription.on('data', (event) => {
168
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
169
+ callback(parsedEvent.offerId, parsedEvent.slotId, {
170
+ index: Number(event.blockNumber),
171
+ hash: event.blockHash,
172
+ });
173
+ });
174
+ subscription.on('error', (error) => {
175
+ logger.warn(error);
176
+ });
177
+ return () => subscription.unsubscribe();
178
+ }
179
+ /**
180
+ * Function for adding event listeners on onSlotDeleted event in contract
181
+ * @param callback - function for processing created order
182
+ * @returns unsubscribe - unsubscribe function from event
183
+ */
184
+ static onSlotDeleted(callback) {
185
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
186
+ const logger = this.logger.child({ method: 'onTeeSlotDeleted' });
187
+ const subscription = contract.events.TeeSlotDeleted();
188
+ subscription.on('data', (event) => {
189
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
190
+ callback(parsedEvent.offerId, parsedEvent.slotId, {
191
+ index: Number(event.blockNumber),
192
+ hash: event.blockHash,
193
+ });
194
+ });
195
+ subscription.on('error', (error) => {
196
+ logger.warn(error);
197
+ });
198
+ return () => subscription.unsubscribe();
199
+ }
200
+ /**
201
+ * Function for adding event listeners on OptionAdded event in contract
202
+ * @param creator - creator address
203
+ * @param callback - function for processing created order
204
+ * @returns unsubscribe - unsubscribe function from event
205
+ */
206
+ static onOptionAdded(callback, creator) {
207
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
208
+ const logger = this.logger.child({ method: 'onTeeOptionAddedCallback' });
209
+ const subscription = contract.events.OptionAdded();
210
+ subscription.on('data', (event) => {
211
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
212
+ if (creator && parsedEvent.creator != creator) {
213
+ return;
214
+ }
215
+ callback(parsedEvent.creator, parsedEvent.teeOfferId, parsedEvent.optionId, (0, utils_js_1.parseBytes32String)(parsedEvent.externalId), {
216
+ index: Number(event.blockNumber),
217
+ hash: event.blockHash,
218
+ });
219
+ });
220
+ subscription.on('error', (error) => {
221
+ logger.warn(error);
222
+ });
223
+ return () => subscription.unsubscribe();
224
+ }
225
+ /**
226
+ * Function for adding event listeners on OptionUpdated event in contract
227
+ * @param teeOfferId - tee offer id
228
+ * @param callback - function for processing created order
229
+ * @returns unsubscribe - unsubscribe function from event
230
+ */
231
+ static onOptionUpdated(callback, teeOfferId) {
232
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
233
+ const logger = this.logger.child({ method: 'onTeeOptionUpdatedCallback' });
234
+ const subscription = contract.events.OptionUpdated();
235
+ subscription.on('data', (event) => {
236
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
237
+ if (teeOfferId && event.returnValues.teeOfferId != (0, helper_js_1.convertBigIntToString)(teeOfferId)) {
238
+ return;
239
+ }
240
+ callback(parsedEvent.teeOfferId, parsedEvent.optionId, {
241
+ index: Number(event.blockNumber),
242
+ hash: event.blockHash,
243
+ });
244
+ });
245
+ subscription.on('error', (error) => {
246
+ logger.warn(error);
247
+ });
248
+ return () => subscription.unsubscribe();
249
+ }
250
+ /**
251
+ * Function for adding event listeners on OptionDeleted event in contract
252
+ * @param teeOfferId - tee offer id
253
+ * @param callback - function for processing created order
254
+ * @returns unsubscribe - unsubscribe function from event
255
+ */
256
+ static onOptionDeleted(callback, teeOfferId) {
257
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
258
+ const logger = this.logger.child({ method: 'onTeeOptionDeletedCallback' });
259
+ const subscription = contract.events.OptionDeleted();
260
+ subscription.on('data', (event) => {
261
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
262
+ if (teeOfferId && parsedEvent.teeOfferId != (0, helper_js_1.convertBigIntToString)(teeOfferId)) {
263
+ return;
264
+ }
265
+ callback(parsedEvent.teeOfferId, parsedEvent.optionId, {
266
+ index: Number(event.blockNumber),
267
+ hash: event.blockHash,
268
+ });
269
+ });
270
+ subscription.on('error', (error) => {
271
+ logger.warn(error);
272
+ });
273
+ return () => subscription.unsubscribe();
274
+ }
275
+ /**
276
+ * Function for adding event listeners on TEE offer created event in TEE offers factory contract
277
+ * @param callback - function for processing created TEE offer
278
+ * @returns unsubscribe - unsubscribe function from event
279
+ */
280
+ static onCreated(callback) {
281
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
282
+ const logger = this.logger.child({ method: 'onTeeOfferCreated' });
283
+ const subscription = contract.events.TeeOfferCreated();
284
+ subscription.on('data', (event) => {
285
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
286
+ callback(parsedEvent.offerId, parsedEvent.creator, (0, utils_js_1.parseBytes32String)(parsedEvent.externalId), {
287
+ index: Number(event.blockNumber),
288
+ hash: event.blockHash,
289
+ });
290
+ });
291
+ subscription.on('error', (error) => {
292
+ logger.warn(error);
293
+ });
294
+ return () => subscription.unsubscribe();
295
+ }
296
+ static onViolationRateChanged(callback) {
297
+ const contract = index_js_2.BlockchainEventsListener.getInstance().getContract();
298
+ const logger = this.logger.child({ method: 'onTeeOfferViolationRateChanged' });
299
+ const subscription = contract.events.TeeOfferViolationRateChanged();
300
+ subscription.on('data', (event) => {
301
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
302
+ callback(parsedEvent.offerId, parsedEvent.providerAuth, parsedEvent.violationRate, {
303
+ index: Number(event.blockNumber),
304
+ hash: event.blockHash,
305
+ });
306
+ });
307
+ subscription.on('error', (error) => {
308
+ logger.warn(error);
309
+ });
310
+ return () => subscription.unsubscribe();
311
+ }
312
+ }
313
+ exports.default = TeeOffers;
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVlT2ZmZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0YXRpY01vZGVscy9UZWVPZmZlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBc0M7QUFDdEMsa0RBUTRCO0FBQzVCLGtEQUF5RjtBQUN6RixnREFZMkI7QUFDM0IscURBQXVGO0FBQ3ZGLGdFQUFxQztBQUNyQyx5RUFBOEM7QUFFOUMsc0VBQTJDO0FBRTNDLE1BQU0sU0FBUztJQUNMLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBVTtJQUVqQyxNQUFNLENBQVUsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFdkUsTUFBTSxDQUFDLFNBQVMsR0FBbUIsRUFBRSxDQUFDO0lBRXRDLE1BQU0sS0FBSyxPQUFPO1FBQ3ZCLE9BQU8scUJBQVEsQ0FBQyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBZ0I7UUFDbkQsTUFBTSxXQUFXLEdBQUcsTUFBTSxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDckQsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLElBQUksV0FBVyxDQUFDO1FBQ3BDLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxJQUFJLFdBQVcsQ0FBQztRQUVwQyxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQWdCO1FBQ3JELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUQsRUFBRSxDQUFDLFFBQVEsR0FBRyxJQUFBLDBCQUFjLEVBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVNLE1BQU0sQ0FBQyxL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
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_js_1 = require("./constants.js");
4
+ const store = {
5
+ web3Wss: undefined,
6
+ web3Https: undefined,
7
+ actionAccount: undefined,
8
+ gasLimit: constants_js_1.defaultGasLimit,
9
+ gasLimitMultiplier: constants_js_1.defaultGasLimitMultiplier,
10
+ gasPriceMultiplier: constants_js_1.defaultGasPriceMultiplier,
11
+ gasPrice: undefined,
12
+ txConcurrency: constants_js_1.txConcurrency,
13
+ txIntervalMs: constants_js_1.txIntervalMs,
14
+ keys: {},
15
+ };
16
+ exports.default = store;
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxpREFNd0I7QUFleEIsTUFBTSxLQUFLLEdBQVU7SUFDbkIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsU0FBUyxFQUFFLFNBQVM7SUFDcEIsYUFBYSxFQUFFLFNBQVM7SUFDeEIsUUFBUSxFQUFFLDhCQUFlO0lBQ3pCLGtCQUFrQixFQUFFLHdDQUF5QjtJQUM3QyxrQkFBa0IsRUFBRSx3Q0FBeUI7SUFDN0MsUUFBUSxFQUFFLFNBQVM7SUFDbkIsYUFBYSxFQUFFLDRCQUFhO0lBQzVCLFlBQVksRUFBRSwyQkFBWTtJQUMxQixJQUFJLEVBQUUsRUFBRTtDQUNULENBQUM7QUFFRixrQkFBZSxLQUFLLENBQUMifQ==
@@ -1,4 +1,4 @@
1
- import { BinaryType, TeeSgxQuoteDataType, TeeSgxReportDataType } from './types';
1
+ import { BinaryType, TeeSgxQuoteDataType, TeeSgxReportDataType } from './types.js';
2
2
  export declare class TeeSgxParser {
3
3
  static readonly quoteHeaderSize = 48;
4
4
  static readonly pceSvnOffset = 10;
@@ -0,0 +1,189 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.TeeSgxParser = void 0;
27
+ const x509_1 = require("@fidm/x509");
28
+ const asn1js = __importStar(require("asn1js"));
29
+ const pkijs = __importStar(require("pkijs"));
30
+ const buffer_1 = require("buffer");
31
+ const errors_js_1 = require("./errors.js");
32
+ const helpers_js_1 = require("./helpers.js");
33
+ class TeeSgxParser {
34
+ static quoteHeaderSize = 48;
35
+ static pceSvnOffset = 10;
36
+ static reportSize = 384;
37
+ static userDataOffset = 28;
38
+ static userDataSize = 20;
39
+ static cpuSvnSize = 16;
40
+ static reportMrEnclaveOffset = 64;
41
+ static reportMrEnclaveSize = 32;
42
+ static reportMrSignerOffset = TeeSgxParser.reportMrEnclaveOffset + TeeSgxParser.reportMrEnclaveSize + /* reserved */ 32;
43
+ static reportMrSignerSize = 32;
44
+ static reportIsvProdIdOffset = TeeSgxParser.reportMrSignerOffset + TeeSgxParser.reportMrSignerSize + /* reserved */ 96;
45
+ static reportIsvProdIdSize = 2;
46
+ static reportIsvSvnOffset = TeeSgxParser.reportIsvProdIdOffset + TeeSgxParser.reportIsvProdIdSize;
47
+ static reportIsvSvnSize = 2;
48
+ static reportDataOffset = TeeSgxParser.reportIsvSvnOffset + TeeSgxParser.reportIsvSvnSize + /* reserved */ 60;
49
+ static reportUserDataSize = 64;
50
+ static reportUserDataSHA256Size = 32; /* 64 in report, but we need 32 only for sha256 hash */
51
+ static ecdsaP256SignatureSize = 64;
52
+ static ecdsaP256PublicKeySize = 64;
53
+ getDataAndAdvance(blob, size) {
54
+ const buf = buffer_1.Buffer.from(blob.data.subarray(0, size));
55
+ blob.data = buffer_1.Buffer.from(blob.data.subarray(size));
56
+ return buf;
57
+ }
58
+ extractRS(cert) {
59
+ const derSignature = Buffer.from(cert.signatureValue.valueBlock.valueHexView).toString('hex');
60
+ const parsedSignature = helpers_js_1.Signature.importFromDER(derSignature);
61
+ return {
62
+ r: parsedSignature.r,
63
+ s: parsedSignature.s,
64
+ derSignature,
65
+ };
66
+ }
67
+ parsePem(pem) {
68
+ const cert = x509_1.Certificate.fromPEM(Buffer.from(pem));
69
+ const asn1Certificate = asn1js.fromBER(cert.raw);
70
+ const certificate = new pkijs.Certificate({ schema: asn1Certificate.result });
71
+ const tbs = certificate.tbsView;
72
+ const { r, s } = this.extractRS(certificate);
73
+ const publicKey = cert.publicKey.keyRaw.toString('hex').slice(2);
74
+ const splitedTbs = Buffer.from(tbs).toString('hex').split(publicKey);
75
+ const x509PublicKey = '0x' + publicKey;
76
+ const x509Signature = '0x' + r + s;
77
+ return {
78
+ bodyPartOne: '0x' + splitedTbs[0],
79
+ publicKey: x509PublicKey,
80
+ bodyPartTwo: '0x' + splitedTbs[1],
81
+ signature: x509Signature,
82
+ };
83
+ }
84
+ parseQuote(data) {
85
+ const { quoteHeaderSize, pceSvnOffset, reportSize, userDataOffset, userDataSize, ecdsaP256SignatureSize, ecdsaP256PublicKeySize, } = TeeSgxParser;
86
+ if (data.length < quoteHeaderSize + reportSize) {
87
+ throw new errors_js_1.TeeQuoteParserError('data has invalid length');
88
+ }
89
+ const quoteRemainder = { data: buffer_1.Buffer.from(data) };
90
+ const quoteHeader = this.getDataAndAdvance(quoteRemainder, quoteHeaderSize);
91
+ const report = this.getDataAndAdvance(quoteRemainder, reportSize);
92
+ const version = quoteHeader.readUInt16LE(0);
93
+ const attestationKeyType = quoteHeader.readUInt16LE(2);
94
+ if (attestationKeyType > 3) {
95
+ throw new errors_js_1.TeeQuoteParserError('quote header has invalid or unsupported attestation key type');
96
+ }
97
+ const pceSvn = quoteHeader.readUInt16LE(pceSvnOffset);
98
+ const userData = quoteHeader.slice(userDataOffset, userDataOffset + userDataSize);
99
+ const quoteSignatureDateLen = quoteRemainder.data.readUInt32LE(0);
100
+ quoteRemainder.data = buffer_1.Buffer.from(quoteRemainder.data.subarray(4));
101
+ if (quoteSignatureDateLen != quoteRemainder.data.length) {
102
+ throw new errors_js_1.TeeQuoteParserError(`quoteSignatureDateLen has invalid length: ${quoteRemainder.data.length} instead of ${quoteSignatureDateLen} expected`);
103
+ }
104
+ const rawQuoteSignatureDataRemainder = {
105
+ data: this.getDataAndAdvance(quoteRemainder, quoteSignatureDateLen),
106
+ };
107
+ const isvEnclaveReportSignature = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256SignatureSize);
108
+ const ecdsaAttestationKey = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256PublicKeySize);
109
+ const qeReport = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, reportSize);
110
+ const qeReportSignature = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256SignatureSize);
111
+ const qeAuthenticationDataSize = rawQuoteSignatureDataRemainder.data.readUInt16LE(0);
112
+ rawQuoteSignatureDataRemainder.data = buffer_1.Buffer.from(rawQuoteSignatureDataRemainder.data.subarray(2));
113
+ if (rawQuoteSignatureDataRemainder.data.length < qeAuthenticationDataSize) {
114
+ throw new errors_js_1.TeeQuoteParserError(`qeAuthenticationDataSize has invalid length: ${rawQuoteSignatureDataRemainder.data.length} instead of ${qeAuthenticationDataSize} expected`);
115
+ }
116
+ const qeAuthenticationData = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, qeAuthenticationDataSize);
117
+ const qeCertificationDataType = rawQuoteSignatureDataRemainder.data.readUInt16LE(0);
118
+ if (qeCertificationDataType < 1 || qeCertificationDataType > 7) {
119
+ throw new errors_js_1.TeeQuoteParserError(`certificationDataType has invalid value: ${qeCertificationDataType}`);
120
+ }
121
+ const certificationDataSize = rawQuoteSignatureDataRemainder.data.readUInt32LE(2);
122
+ const qeCertificationData = rawQuoteSignatureDataRemainder.data.subarray(2 + 4);
123
+ if (certificationDataSize != qeCertificationData.length) {
124
+ throw new errors_js_1.TeeQuoteParserError(`certificationDataSize has invalid length: $PqeCertificationData.length} instead of ${certificationDataSize} expected`);
125
+ }
126
+ const certsPems = (0, helpers_js_1.splitChain)(qeCertificationData.toString()); // [device, platform, root]
127
+ const certsData = certsPems.map((pem) => this.parsePem(pem));
128
+ return {
129
+ rawHeader: quoteHeader,
130
+ header: {
131
+ version,
132
+ attestationKeyType,
133
+ pceSvn,
134
+ userData,
135
+ },
136
+ report,
137
+ isvEnclaveReportSignature,
138
+ ecdsaAttestationKey,
139
+ qeReport,
140
+ qeReportSignature,
141
+ qeAuthenticationData,
142
+ qeCertificationDataType,
143
+ qeCertificationData,
144
+ certificates: {
145
+ device: {
146
+ pem: certsPems[0],
147
+ x509Data: certsData[0],
148
+ },
149
+ platform: {
150
+ pem: certsPems[1],
151
+ x509Data: certsData[1],
152
+ },
153
+ root: {
154
+ pem: certsPems[2],
155
+ x509Data: certsData[2],
156
+ },
157
+ },
158
+ };
159
+ }
160
+ parseReport(data) {
161
+ const { reportSize, cpuSvnSize, reportMrEnclaveOffset, reportMrEnclaveSize, reportMrSignerOffset, reportMrSignerSize, reportIsvProdIdOffset, reportIsvProdIdSize, reportIsvSvnOffset, reportIsvSvnSize, reportDataOffset, reportUserDataSize, reportUserDataSHA256Size, } = TeeSgxParser;
162
+ if (data.length < reportSize) {
163
+ throw new errors_js_1.TeeQuoteParserError('data has invalid length');
164
+ }
165
+ const report = buffer_1.Buffer.from(data);
166
+ const cpuSvn = report.slice(0, cpuSvnSize).toString('hex');
167
+ const mrEnclave = report.slice(reportMrEnclaveOffset, reportMrEnclaveOffset + reportMrEnclaveSize);
168
+ const mrSigner = report.slice(reportMrSignerOffset, reportMrSignerOffset + reportMrSignerSize);
169
+ const isvProdId = report
170
+ .slice(reportIsvProdIdOffset, reportIsvProdIdOffset + reportIsvProdIdSize)
171
+ .readUInt16LE(0);
172
+ const isvSvn = report
173
+ .slice(reportIsvSvnOffset, reportIsvSvnOffset + reportIsvSvnSize)
174
+ .readUInt16LE(0);
175
+ const userData = report.slice(reportDataOffset, reportDataOffset + reportUserDataSize);
176
+ const dataHash = report.slice(reportDataOffset, reportDataOffset + reportUserDataSHA256Size);
177
+ return {
178
+ cpuSvn,
179
+ mrEnclave,
180
+ mrSigner,
181
+ isvProdId,
182
+ isvSvn,
183
+ userData,
184
+ dataHash,
185
+ };
186
+ }
187
+ }
188
+ exports.TeeSgxParser = TeeSgxParser;
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVvdGVQYXJzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVlL1F1b3RlUGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBQXlDO0FBQ3pDLCtDQUFpQztBQUNqQyw2Q0FBK0I7QUFDL0IsbUNBQXdDO0FBQ3hDLDJDQUFrRDtBQUVsRCw2Q0FBcUQ7QUFFckQsTUFBYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBVSxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sQ0FBVSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xDLE1BQU0sQ0FBVSxVQUFVLEdBQUcsR0FBRyxDQUFDO0lBQ2pDLE1BQU0sQ0FBVSxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQ3BDLE1BQU0sQ0FBVSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xDLE1BQU0sQ0FBVSxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLE1BQU0sQ0FBVSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7SUFDM0MsTUFBTSxDQUFVLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztJQUN6QyxNQUFNLENBQVUsb0JBQW9CLEdBQ2xDLFlBQVksQ0FBQyxxQkFBcUIsR0FBRyxZQUFZLENBQUMsbUJBQW1CLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQztJQUM1RixNQUFNLENBQVUsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sQ0FBVSxxQkFBcUIsR0FDbkMsWUFBWSxDQUFDLG9CQUFvQixHQUFHLFlBQVksQ0FBQyxrQkFBa0IsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDO0lBQzFGLE1BQU0sQ0FBVSxtQkFBbUIsR0FBRyxDQUFDLENBQUM7SUFDeEMsTUFBTSxDQUFVLGtCQUFrQixHQUNoQyxZQUFZLENBQUMscUJBQXFCLEdBQUcsWUFBWSxDQUFDLG1CQUFtQixDQUFDO0lBQ3hFLE1BQU0sQ0FBVSxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFDckMsTUFBTSxDQUFVLGdCQUFnQixHQUM5QixZQUFZLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLGdCQUFnQixHQUFHLGNBQWMsQ0FBQyxFQUFFLENBQUM7SUFDdEYsTUFBTSxDQUFVLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztJQUN4QyxNQUFNLENBQVUsd0JBQXdCLEdBQUcsRUFBRSxDQUFDLENBQUMsdURBQXVEO0lBQ3RHLE1BQU0sQ0FBVSxzQkFBc0IsR0FBRyxFQUFFLENBQUM7SUFDNUMsTUFBTSxDQUFVLHNCQUFzQixHQUFHLEVBQUUsQ0FBQztJQUVwQyxpQkFBaUIsQ0FBQyxJQUFvQixFQUFFLElBQVk7UUFDMUQsTUFBTSxHQUFHLEdBQUcsZUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsSUFBSSxHQUFHLGVBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUVoRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTyxTQUFTLENBQUMsSUFBdUI7UUFDdkMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUYsTUFBTSxlQUFlLEdBQUcsc0JBQVMsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFOUQsT0FBTztZQUNMLENBQUMsRUFBRSxlQUFlLENBQUMsQ0FBQztZQUNwQixDQUFDLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDcEIsWUFBWTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRU8sUUFBUSxDQUFDLEdBQVc7UUFDMUIsTUFBTSxJQUFJLEdBQUcsa0JBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ25ELE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUU5RSxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDO1FBRWhDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU3QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyRSxNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsU0FBUyxDQUFDO1FBQ3ZDLE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRW5DLE9BQU87WUFDTCxXQUFXLEVBQUUsSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFDakMsU0FBUyxFQUFFLGFBQWE7WUFDeEIsV0FBVyxFQUFFLElBQUksR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLFNBQVMsRUFBRSxhQUFhO1NBQ3pCLENBQUM7SUFDSixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQWdCO1FBQ3pCLE1BQU0sRUFDSixlQUFlLEVBQ2YsWUFBWSxFQUNaLFVBQVUsRUFDVixjQUFjLEVBQ2QsWUFBWSxFQUNaLHNCQUFzQixFQUN0QixzQkFBc0IsR0FDdkIsR0FBRyxZQUFZLENBQUM7UUFFakIsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLGVBQWUsR0FBRyxVQUFVLEVBQUUsQ0FBQztZQUMvQyxNQUFNLElBQUksK0JBQW1CLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsTUFBTSxjQUFjLEdBQUcsRUFBRSxJQUFJLEVBQUUsZUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDNUUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVsRSxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTVDLE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxJQUFJLGtCQUFrQixHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSwrQkFBbUIsQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1FBQ2hHLENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXRELE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLGNBQWMsR0FBRyxZQUFZLENBQUMsQ0FBQztRQUVsRixNQUFNLHFCQUFxQixHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLGNBQWMsQ0FBQyxJQUFJLEdBQUcsZUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWpFLElBQUkscUJBQXFCLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4RCxNQUFNLElBQUksK0JBQW1CLENBQzNCLDZDQUE2QyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sZUFBZSxxQkFBcUIsV0FBVyxDQUN2SCxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sOEJBQThCLEdBQUc7WUFDckMsSUFBSSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUM7U0FDcEUsQ0FBQztRQUNGLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUN0RCw4QkFBOEIsRUFDOUIsc0JBQXNCLENBQ3ZCLENBQUM7UUFDRixNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FDaEQsOEJBQThCLEVBQzlCLHNCQUFzQixDQUN2QixDQUFDO1FBQ0YsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLDhCQUE4QixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3BGLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUM5Qyw4QkFBOEIsRUFDOUIsc0JBQXNCLENBQ3ZCLENBQUM7UUFDRixNQUFNLHdCQUF3QixHQUFHLDhCQUE4QixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckYsOEJBQThCLENBQUMsSUFBSSxHQUFHLGVBQUksQ0FBQyxJQUFJLENBQzdDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQ2hELENBQUM7UUFFRixJQUFJLDhCQUE4QixDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsd0JBQXdCLEVBQUUsQ0FBQztZQUMxRSxNQUFNLElBQUksK0JBQW1CLENBQzNCLGdEQUFnRCw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsTUFBTSxlQUFlLHdCQUF3QixXQUFXLENBQzdJLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQ2pELDhCQUE4QixFQUM5Qix3QkFBd0IsQ0FDekIsQ0FBQztRQUVGLE1BQU0sdUJBQXVCLEdBQUcsOEJBQThCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVwRixJQUFJLHVCQUF1QixHQUFHLENBQUMsSUFBSSx1QkFBdUIsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMvRCxNQUFNLElBQUksK0JBQW1CLENBQzNCLDRDQUE0Qyx1QkFBdUIsRUFBRSxDQUN0RSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0scUJBQXFCLEdBQUcsOEJBQThCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRixNQUFNLG1CQUFtQixHQUFHLDhCQUE4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRWhGLElBQUkscUJBQXFCLElBQUksbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEQsTUFBTSxJQUFJLCtCQUFtQixDQUMzQixzRkFBc0YscUJBQXFCLFdBQVcsQ0FDdkgsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFBLHVCQUFVLEVBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLDJCQUEyQjtRQUN6RixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFN0QsT0FBTztZQUNMLFNBQVMsRUFBRSxXQUFXO1lBQ3RCLE1BQU0sRUFBRTtnQkFDTixPQUFPO2dCQUNQLGtCQUFrQjtnQkFDbEIsTUFBTTtnQkFDTixRQUFRO2FBQ1Q7WUFDRCxNQUFNO1lBQ04seUJBQXlCO1lBQ3pCLG1CQUFtQjtZQUNuQixRQUFRO1lBQ1IsaUJBQWlCO1lBQ2pCLG9CQUFvQjtZQUNwQix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLFlBQVksRUFBRTtnQkFDWixNQUFNLEVBQUU7b0JBQ04sR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ2pCLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO2lCQUN2QjtnQkFDRCxRQUFRLEVBQUU7b0JBQ1IsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ2pCLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO2lCQUN2QjtnQkFDRCxJQUFJLEVBQUU7b0JBQ0osR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ2pCLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO2lCQUN2QjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBZ0I7UUFDMUIsTUFBTSxFQUNKLFVBQVUsRUFDVixVQUFVLEVBQ1YscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLHdCQUF3QixHQUN6QixHQUFHLFlBQVksQ0FBQztRQUVqQixJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsVUFBVSxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLCtCQUFtQixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFHLGVBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQzVCLHFCQUFxQixFQUNyQixxQkFBcUIsR0FBRyxtQkFBbUIsQ0FDNUMsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztRQUMvRixNQUFNLFNBQVMsR0FBRyxNQUFNO2FBQ3JCLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxxQkFBcUIsR0FBRyxtQkFBbUIsQ0FBQzthQUN6RSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsTUFBTSxNQUFNLEdBQUcsTUFBTTthQUNsQixLQUFLLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUM7YUFDaEUsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25CLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztRQUN2RixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixHQUFHLHdCQUF3QixDQUFDLENBQUM7UUFFN0YsT0FBTztZQUNMLE1BQU07WUFDTixTQUFTO1lBQ1QsUUFBUTtZQUNSLFNBQVM7WUFDVCxNQUFNO1lBQ04sUUFBUTtZQUNSLFFBQVE7U0FDVCxDQUFDO0lBQ0osQ0FBQzs7QUEzT0gsb0NBNE9DIn0=
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { QuoteValidationStatuses } from './statuses';
2
+ import { QuoteValidationStatuses } from './statuses.js';
3
3
  export interface ValidationResult {
4
4
  quoteValidationStatus: QuoteValidationStatuses;
5
5
  description: string;