@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,114 @@
1
+ import { checkIfActionAccountInitialized, cleanWeb3Data, convertBigIntToString, } from '../utils/helper.js';
2
+ import { BlockchainConnector } from '../connectors/index.js';
3
+ import TxManager from '../utils/TxManager.js';
4
+ import Consensus from '../staticModels/Consensus.js';
5
+ class Provider {
6
+ static contract;
7
+ providerInfo;
8
+ violationRate;
9
+ valueOffers;
10
+ teeOffers;
11
+ origins;
12
+ providerId;
13
+ constructor(providerId) {
14
+ this.providerId = providerId;
15
+ if (!Provider.contract) {
16
+ Provider.contract = BlockchainConnector.getInstance().getContract();
17
+ }
18
+ }
19
+ async modify(providerInfo, transactionOptions) {
20
+ checkIfActionAccountInitialized(transactionOptions);
21
+ await TxManager.execute(Provider.contract.methods.modifyProvider(providerInfo), transactionOptions);
22
+ }
23
+ /**
24
+ * Function for fetching provider info from blockchain
25
+ */
26
+ async getInfo() {
27
+ const providerInfoParams = await Provider.contract.methods
28
+ .getProviderInfo(this.providerId)
29
+ .call()
30
+ .then((providerInfo) => cleanWeb3Data(providerInfo));
31
+ return (this.providerInfo = providerInfoParams);
32
+ }
33
+ /**
34
+ * Function for fetching provider authority address from blockchain
35
+ */
36
+ getAuthority() {
37
+ return this.providerId.toString();
38
+ }
39
+ /**
40
+ * Function for fetching all value offers for this provider
41
+ */
42
+ async getValueOffers() {
43
+ this.valueOffers = await Provider.contract.methods
44
+ .getProviderValueOffers(this.providerId)
45
+ .call()
46
+ .then((offers) => offers.map((offer) => offer.toString()));
47
+ return this.valueOffers;
48
+ }
49
+ /**
50
+ * Function for fetching all TEE offers for this provider
51
+ */
52
+ async getTeeOffers() {
53
+ this.teeOffers = await Provider.contract.methods
54
+ .getProviderTeeOffers(this.providerId)
55
+ .call()
56
+ .then((offers) => offers.map((offer) => offer.toString()));
57
+ return this.teeOffers;
58
+ }
59
+ /**
60
+ * Function for fetching violationRate for this provider
61
+ */
62
+ async getViolationRate() {
63
+ return convertBigIntToString(await Provider.contract.methods.getProviderViolationRate(this.providerId).call());
64
+ }
65
+ /**
66
+ * Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
67
+ */
68
+ async getOrigins() {
69
+ const origins = await Provider.contract.methods
70
+ .getProviderOrigins(this.providerId)
71
+ .call()
72
+ .then((origins) => cleanWeb3Data(origins));
73
+ // Convert blockchain time seconds to js time milliseconds
74
+ origins.createdDate = Number(origins.createdDate) * 1000;
75
+ origins.modifiedDate = Number(origins.modifiedDate) * 1000;
76
+ return (this.origins = origins);
77
+ }
78
+ /**
79
+ * Fetch calculation of required providers security deposit for offers,
80
+ * if additionalAmount is equal zero then deposit will be calculated for existing offers
81
+ * @param additionalAmount - number of tokens planned to be added and frozen as security deposit
82
+ * @returns required deposit
83
+ */
84
+ getRequiredSecurityDeposit(additionalAmount = '0') {
85
+ const contract = BlockchainConnector.getInstance().getContract();
86
+ return contract.methods.getProviderRequiredSecDepo(this.providerId, additionalAmount).call();
87
+ }
88
+ /**
89
+ * Fetch provider security deposit by provider authority account
90
+ */
91
+ async getSecurityDeposit() {
92
+ const contract = BlockchainConnector.getInstance().getContract();
93
+ return convertBigIntToString(await contract.methods.getProviderSecurityDeposit(this.providerId).call());
94
+ }
95
+ async isProviderBanned() {
96
+ const violationRate = await this.getViolationRate();
97
+ const { CONSENSUS_MAX_PENALTIES } = await Consensus.getConstants();
98
+ return Number(violationRate) >= Number(CONSENSUS_MAX_PENALTIES);
99
+ }
100
+ getOrdersLockedProfitList() {
101
+ return Provider.contract.methods
102
+ .getOrdersLockedProfitList(this.providerId)
103
+ .call()
104
+ .then((orders) => orders.map((order) => order.toString()));
105
+ }
106
+ getTcbLockedProfitList() {
107
+ return Provider.contract.methods
108
+ .getTcbLockedProfitList(this.providerId)
109
+ .call()
110
+ .then((tcbIds) => tcbIds.map((tcbId) => tcbId.toString()));
111
+ }
112
+ }
113
+ export default Provider;
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFDTCwrQkFBK0IsRUFDL0IsYUFBYSxFQUNiLHFCQUFxQixHQUN0QixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQzlDLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBRXJELE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRXZDLFlBQVksQ0FBZ0I7SUFDNUIsYUFBYSxDQUFtQjtJQUNoQyxXQUFXLENBQWtCO0lBQzdCLFNBQVMsQ0FBa0I7SUFDM0IsT0FBTyxDQUFXO0lBQ2xCLFVBQVUsQ0FBUztJQUUxQixZQUFZLFVBQWtCO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFlBQTBCLEVBQzFCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxFQUN0RCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9B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
@@ -0,0 +1,58 @@
1
+ import { BlockchainId, TcbData, TcbPublicData, TcbUtilityData, TransactionOptions } from '../types/index.js';
2
+ declare class TCB {
3
+ private static readonly logger;
4
+ tcbId: BlockchainId;
5
+ private static contract;
6
+ constructor(tcbId: BlockchainId);
7
+ private applyTcbMarks;
8
+ private setTcbData;
9
+ /**
10
+ * Add data to TeeConfirmationBlock and push it to Consensus
11
+ * @param pb - struct of 'processed' data
12
+ * @param quote - data generated from Enclave
13
+ * @param marks - list of marks
14
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
15
+ */
16
+ private addToSupply;
17
+ apply(publicData: TcbPublicData, quote: string, publicKey: string, transactionOptions?: TransactionOptions): Promise<void>;
18
+ /**
19
+ * Assign TCB from SuspiciousBlocks table to check
20
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
21
+ */
22
+ assignSuspiciousBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
23
+ /**
24
+ * Assign TCB from LastBlocks table to check
25
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
26
+ */
27
+ assignLastBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
28
+ /**
29
+ * Function stake and lock TCB's reward
30
+ * @param tcbId - TEE Offer's completed and valid TCB contract
31
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
32
+ */
33
+ claimRewards(transactionOptions?: TransactionOptions): Promise<void>;
34
+ /**
35
+ * Function unlock previously locked TCB rewards (by claimRewards)
36
+ * @param tcbId - TCB contract address
37
+ * @param unlockAmount - amount of tokens to unlock, max available amount = TeeOffer.getLockInfo(tcbAddress)
38
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
39
+ */
40
+ unlockRewards(transactionOptions?: TransactionOptions): Promise<void>;
41
+ /**
42
+ * Function for fetching all TCB data
43
+ */
44
+ get(): Promise<TcbData>;
45
+ /**
46
+ * Function for fetching Public Data from TCB
47
+ */
48
+ getPublicData(): Promise<TcbPublicData>;
49
+ /**
50
+ * Function for fetching Public Data from TCB
51
+ */
52
+ getUtilityData(): Promise<TcbUtilityData>;
53
+ /**
54
+ * Function for fetching TCB avaliable reward
55
+ */
56
+ getRewardAmount(): Promise<bigint>;
57
+ }
58
+ export default TCB;
@@ -0,0 +1,107 @@
1
+ import TxManager from '../utils/TxManager.js';
2
+ import { BlockchainConnector } from '../connectors/index.js';
3
+ import { checkIfActionAccountInitialized, cleanWeb3Data, packDeviceId } from '../utils/helper.js';
4
+ import Consensus from '../staticModels/Consensus.js';
5
+ import rootLogger from '../logger.js';
6
+ class TCB {
7
+ static logger = rootLogger.child({ className: 'TCB' });
8
+ tcbId;
9
+ static contract;
10
+ constructor(tcbId) {
11
+ this.tcbId = tcbId;
12
+ if (!TCB.contract) {
13
+ TCB.contract = BlockchainConnector.getInstance().getContract();
14
+ }
15
+ }
16
+ applyTcbMarks(marks, transactionOptions) {
17
+ return TxManager.execute(TCB.contract.methods.applyTcbMarks(marks, this.tcbId), transactionOptions);
18
+ }
19
+ setTcbData(publicData, quote, publicKey, transactionOptions) {
20
+ checkIfActionAccountInitialized(transactionOptions);
21
+ const fromattedDeviceId = packDeviceId(publicData.deviceId);
22
+ return TxManager.execute(TCB.contract.methods.setTcbData(this.tcbId, publicData.benchmark, publicData.properties, fromattedDeviceId, quote, publicKey), transactionOptions);
23
+ }
24
+ /**
25
+ * Add data to TeeConfirmationBlock and push it to Consensus
26
+ * @param pb - struct of 'processed' data
27
+ * @param quote - data generated from Enclave
28
+ * @param marks - list of marks
29
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
30
+ */
31
+ addToSupply(transactionOptions) {
32
+ checkIfActionAccountInitialized(transactionOptions);
33
+ return TxManager.execute(TCB.contract.methods.addTcbToSupply(this.tcbId), transactionOptions);
34
+ }
35
+ async apply(publicData, quote, publicKey, transactionOptions) {
36
+ try {
37
+ await this.applyTcbMarks(publicData.checkingTcbMarks, transactionOptions);
38
+ await this.setTcbData(publicData, quote, publicKey, transactionOptions);
39
+ await this.addToSupply(transactionOptions);
40
+ }
41
+ catch (error) {
42
+ TCB.logger.debug({ error }, 'Adding TCB to blockchain failed');
43
+ }
44
+ }
45
+ /**
46
+ * Assign TCB from SuspiciousBlocks table to check
47
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
48
+ */
49
+ async assignSuspiciousBlocksToCheck(transactionOptions) {
50
+ await TxManager.execute(TCB.contract.methods.assignSuspiciousBlocksToCheck(this.tcbId), transactionOptions);
51
+ }
52
+ /**
53
+ * Assign TCB from LastBlocks table to check
54
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
55
+ */
56
+ async assignLastBlocksToCheck(transactionOptions) {
57
+ await TxManager.execute(TCB.contract.methods.assignLastBlocksToCheck(this.tcbId), transactionOptions);
58
+ }
59
+ /**
60
+ * Function stake and lock TCB's reward
61
+ * @param tcbId - TEE Offer's completed and valid TCB contract
62
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
63
+ */
64
+ async claimRewards(transactionOptions) {
65
+ checkIfActionAccountInitialized();
66
+ await TxManager.execute(TCB.contract.methods.claimRewards(this.tcbId), transactionOptions);
67
+ }
68
+ /**
69
+ * Function unlock previously locked TCB rewards (by claimRewards)
70
+ * @param tcbId - TCB contract address
71
+ * @param unlockAmount - amount of tokens to unlock, max available amount = TeeOffer.getLockInfo(tcbAddress)
72
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
73
+ */
74
+ async unlockRewards(transactionOptions) {
75
+ checkIfActionAccountInitialized();
76
+ await TxManager.execute(TCB.contract.methods.unlockTcbReward(this.tcbId), transactionOptions);
77
+ }
78
+ /**
79
+ * Function for fetching all TCB data
80
+ */
81
+ async get() {
82
+ const tcb = cleanWeb3Data(await TCB.contract.methods.getTcbById(this.tcbId).call());
83
+ return tcb;
84
+ }
85
+ /**
86
+ * Function for fetching Public Data from TCB
87
+ */
88
+ async getPublicData() {
89
+ const publicData = await Consensus.getTcbsPublicData([this.tcbId]);
90
+ return publicData[this.tcbId];
91
+ }
92
+ /**
93
+ * Function for fetching Public Data from TCB
94
+ */
95
+ async getUtilityData() {
96
+ const utilityData = await Consensus.getTcbsUtilityData([this.tcbId]);
97
+ return utilityData[this.tcbId];
98
+ }
99
+ /**
100
+ * Function for fetching TCB avaliable reward
101
+ */
102
+ getRewardAmount() {
103
+ return TCB.contract.methods.getTcbReward(this.tcbId).call();
104
+ }
105
+ }
106
+ export default TCB;
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVENCLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVscy9UQ0IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRyxPQUFPLFNBQVMsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRCxPQUFPLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFFdEMsTUFBTSxHQUFHO0lBQ0MsTUFBTSxDQUFVLE1BQU0sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakUsS0FBSyxDQUFlO0lBQ25CLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRTlDLFlBQVksS0FBbUI7UUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixHQUFHLENBQUMsUUFBUSxHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pFLENBQUM7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUNuQixLQUEwQixFQUMxQixrQkFBdUM7UUFFdkMsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUN0QixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDckQsa0JBQWtCLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRU8sVUFBVSxDQUNoQixVQUF5QixFQUN6QixLQUFhLEVBQ2IsU0FBaUIsRUFDakIsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7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
@@ -0,0 +1,204 @@
1
+ import { TeeOfferInfo, TransactionOptions, OfferType, Origins, BlockchainId, TokenAmount } from '../types/index.js';
2
+ import { HardwareInfo, TeeOfferOption, TeeOfferSlot, OptionInfo, SlotUsage, SlotInfo } from '../types/index.js';
3
+ import { GetTcbRequest } from '@super-protocol/dto-js';
4
+ declare class TeeOffer {
5
+ private static contract;
6
+ id: BlockchainId;
7
+ violationRate?: bigint | string;
8
+ totalLocked?: TokenAmount;
9
+ offerInfo?: TeeOfferInfo;
10
+ type?: OfferType;
11
+ providerAuthority?: string;
12
+ provider?: string;
13
+ enabled?: boolean;
14
+ tcb?: string;
15
+ tlbAddedTime?: number;
16
+ tcbAddedTime?: number;
17
+ origins?: Origins;
18
+ isCancelable?: boolean;
19
+ minDeposit?: TokenAmount;
20
+ constructor(offerId: BlockchainId);
21
+ /**
22
+ * Function for fetching offer status from the blockchain
23
+ */
24
+ isEnabled(): Promise<boolean>;
25
+ /**
26
+ * Function for fetching offer hold deposit
27
+ */
28
+ getMinDeposit(slotId: BlockchainId, slotCount: number, optionsIds: BlockchainId[], optionsCount: number[]): Promise<TokenAmount>;
29
+ /**
30
+ * @returns this TEE offer slots count
31
+ */
32
+ getSlotsCount(): Promise<number>;
33
+ /**
34
+ * @returns True if offer is cancelable.
35
+ */
36
+ isOfferCancelable(): Promise<boolean>;
37
+ /**
38
+ * Function for fetching TEE offer info from blockchain
39
+ */
40
+ getInfo(): Promise<TeeOfferInfo>;
41
+ /**
42
+ * Function for fetching TEE offer hardware info from blockchain
43
+ */
44
+ getHardwareInfo(): Promise<HardwareInfo>;
45
+ /**
46
+ * Function for fetching tee offer slot by id
47
+ * @param optionId - Slot ID
48
+ */
49
+ getOptionById(optionId: BlockchainId): Promise<TeeOfferOption>;
50
+ getOptions(begin?: number, end?: number): Promise<TeeOfferOption[]>;
51
+ /**
52
+ * Function for fetching whether tee offer slot exists or not
53
+ * @param optionId - Option ID
54
+ */
55
+ isOptionExists(optionId: BlockchainId): Promise<boolean>;
56
+ /**
57
+ * Function for add option usage to the tee offer
58
+ * @param optionId - Option ID
59
+ * @param info - New option info
60
+ * @param usage - New slot usage info
61
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
62
+ */
63
+ addOption(info: OptionInfo, usage: SlotUsage, externalId?: string, transactionOptions?: TransactionOptions): Promise<void>;
64
+ /**
65
+ * Function for update option info and usage
66
+ * @param optionId - Option ID
67
+ * @param newInfo - New option info
68
+ * @param newUsage - New slot usage info
69
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
70
+ */
71
+ updateOption(optionId: BlockchainId, newInfo: OptionInfo, newUsage: SlotUsage, transactionOptions?: TransactionOptions): Promise<void>;
72
+ /**
73
+ * Function for delete option
74
+ * @param optionId - Option ID
75
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
76
+ */
77
+ deleteOption(optionId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
78
+ initializeTcb(transactionOptions?: TransactionOptions): Promise<void>;
79
+ private initializeTcbAndAssignBlocks;
80
+ /**
81
+ * Function initialize TCB and returns list of anothers' TCB for their checking
82
+ * @param teeOfferId - id of TEE offer
83
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
84
+ * @returns tcbId and lists of anothers' TCB for their checking
85
+ */
86
+ getListsForVerification(transactionOptions?: TransactionOptions): Promise<GetTcbRequest>;
87
+ /**
88
+ * Function for fetching whether tee offer slot exists or not
89
+ * @param slotId - Slot ID
90
+ */
91
+ isSlotExists(slotId: BlockchainId): Promise<boolean>;
92
+ /**
93
+ * Function for fetching tee offer slot by id
94
+ * @param slotId - Slot ID
95
+ */
96
+ getSlotById(slotId: BlockchainId): Promise<TeeOfferSlot>;
97
+ /**
98
+ * Function for fetching TEE offer slots info from blockchain
99
+ * @param begin - The first element of range.
100
+ * @param end - One past the final element in the range.
101
+ * @returns {Promise<TeeOfferSlot[]>}
102
+ */
103
+ getSlots(begin?: number, end?: number): Promise<TeeOfferSlot[]>;
104
+ /**
105
+ * Function for add slot usage to the tee offer
106
+ * @param info - New option info
107
+ * @param usage - New slot usage info
108
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
109
+ */
110
+ addSlot(info: SlotInfo, usage: SlotUsage, externalId?: string, transactionOptions?: TransactionOptions): Promise<void>;
111
+ /**
112
+ * Function for update slot usage to the tee offer
113
+ * @param slotId - Slot ID
114
+ * @param newInfo - New slot info
115
+ * @param newUsage - New slot usage info
116
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
117
+ */
118
+ updateSlot(slotId: BlockchainId, newInfo: SlotInfo, newUsage: SlotUsage, transactionOptions?: TransactionOptions): Promise<void>;
119
+ /**
120
+ * Function for delete slot usage to the tee offer
121
+ * @param slotId - Slot ID
122
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
123
+ */
124
+ deleteSlot(slotId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
125
+ /**
126
+ * @param teeOfferId - TEE offer ID
127
+ * @returns {Promise<string>} - Actual TCB ID
128
+ */
129
+ getActualTcbId(): Promise<BlockchainId>;
130
+ /**
131
+ * Function return last inited TCB of TEE offer
132
+ * @param teeOfferId - id of TEE offer
133
+ * */
134
+ getInitializedTcbId(): Promise<BlockchainId>;
135
+ isTcbCreationAvailable(): Promise<boolean>;
136
+ /**
137
+ * Function for fetching TEE offer provider authority account from blockchain
138
+ */
139
+ getProviderAuthority(): Promise<string>;
140
+ /**
141
+ * Fetch offer type from blockchain (works for TEE and Value offers)
142
+ */
143
+ getOfferType(): Promise<OfferType>;
144
+ isTeeOfferVerifying(): Promise<boolean>;
145
+ /**
146
+ * Function for fetching TLB provider from blockchain
147
+ */
148
+ getTlb(): Promise<string>;
149
+ /**
150
+ * Function for fetching violationRate for this TEE offer
151
+ */
152
+ getViolationRate(): Promise<bigint | string>;
153
+ /**
154
+ * Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
155
+ */
156
+ getOrigins(): Promise<Origins>;
157
+ /**
158
+ * Updates TLB in offer info
159
+ * @param tlb - new TLB
160
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
161
+ */
162
+ addTlb(tlb: string, transactionOptions?: TransactionOptions): Promise<void>;
163
+ /**
164
+ * Updates name in offer info
165
+ * @param name - new name
166
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
167
+ */
168
+ setName(name: string, transactionOptions?: TransactionOptions): Promise<void>;
169
+ /**
170
+ * Updates offer info
171
+ * @param newInfo - new offer info
172
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
173
+ */
174
+ setInfo(newInfo: TeeOfferInfo, transactionOptions?: TransactionOptions): Promise<void>;
175
+ /**
176
+ * Updates offer hardware info
177
+ * @param newHardwareInfo - new offer hardware info
178
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
179
+ */
180
+ setHardwareInfo(newHardwareInfo: HardwareInfo, transactionOptions?: TransactionOptions): Promise<void>;
181
+ /**
182
+ * Updates description in offer info
183
+ * @param description - new description
184
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
185
+ */
186
+ setDescription(description: string, transactionOptions?: TransactionOptions): Promise<void>;
187
+ /**
188
+ * Updates argsPublicKey and argsPublicKeyAlgo in order info
189
+ * @param argsPublicKey - new argsPublicKey
190
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
191
+ */
192
+ setKeys(argsPublicKey: string, transactionOptions?: TransactionOptions): Promise<void>;
193
+ /**
194
+ * Function for disabling TEE offer
195
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
196
+ */
197
+ disable(transactionOptions?: TransactionOptions): Promise<void>;
198
+ /**
199
+ * Function for enabling TEE offer
200
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
201
+ */
202
+ enable(transactionOptions?: TransactionOptions): Promise<void>;
203
+ }
204
+ export default TeeOffer;