@super-protocol/sdk-js 2.2.0-beta.12 → 2.2.0-beta.120

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 (244) hide show
  1. package/dist/cjs/RIGenerator.d.ts +2 -0
  2. package/dist/cjs/RIGenerator.js +6 -4
  3. package/dist/cjs/TIIGenerator.d.ts +2 -1
  4. package/dist/cjs/TIIGenerator.js +13 -3
  5. package/dist/cjs/TeeInputGeneratorBase.d.ts +1 -1
  6. package/dist/cjs/TeeInputGeneratorBase.js +20 -32
  7. package/dist/cjs/analytics/eventProviders/BrowserEventProvider.d.ts +1 -0
  8. package/dist/cjs/analytics/eventProviders/BrowserEventProvider.js +3 -3
  9. package/dist/cjs/analytics/transports/AxiosTransport.js +1 -1
  10. package/dist/cjs/config.d.ts +0 -1
  11. package/dist/cjs/config.js +1 -2
  12. package/dist/cjs/constants.d.ts +5 -4
  13. package/dist/cjs/constants.js +31 -7
  14. package/dist/cjs/contracts/abi.d.ts +929 -122
  15. package/dist/cjs/contracts/abi.js +1168 -134
  16. package/dist/cjs/crypto/index.d.ts +1 -0
  17. package/dist/cjs/crypto/index.js +16 -1
  18. package/dist/cjs/errors/base.error.d.ts +3 -0
  19. package/dist/cjs/errors/base.error.js +19 -0
  20. package/dist/cjs/errors/index.d.ts +2 -0
  21. package/dist/cjs/errors/index.js +8 -0
  22. package/dist/cjs/errors/not-found.error.d.ts +3 -0
  23. package/dist/cjs/errors/not-found.error.js +8 -0
  24. package/dist/cjs/errors/utils.d.ts +1 -0
  25. package/dist/cjs/errors/utils.js +25 -0
  26. package/dist/cjs/index.d.ts +11 -1
  27. package/dist/cjs/index.js +19 -2
  28. package/dist/cjs/models/Offer.d.ts +48 -6
  29. package/dist/cjs/models/Offer.js +159 -16
  30. package/dist/cjs/models/Order.d.ts +2 -90
  31. package/dist/cjs/models/Order.js +20 -91
  32. package/dist/cjs/models/Provider.js +1 -1
  33. package/dist/cjs/models/TCB.js +13 -5
  34. package/dist/cjs/models/TeeOffer.d.ts +35 -13
  35. package/dist/cjs/models/TeeOffer.js +119 -44
  36. package/dist/cjs/proto/Compression.d.ts +1 -1
  37. package/dist/cjs/proto/TRI.d.ts +41 -6
  38. package/dist/cjs/proto/TRI.js +18 -1
  39. package/dist/cjs/proto/TeeProperties.d.ts +5 -5
  40. package/dist/cjs/providers/storage/IStorageProvider.d.ts +1 -1
  41. package/dist/cjs/providers/storage/S3StorageProvider.d.ts +8 -7
  42. package/dist/cjs/providers/storage/S3StorageProvider.js +77 -38
  43. package/dist/cjs/providers/storage/StorageAdapter.d.ts +9 -7
  44. package/dist/cjs/providers/storage/StorageAdapter.js +27 -29
  45. package/dist/cjs/providers/storage/StorageContentWriter.d.ts +2 -2
  46. package/dist/cjs/providers/storage/StorageContentWriter.js +5 -5
  47. package/dist/cjs/providers/storage/StorageKeyValueAdapter.d.ts +8 -5
  48. package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +30 -16
  49. package/dist/cjs/providers/storage/StorjAdapter.d.ts +5 -4
  50. package/dist/cjs/providers/storage/StorjAdapter.js +15 -9
  51. package/dist/cjs/providers/storage/StorjCredentialsManager.d.ts +24 -0
  52. package/dist/cjs/providers/storage/StorjCredentialsManager.js +109 -0
  53. package/dist/cjs/providers/storage/StorjStorageProvider.js +26 -3
  54. package/dist/cjs/providers/storage/fs-storage-provider.d.ts +19 -0
  55. package/dist/cjs/providers/storage/fs-storage-provider.js +143 -0
  56. package/dist/cjs/providers/storage/getStorageProvider.js +4 -1
  57. package/dist/cjs/providers/storage/parseStorageCredentials.d.ts +5 -0
  58. package/dist/cjs/providers/storage/parseStorageCredentials.js +21 -0
  59. package/dist/cjs/providers/storage/types.d.ts +22 -0
  60. package/dist/cjs/staticModels/Consensus.d.ts +3 -2
  61. package/dist/cjs/staticModels/Consensus.js +22 -11
  62. package/dist/cjs/staticModels/LoaderSecretsPublicKeys.js +3 -3
  63. package/dist/cjs/staticModels/LoaderSessions.d.ts +2 -2
  64. package/dist/cjs/staticModels/LoaderSessions.js +5 -5
  65. package/dist/cjs/staticModels/OfferResources.d.ts +3 -1
  66. package/dist/cjs/staticModels/OfferResources.js +33 -8
  67. package/dist/cjs/staticModels/Offers.js +10 -2
  68. package/dist/cjs/staticModels/OffersStorageAllocated.d.ts +1 -2
  69. package/dist/cjs/staticModels/OffersStorageAllocated.js +10 -10
  70. package/dist/cjs/staticModels/OffersStorageRequests.js +4 -3
  71. package/dist/cjs/staticModels/Orders.d.ts +5 -4
  72. package/dist/cjs/staticModels/Orders.js +7 -6
  73. package/dist/cjs/staticModels/SecretRequests.d.ts +1 -1
  74. package/dist/cjs/staticModels/SecretRequests.js +14 -7
  75. package/dist/cjs/staticModels/TeeOffers.d.ts +0 -2
  76. package/dist/cjs/staticModels/TeeOffers.js +5 -38
  77. package/dist/cjs/tee/QuoteParser.d.ts +61 -6
  78. package/dist/cjs/tee/QuoteParser.js +251 -30
  79. package/dist/cjs/tee/QuoteValidator.d.ts +13 -0
  80. package/dist/cjs/tee/QuoteValidator.js +149 -35
  81. package/dist/cjs/tee/TcbSerializer.d.ts +20 -0
  82. package/dist/cjs/tee/TcbSerializer.js +27 -0
  83. package/dist/cjs/tee/TeeBlockVerifier.d.ts +1 -6
  84. package/dist/cjs/tee/TeeBlockVerifier.js +5 -52
  85. package/dist/cjs/tee/TeeCertificateService.d.ts +13 -0
  86. package/dist/cjs/tee/TeeCertificateService.js +42 -0
  87. package/dist/cjs/tee/errors.d.ts +6 -3
  88. package/dist/cjs/tee/errors.js +9 -5
  89. package/dist/cjs/tee/helpers.d.ts +1 -1
  90. package/dist/cjs/tee/helpers.js +2 -7
  91. package/dist/cjs/tee/types.d.ts +50 -9
  92. package/dist/cjs/tee/types.js +32 -1
  93. package/dist/cjs/types/DistributedSecretStorage.d.ts +7 -0
  94. package/dist/cjs/types/Offer.d.ts +33 -7
  95. package/dist/cjs/types/Offer.js +17 -2
  96. package/dist/cjs/types/OfferVersion.d.ts +13 -0
  97. package/dist/cjs/types/OfferVersion.js +9 -0
  98. package/dist/cjs/types/Order.d.ts +8 -2
  99. package/dist/cjs/types/Order.js +3 -1
  100. package/dist/cjs/types/SlotInfo.d.ts +1 -0
  101. package/dist/cjs/types/Superpro.d.ts +2 -1
  102. package/dist/cjs/types/Superpro.js +2 -1
  103. package/dist/cjs/types/TeeOfferInfo.d.ts +2 -1
  104. package/dist/cjs/types/index.d.ts +1 -0
  105. package/dist/cjs/types/index.js +2 -1
  106. package/dist/cjs/types/storage/StorageAccess.d.ts +3 -3
  107. package/dist/cjs/utils/CryptoKeysTransformer.d.ts +6 -1
  108. package/dist/cjs/utils/CryptoKeysTransformer.js +48 -3
  109. package/dist/cjs/utils/NonceTracker.js +1 -1
  110. package/dist/cjs/utils/helper.d.ts +7 -1
  111. package/dist/cjs/utils/helper.js +87 -2
  112. package/dist/cjs/utils/helpers/OrderArgsHelper.d.ts +17 -0
  113. package/dist/cjs/utils/helpers/OrderArgsHelper.js +87 -0
  114. package/dist/cjs/utils/helpers/index.d.ts +2 -0
  115. package/dist/cjs/utils/helpers/index.js +3 -1
  116. package/dist/cjs/utils/helpers/uploadObjectToStorage.d.ts +13 -0
  117. package/dist/cjs/utils/helpers/uploadObjectToStorage.js +55 -0
  118. package/dist/cjs/utils/schema-validators/index.d.ts +1 -0
  119. package/dist/cjs/utils/schema-validators/index.js +6 -0
  120. package/dist/cjs/utils/schema-validators/validator.d.ts +7 -0
  121. package/dist/cjs/utils/schema-validators/validator.js +49 -0
  122. package/dist/mjs/RIGenerator.d.ts +2 -0
  123. package/dist/mjs/RIGenerator.js +6 -4
  124. package/dist/mjs/TIIGenerator.d.ts +2 -1
  125. package/dist/mjs/TIIGenerator.js +13 -3
  126. package/dist/mjs/TeeInputGeneratorBase.d.ts +1 -1
  127. package/dist/mjs/TeeInputGeneratorBase.js +20 -32
  128. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.d.ts +1 -0
  129. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.js +3 -3
  130. package/dist/mjs/analytics/transports/AxiosTransport.js +1 -1
  131. package/dist/mjs/config.d.ts +0 -1
  132. package/dist/mjs/config.js +1 -2
  133. package/dist/mjs/constants.d.ts +5 -4
  134. package/dist/mjs/constants.js +30 -6
  135. package/dist/mjs/contracts/abi.d.ts +929 -122
  136. package/dist/mjs/contracts/abi.js +1166 -132
  137. package/dist/mjs/crypto/index.d.ts +1 -0
  138. package/dist/mjs/crypto/index.js +2 -1
  139. package/dist/mjs/errors/base.error.d.ts +3 -0
  140. package/dist/mjs/errors/base.error.js +15 -0
  141. package/dist/mjs/errors/index.d.ts +2 -0
  142. package/dist/mjs/errors/index.js +3 -0
  143. package/dist/mjs/errors/not-found.error.d.ts +3 -0
  144. package/dist/mjs/errors/not-found.error.js +4 -0
  145. package/dist/mjs/errors/utils.d.ts +1 -0
  146. package/dist/mjs/errors/utils.js +18 -0
  147. package/dist/mjs/index.d.ts +11 -1
  148. package/dist/mjs/index.js +11 -2
  149. package/dist/mjs/models/Offer.d.ts +48 -6
  150. package/dist/mjs/models/Offer.js +161 -18
  151. package/dist/mjs/models/Order.d.ts +2 -90
  152. package/dist/mjs/models/Order.js +20 -91
  153. package/dist/mjs/models/Provider.js +1 -1
  154. package/dist/mjs/models/TCB.js +13 -5
  155. package/dist/mjs/models/TeeOffer.d.ts +35 -13
  156. package/dist/mjs/models/TeeOffer.js +115 -40
  157. package/dist/mjs/proto/Compression.d.ts +1 -1
  158. package/dist/mjs/proto/TRI.d.ts +41 -6
  159. package/dist/mjs/proto/TRI.js +18 -1
  160. package/dist/mjs/proto/TeeProperties.d.ts +5 -5
  161. package/dist/mjs/providers/storage/IStorageProvider.d.ts +1 -1
  162. package/dist/mjs/providers/storage/S3StorageProvider.d.ts +8 -7
  163. package/dist/mjs/providers/storage/S3StorageProvider.js +74 -38
  164. package/dist/mjs/providers/storage/StorageAdapter.d.ts +9 -7
  165. package/dist/mjs/providers/storage/StorageAdapter.js +27 -29
  166. package/dist/mjs/providers/storage/StorageContentWriter.d.ts +2 -2
  167. package/dist/mjs/providers/storage/StorageContentWriter.js +5 -5
  168. package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +8 -5
  169. package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +30 -16
  170. package/dist/mjs/providers/storage/StorjAdapter.d.ts +5 -4
  171. package/dist/mjs/providers/storage/StorjAdapter.js +15 -9
  172. package/dist/mjs/providers/storage/StorjCredentialsManager.d.ts +24 -0
  173. package/dist/mjs/providers/storage/StorjCredentialsManager.js +82 -0
  174. package/dist/mjs/providers/storage/StorjStorageProvider.js +3 -3
  175. package/dist/mjs/providers/storage/fs-storage-provider.d.ts +19 -0
  176. package/dist/mjs/providers/storage/fs-storage-provider.js +113 -0
  177. package/dist/mjs/providers/storage/getStorageProvider.js +4 -1
  178. package/dist/mjs/providers/storage/parseStorageCredentials.d.ts +5 -0
  179. package/dist/mjs/providers/storage/parseStorageCredentials.js +17 -0
  180. package/dist/mjs/providers/storage/types.d.ts +22 -0
  181. package/dist/mjs/staticModels/Consensus.d.ts +3 -2
  182. package/dist/mjs/staticModels/Consensus.js +22 -11
  183. package/dist/mjs/staticModels/LoaderSecretsPublicKeys.js +4 -4
  184. package/dist/mjs/staticModels/LoaderSessions.d.ts +2 -2
  185. package/dist/mjs/staticModels/LoaderSessions.js +6 -6
  186. package/dist/mjs/staticModels/OfferResources.d.ts +3 -1
  187. package/dist/mjs/staticModels/OfferResources.js +34 -9
  188. package/dist/mjs/staticModels/Offers.js +10 -2
  189. package/dist/mjs/staticModels/OffersStorageAllocated.d.ts +1 -2
  190. package/dist/mjs/staticModels/OffersStorageAllocated.js +11 -11
  191. package/dist/mjs/staticModels/OffersStorageRequests.js +5 -4
  192. package/dist/mjs/staticModels/Orders.d.ts +5 -4
  193. package/dist/mjs/staticModels/Orders.js +7 -6
  194. package/dist/mjs/staticModels/SecretRequests.d.ts +1 -1
  195. package/dist/mjs/staticModels/SecretRequests.js +15 -8
  196. package/dist/mjs/staticModels/TeeOffers.d.ts +0 -2
  197. package/dist/mjs/staticModels/TeeOffers.js +5 -38
  198. package/dist/mjs/store.js +2 -2
  199. package/dist/mjs/tee/QuoteParser.d.ts +61 -6
  200. package/dist/mjs/tee/QuoteParser.js +248 -29
  201. package/dist/mjs/tee/QuoteValidator.d.ts +13 -0
  202. package/dist/mjs/tee/QuoteValidator.js +149 -35
  203. package/dist/mjs/tee/TcbSerializer.d.ts +20 -0
  204. package/dist/mjs/tee/TcbSerializer.js +23 -0
  205. package/dist/mjs/tee/TeeBlockVerifier.d.ts +1 -6
  206. package/dist/mjs/tee/TeeBlockVerifier.js +5 -52
  207. package/dist/mjs/tee/TeeCertificateService.d.ts +13 -0
  208. package/dist/mjs/tee/TeeCertificateService.js +35 -0
  209. package/dist/mjs/tee/errors.d.ts +6 -3
  210. package/dist/mjs/tee/errors.js +7 -4
  211. package/dist/mjs/tee/helpers.d.ts +1 -1
  212. package/dist/mjs/tee/helpers.js +2 -7
  213. package/dist/mjs/tee/types.d.ts +50 -9
  214. package/dist/mjs/tee/types.js +28 -2
  215. package/dist/mjs/types/DistributedSecretStorage.d.ts +7 -0
  216. package/dist/mjs/types/Offer.d.ts +33 -7
  217. package/dist/mjs/types/Offer.js +16 -1
  218. package/dist/mjs/types/OfferVersion.d.ts +13 -0
  219. package/dist/mjs/types/OfferVersion.js +6 -0
  220. package/dist/mjs/types/Order.d.ts +8 -2
  221. package/dist/mjs/types/Order.js +3 -1
  222. package/dist/mjs/types/SlotInfo.d.ts +1 -0
  223. package/dist/mjs/types/Superpro.d.ts +2 -1
  224. package/dist/mjs/types/Superpro.js +2 -1
  225. package/dist/mjs/types/TeeOfferInfo.d.ts +2 -1
  226. package/dist/mjs/types/index.d.ts +1 -0
  227. package/dist/mjs/types/index.js +2 -1
  228. package/dist/mjs/types/storage/StorageAccess.d.ts +3 -3
  229. package/dist/mjs/utils/CryptoKeysTransformer.d.ts +6 -1
  230. package/dist/mjs/utils/CryptoKeysTransformer.js +48 -3
  231. package/dist/mjs/utils/NonceTracker.js +1 -1
  232. package/dist/mjs/utils/helper.d.ts +7 -1
  233. package/dist/mjs/utils/helper.js +80 -1
  234. package/dist/mjs/utils/helpers/OrderArgsHelper.d.ts +17 -0
  235. package/dist/mjs/utils/helpers/OrderArgsHelper.js +80 -0
  236. package/dist/mjs/utils/helpers/index.d.ts +2 -0
  237. package/dist/mjs/utils/helpers/index.js +3 -1
  238. package/dist/mjs/utils/helpers/uploadObjectToStorage.d.ts +13 -0
  239. package/dist/mjs/utils/helpers/uploadObjectToStorage.js +48 -0
  240. package/dist/mjs/utils/schema-validators/index.d.ts +1 -0
  241. package/dist/mjs/utils/schema-validators/index.js +2 -0
  242. package/dist/mjs/utils/schema-validators/validator.d.ts +7 -0
  243. package/dist/mjs/utils/schema-validators/validator.js +45 -0
  244. package/package.json +7 -6
@@ -13,11 +13,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const helper_js_1 = require("../utils/helper.js");
16
- const index_js_1 = require("../connectors/index.js");
16
+ const index_js_1 = require("../types/index.js");
17
+ const index_js_2 = require("../connectors/index.js");
17
18
  const TxManager_js_1 = __importDefault(require("../utils/TxManager.js"));
18
19
  const utils_js_1 = require("ethers/lib/utils.js");
19
20
  const TeeOffers_js_1 = __importDefault(require("../staticModels/TeeOffers.js"));
20
- const index_js_2 = require("../models/index.js");
21
+ const index_js_3 = require("../models/index.js");
21
22
  const Consensus_js_1 = __importDefault(require("../staticModels/Consensus.js"));
22
23
  class TeeOffer {
23
24
  static contract;
@@ -38,7 +39,7 @@ class TeeOffer {
38
39
  constructor(offerId) {
39
40
  this.id = offerId;
40
41
  if (!TeeOffer.contract) {
41
- TeeOffer.contract = index_js_1.BlockchainConnector.getInstance().getContract();
42
+ TeeOffer.contract = index_js_2.BlockchainConnector.getInstance().getContract();
42
43
  }
43
44
  }
44
45
  /**
@@ -75,8 +76,12 @@ class TeeOffer {
75
76
  */
76
77
  async getInfo() {
77
78
  const { info } = await TeeOffer.contract.methods.getTeeOffer(this.id).call();
78
- this.offerInfo = (0, helper_js_1.cleanWeb3Data)(info);
79
- this.offerInfo.hardwareInfo = (0, helper_js_1.cleanWeb3Data)(await this.getHardwareInfo());
79
+ const { tlb_DEPRECATED: _tlb_DEPRECATED, subtype: _subtype, ...offerInfo } = (0, helper_js_1.cleanWeb3Data)({
80
+ ...info,
81
+ subType: info.subtype,
82
+ hardwareInfo: (await this.getHardwareInfo()),
83
+ });
84
+ this.offerInfo = offerInfo;
80
85
  return this.offerInfo;
81
86
  }
82
87
  /**
@@ -130,7 +135,7 @@ class TeeOffer {
130
135
  * @param transactionOptions - object what contains alternative action account or gas limit (optional)
131
136
  */
132
137
  async addOption(info, usage, externalId = 'default', transactionOptions) {
133
- const contract = index_js_1.BlockchainConnector.getInstance().getContract();
138
+ const contract = index_js_2.BlockchainConnector.getInstance().getContract();
134
139
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
135
140
  const formattedExternalId = (0, utils_js_1.formatBytes32String)(externalId);
136
141
  await TxManager_js_1.default.execute(contract.methods.addOption(this.id, formattedExternalId, (0, helper_js_1.convertOptionInfoToRaw)(info), usage), transactionOptions);
@@ -144,7 +149,8 @@ class TeeOffer {
144
149
  */
145
150
  async updateOption(optionId, newInfo, newUsage, transactionOptions) {
146
151
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
147
- await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateOption(this.id, optionId, (0, helper_js_1.convertOptionInfoToRaw)(newInfo), newUsage), transactionOptions);
152
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateOptionInfo(this.id, optionId, (0, helper_js_1.convertOptionInfoToRaw)(newInfo)), transactionOptions);
153
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateOptionUsage(this.id, optionId, newUsage), transactionOptions);
148
154
  }
149
155
  /**
150
156
  * Function for delete option
@@ -155,14 +161,14 @@ class TeeOffer {
155
161
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
156
162
  await TxManager_js_1.default.execute(TeeOffer.contract.methods.deleteOption(this.id, optionId), transactionOptions);
157
163
  }
158
- async initializeTcb(transactionOptions) {
164
+ async initializeTcb(deviceId, transactionOptions) {
159
165
  (0, helper_js_1.checkIfActionAccountInitialized)();
160
- await TxManager_js_1.default.execute(TeeOffer.contract.methods.initializeTcb(this.id), transactionOptions);
166
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.initializeTcb(this.id, deviceId), transactionOptions);
161
167
  }
162
- async initializeTcbAndAssignBlocks(transactionOptions) {
163
- await this.initializeTcb(transactionOptions);
168
+ async initializeTcbAndAssignBlocks(deviceId, transactionOptions) {
169
+ await this.initializeTcb(deviceId, transactionOptions);
164
170
  const tcbId = await this.getInitializedTcbId();
165
- const tcb = new index_js_2.TCB(tcbId);
171
+ const tcb = new index_js_3.TCB(tcbId);
166
172
  await tcb.assignLastBlocksToCheck(transactionOptions);
167
173
  await tcb.assignSuspiciousBlocksToCheck(transactionOptions);
168
174
  return tcb;
@@ -173,9 +179,10 @@ class TeeOffer {
173
179
  * @param transactionOptions - object what contains alternative action account or gas limit (optional)
174
180
  * @returns tcbId and lists of anothers' TCB for their checking
175
181
  */
176
- async getListsForVerification(transactionOptions) {
182
+ async getListsForVerification(deviceId, transactionOptions) {
177
183
  (0, helper_js_1.checkIfActionAccountInitialized)();
178
- const tcb = await this.initializeTcbAndAssignBlocks(transactionOptions);
184
+ deviceId = (0, helper_js_1.packDeviceId)(deviceId);
185
+ const tcb = await this.initializeTcbAndAssignBlocks(deviceId, transactionOptions);
179
186
  const { checkingTcbIds } = await tcb.getPublicData();
180
187
  const tcbsPublicData = await Consensus_js_1.default.getTcbsPublicData(checkingTcbIds);
181
188
  const tcbsUtilityData = await Consensus_js_1.default.getTcbsUtilityData(checkingTcbIds);
@@ -196,6 +203,21 @@ class TeeOffer {
196
203
  tcbsForVerification,
197
204
  };
198
205
  }
206
+ /**
207
+ * Returns the offer version info.
208
+ */
209
+ async getVersion(version) {
210
+ return await TeeOffer.contract.methods
211
+ .getOfferVersion(this.id, version)
212
+ .call()
213
+ .then((offerVersion) => (0, helper_js_1.cleanWeb3Data)(offerVersion));
214
+ }
215
+ /**
216
+ * Returns the offer version info.
217
+ */
218
+ async getVersionCount() {
219
+ return await TeeOffer.contract.methods.getOfferVersionsCount(this.id).call();
220
+ }
199
221
  /**
200
222
  * Function for fetching whether tee offer slot exists or not
201
223
  * @param slotId - Slot ID
@@ -255,7 +277,8 @@ class TeeOffer {
255
277
  async updateSlot(slotId, newInfo, newUsage, transactionOptions) {
256
278
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
257
279
  newInfo = (0, helper_js_1.packSlotInfo)(newInfo, await TeeOffers_js_1.default.getDenominator());
258
- await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateTeeOfferSlot(this.id, slotId, newInfo, newUsage), transactionOptions);
280
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateTeeOfferSlotInfo(this.id, slotId, newInfo, newUsage), transactionOptions);
281
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.updateTeeOfferSlotUsage(this.id, slotId, newUsage), transactionOptions);
259
282
  }
260
283
  /**
261
284
  * Function for delete slot usage to the tee offer
@@ -266,6 +289,28 @@ class TeeOffer {
266
289
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
267
290
  await TxManager_js_1.default.execute(TeeOffer.contract.methods.deleteTeeOfferSlot(this.id, slotId), transactionOptions);
268
291
  }
292
+ /**
293
+ * Function for add a new version to the value offer.
294
+ * @param newVersion - Version number
295
+ * @param versionInfo - Version info
296
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
297
+ */
298
+ async setNewVersion(newVersion, versionInfo, transactionOptions) {
299
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
300
+ const transactionCall = TeeOffer.contract.methods.setOfferNewVersion(this.id, newVersion, versionInfo);
301
+ await TxManager_js_1.default.execute(transactionCall, transactionOptions);
302
+ }
303
+ /**
304
+ * Functcion for deletion the version from the value offer.
305
+ * @param newVersion - Version number
306
+ * @param versionInfo - Version info
307
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
308
+ */
309
+ async deleteVersion(version, transactionOptions) {
310
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
311
+ const transactionCall = TeeOffer.contract.methods.deleteOfferVersion(this.id, version);
312
+ await TxManager_js_1.default.execute(transactionCall, transactionOptions);
313
+ }
269
314
  /**
270
315
  * @param teeOfferId - TEE offer ID
271
316
  * @returns {Promise<string>} - Actual TCB ID
@@ -280,8 +325,10 @@ class TeeOffer {
280
325
  getInitializedTcbId() {
281
326
  return TeeOffer.contract.methods.getInitializedTcbId(this.id).call();
282
327
  }
283
- async isTcbCreationAvailable() {
284
- const { offerNotBlocked, newEpochStarted, halfEpochPassed, benchmarkVerified } = await TeeOffer.contract.methods.isTcbCreationAvailable(this.id).call();
328
+ async isTcbCreationAvailable(deviceId) {
329
+ const { offerNotBlocked, newEpochStarted, halfEpochPassed, benchmarkVerified } = (0, helper_js_1.cleanWeb3Data)(await TeeOffer.contract.methods
330
+ .isTcbCreationAvailable(this.id, (0, helper_js_1.packDeviceId)(deviceId))
331
+ .call());
285
332
  return offerNotBlocked && newEpochStarted && halfEpochPassed && benchmarkVerified;
286
333
  }
287
334
  /**
@@ -300,15 +347,15 @@ class TeeOffer {
300
347
  this.type = await TeeOffer.contract.methods.getOfferType(this.id).call();
301
348
  return this.type.toString();
302
349
  }
303
- isTeeOfferVerifying() {
304
- return TeeOffer.contract.methods.isTeeOfferVerified(this.id).call();
305
- }
306
350
  /**
307
- * Function for fetching TLB provider from blockchain
351
+ * Fetch offer subtype from blockchain (TEE only)
308
352
  */
309
- async getTlb() {
310
- const offerInfo = await this.getInfo();
311
- return offerInfo.tlb;
353
+ async getSubtype() {
354
+ this.type = await TeeOffer.contract.methods.getTeeOfferSubtype(this.id).call();
355
+ return this.type.toString();
356
+ }
357
+ isTeeOfferVerifying() {
358
+ return TeeOffer.contract.methods.isTeeOfferVerified(this.id).call();
312
359
  }
313
360
  /**
314
361
  * Function for fetching violationRate for this TEE offer
@@ -330,17 +377,6 @@ class TeeOffer {
330
377
  origins.modifiedDate = origins.modifiedDate * 1000;
331
378
  return (this.origins = origins);
332
379
  }
333
- /**
334
- * Updates TLB in offer info
335
- * @param tlb - new TLB
336
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
337
- */
338
- async addTlb(tlb, transactionOptions) {
339
- (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
340
- await TxManager_js_1.default.execute(TeeOffer.contract.methods.setTeeOfferTlb(this.id, tlb), transactionOptions);
341
- if (this.offerInfo)
342
- this.offerInfo.tlb = tlb;
343
- }
344
380
  /**
345
381
  * Updates name in offer info
346
382
  * @param name - new name
@@ -359,8 +395,13 @@ class TeeOffer {
359
395
  */
360
396
  async setInfo(newInfo, transactionOptions) {
361
397
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
362
- await this.setHardwareInfo(newInfo.hardwareInfo, transactionOptions);
363
- await TxManager_js_1.default.execute(TeeOffer.contract.methods.setTeeOfferInfo(this.id, newInfo), transactionOptions);
398
+ const { hardwareInfo, subType, ...offerInfo } = newInfo;
399
+ await this.setHardwareInfo(hardwareInfo, transactionOptions);
400
+ await TxManager_js_1.default.execute(TeeOffer.contract.methods.setTeeOfferInfo(this.id, {
401
+ ...offerInfo,
402
+ subtype: subType,
403
+ tlb_DEPRECATED: '',
404
+ }), transactionOptions);
364
405
  if (this.offerInfo)
365
406
  this.offerInfo = newInfo;
366
407
  }
@@ -397,6 +438,16 @@ class TeeOffer {
397
438
  this.offerInfo.argsPublicKey = argsPublicKey;
398
439
  }
399
440
  }
441
+ /**
442
+ * Function for set the offer subtype.
443
+ * @param newSubtype - TEE offer subtype
444
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
445
+ */
446
+ async setSubtype(newSubtype, transactionOptions) {
447
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
448
+ const transactionCall = TeeOffer.contract.methods.setTeeOfferSubtype(this.id, newSubtype);
449
+ await TxManager_js_1.default.execute(transactionCall, transactionOptions);
450
+ }
400
451
  /**
401
452
  * Function for disabling TEE offer
402
453
  * @param transactionOptions - object what contains alternative action account or gas limit (optional)
@@ -465,21 +516,33 @@ __decorate([
465
516
  __decorate([
466
517
  (0, helper_js_1.incrementMethodCall)(),
467
518
  __metadata("design:type", Function),
468
- __metadata("design:paramtypes", [Object]),
519
+ __metadata("design:paramtypes", [String, Object]),
469
520
  __metadata("design:returntype", Promise)
470
521
  ], TeeOffer.prototype, "initializeTcb", null);
471
522
  __decorate([
472
523
  (0, helper_js_1.incrementMethodCall)(),
473
524
  __metadata("design:type", Function),
474
- __metadata("design:paramtypes", [Object]),
525
+ __metadata("design:paramtypes", [String, Object]),
475
526
  __metadata("design:returntype", Promise)
476
527
  ], TeeOffer.prototype, "initializeTcbAndAssignBlocks", null);
477
528
  __decorate([
478
529
  (0, helper_js_1.incrementMethodCall)(),
479
530
  __metadata("design:type", Function),
480
- __metadata("design:paramtypes", [Object]),
531
+ __metadata("design:paramtypes", [String, Object]),
481
532
  __metadata("design:returntype", Promise)
482
533
  ], TeeOffer.prototype, "getListsForVerification", null);
534
+ __decorate([
535
+ (0, helper_js_1.incrementMethodCall)(),
536
+ __metadata("design:type", Function),
537
+ __metadata("design:paramtypes", [Number]),
538
+ __metadata("design:returntype", Promise)
539
+ ], TeeOffer.prototype, "getVersion", null);
540
+ __decorate([
541
+ (0, helper_js_1.incrementMethodCall)(),
542
+ __metadata("design:type", Function),
543
+ __metadata("design:paramtypes", []),
544
+ __metadata("design:returntype", Promise)
545
+ ], TeeOffer.prototype, "getVersionCount", null);
483
546
  __decorate([
484
547
  (0, helper_js_1.incrementMethodCall)(),
485
548
  __metadata("design:type", Function),
@@ -498,6 +561,18 @@ __decorate([
498
561
  __metadata("design:paramtypes", [String, Object]),
499
562
  __metadata("design:returntype", Promise)
500
563
  ], TeeOffer.prototype, "deleteSlot", null);
564
+ __decorate([
565
+ (0, helper_js_1.incrementMethodCall)(),
566
+ __metadata("design:type", Function),
567
+ __metadata("design:paramtypes", [Number, Object, Object]),
568
+ __metadata("design:returntype", Promise)
569
+ ], TeeOffer.prototype, "setNewVersion", null);
570
+ __decorate([
571
+ (0, helper_js_1.incrementMethodCall)(),
572
+ __metadata("design:type", Function),
573
+ __metadata("design:paramtypes", [Number, Object]),
574
+ __metadata("design:returntype", Promise)
575
+ ], TeeOffer.prototype, "deleteVersion", null);
501
576
  __decorate([
502
577
  (0, helper_js_1.incrementMethodCall)(),
503
578
  __metadata("design:type", Function),
@@ -515,13 +590,13 @@ __decorate([
515
590
  __metadata("design:type", Function),
516
591
  __metadata("design:paramtypes", []),
517
592
  __metadata("design:returntype", Promise)
518
- ], TeeOffer.prototype, "isTeeOfferVerifying", null);
593
+ ], TeeOffer.prototype, "getSubtype", null);
519
594
  __decorate([
520
595
  (0, helper_js_1.incrementMethodCall)(),
521
596
  __metadata("design:type", Function),
522
597
  __metadata("design:paramtypes", []),
523
598
  __metadata("design:returntype", Promise)
524
- ], TeeOffer.prototype, "getTlb", null);
599
+ ], TeeOffer.prototype, "isTeeOfferVerifying", null);
525
600
  __decorate([
526
601
  (0, helper_js_1.incrementMethodCall)(),
527
602
  __metadata("design:type", Function),
@@ -533,6 +608,6 @@ __decorate([
533
608
  __metadata("design:type", Function),
534
609
  __metadata("design:paramtypes", [String, Object]),
535
610
  __metadata("design:returntype", Promise)
536
- ], TeeOffer.prototype, "addTlb", null);
611
+ ], TeeOffer.prototype, "setSubtype", null);
537
612
  exports.default = TeeOffer;
538
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVlT2ZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1RlZU9mZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBRUEsa0RBVzRCO0FBVzVCLHFEQUE2RDtBQUM3RCx5RUFBOEM7QUFTOUMsa0RBQTBEO0FBQzFELGdGQUFxRDtBQUNyRCxpREFBeUM7QUFFekMsZ0ZBQXFEO0FBRXJELE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRXZDLEVBQUUsQ0FBZTtJQUVqQixhQUFhLENBQW1CO0lBQ2hDLFdBQVcsQ0FBZTtJQUMxQixTQUFTLENBQWdCO0lBRXpCLElBQUksQ0FBYTtJQUNqQixpQkFBaUIsQ0FBVTtJQUMzQixRQUFRLENBQVU7SUFDbEIsT0FBTyxDQUFXO0lBQ2xCLEdBQUcsQ0FBVTtJQUNiLFlBQVksQ0FBVTtJQUN0QixZQUFZLENBQVU7SUFDdEIsT0FBTyxDQUFXO0lBQ2xCLFlBQVksQ0FBVztJQUN2QixVQUFVLENBQWU7SUFFaEMsWUFBWSxPQUFxQjtRQUMvQixJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZCLFFBQVEsQ0FBQyxRQUFRLEdBQUcsOEJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEUsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUVJLFNBQVM7UUFDZCxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEUsQ0FBQztJQUVEOztPQUVHO0lBRVUsQUFBTixLQUFLLENBQUMsYUFBYSxDQUN4QixNQUFvQixFQUNwQixTQUFpQixFQUNqQixVQUEwQixFQUMxQixZQUFzQjtRQUV0QixJQUFJLENBQUMsVUFB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
613
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVlT2ZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1RlZU9mZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBRUEsa0RBWTRCO0FBQzVCLGdEQVkyQjtBQUMzQixxREFBNkQ7QUFDN0QseUVBQThDO0FBUzlDLGtEQUEwRDtBQUMxRCxnRkFBcUQ7QUFDckQsaURBQXlDO0FBRXpDLGdGQUFxRDtBQUVyRCxNQUFNLFFBQVE7SUFDSixNQUFNLENBQUMsUUFBUSxDQUF1QjtJQUV2QyxFQUFFLENBQWU7SUFFakIsYUFBYSxDQUFtQjtJQUNoQyxXQUFXLENBQWU7SUFDMUIsU0FBUyxDQUFnQjtJQUV6QixJQUFJLENBQWE7SUFDakIsaUJBQWlCLENBQVU7SUFDM0IsUUFBUSxDQUFVO0lBQ2xCLE9BQU8sQ0FBVztJQUNsQixHQUFHLENBQVU7SUFDYixZQUFZLENBQVU7SUFDdEIsWUFBWSxDQUFVO0lBQ3RCLE9BQU8sQ0FBVztJQUNsQixZQUFZLENBQVc7SUFDdkIsVUFBVSxDQUFlO0lBRWhDLFlBQVksT0FBcUI7UUFDL0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2QixRQUFRLENBQUMsUUFBUSxHQUFHLDhCQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RFLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFFSSxTQUFTO1FBQ2QsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7T0FFRztJQUVVLEFBQU4sS0FBSyxDQUFDLGFBQWEsQ0FDeEIsTUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsVUFBMEIsRUFDMUIsWUFBc0I7UUFFdEIs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
@@ -21,7 +21,7 @@ export declare const Compression: {
21
21
  } & {
22
22
  type?: Compression_TYPE | undefined;
23
23
  data?: Uint8Array | undefined;
24
- } & { [K in Exclude<keyof I, keyof Compression>]: never; }>(base?: I): Compression;
24
+ } & { [K in Exclude<keyof I, keyof Compression>]: never; }>(base?: I | undefined): Compression;
25
25
  fromPartial<I_1 extends {
26
26
  type?: Compression_TYPE | undefined;
27
27
  data?: Uint8Array | undefined;
@@ -19,6 +19,7 @@ export interface TRI {
19
19
  args: string;
20
20
  encryption: Encryption | undefined;
21
21
  mrsigner: Uint8Array;
22
+ imageHashes: Hash[];
22
23
  }
23
24
  export declare const Encryption: {
24
25
  encode(message: Encryption, writer?: _m0.Writer): _m0.Writer;
@@ -41,7 +42,7 @@ export declare const Encryption: {
41
42
  iv?: Uint8Array | undefined;
42
43
  mac?: Uint8Array | undefined;
43
44
  encoding?: string | undefined;
44
- } & { [K in Exclude<keyof I, keyof Encryption>]: never; }>(base?: I): Encryption;
45
+ } & { [K in Exclude<keyof I, keyof Encryption>]: never; }>(base?: I | undefined): Encryption;
45
46
  fromPartial<I_1 extends {
46
47
  algo?: string | undefined;
47
48
  key?: Uint8Array | undefined;
@@ -71,7 +72,7 @@ export declare const Hash: {
71
72
  } & {
72
73
  algo?: string | undefined;
73
74
  hash?: Uint8Array | undefined;
74
- } & { [K in Exclude<keyof I, keyof Hash>]: never; }>(base?: I): Hash;
75
+ } & { [K in Exclude<keyof I, keyof Hash>]: never; }>(base?: I | undefined): Hash;
75
76
  fromPartial<I_1 extends {
76
77
  algo?: string | undefined;
77
78
  hash?: Uint8Array | undefined;
@@ -102,6 +103,10 @@ export declare const TRI: {
102
103
  encoding?: string | undefined;
103
104
  } | undefined;
104
105
  mrsigner?: Uint8Array | undefined;
106
+ imageHashes?: {
107
+ algo?: string | undefined;
108
+ hash?: Uint8Array | undefined;
109
+ }[] | undefined;
105
110
  } & {
106
111
  solutionHashes?: ({
107
112
  algo?: string | undefined;
@@ -136,7 +141,20 @@ export declare const TRI: {
136
141
  encoding?: string | undefined;
137
142
  } & { [K_2 in Exclude<keyof I["encryption"], keyof Encryption>]: never; }) | undefined;
138
143
  mrsigner?: Uint8Array | undefined;
139
- } & { [K_3 in Exclude<keyof I, keyof TRI>]: never; }>(base?: I): TRI;
144
+ imageHashes?: ({
145
+ algo?: string | undefined;
146
+ hash?: Uint8Array | undefined;
147
+ }[] & ({
148
+ algo?: string | undefined;
149
+ hash?: Uint8Array | undefined;
150
+ } & {
151
+ algo?: string | undefined;
152
+ hash?: Uint8Array | undefined;
153
+ } & { [K_3 in Exclude<keyof I["imageHashes"][number], keyof Hash>]: never; })[] & { [K_4 in Exclude<keyof I["imageHashes"], keyof {
154
+ algo?: string | undefined;
155
+ hash?: Uint8Array | undefined;
156
+ }[]>]: never; }) | undefined;
157
+ } & { [K_5 in Exclude<keyof I, keyof TRI>]: never; }>(base?: I | undefined): TRI;
140
158
  fromPartial<I_1 extends {
141
159
  solutionHashes?: {
142
160
  algo?: string | undefined;
@@ -154,6 +172,10 @@ export declare const TRI: {
154
172
  encoding?: string | undefined;
155
173
  } | undefined;
156
174
  mrsigner?: Uint8Array | undefined;
175
+ imageHashes?: {
176
+ algo?: string | undefined;
177
+ hash?: Uint8Array | undefined;
178
+ }[] | undefined;
157
179
  } & {
158
180
  solutionHashes?: ({
159
181
  algo?: string | undefined;
@@ -164,7 +186,7 @@ export declare const TRI: {
164
186
  } & {
165
187
  algo?: string | undefined;
166
188
  hash?: Uint8Array | undefined;
167
- } & { [K_4 in Exclude<keyof I_1["solutionHashes"][number], keyof Hash>]: never; })[] & { [K_5 in Exclude<keyof I_1["solutionHashes"], keyof {
189
+ } & { [K_6 in Exclude<keyof I_1["solutionHashes"][number], keyof Hash>]: never; })[] & { [K_7 in Exclude<keyof I_1["solutionHashes"], keyof {
168
190
  algo?: string | undefined;
169
191
  hash?: Uint8Array | undefined;
170
192
  }[]>]: never; }) | undefined;
@@ -186,9 +208,22 @@ export declare const TRI: {
186
208
  iv?: Uint8Array | undefined;
187
209
  mac?: Uint8Array | undefined;
188
210
  encoding?: string | undefined;
189
- } & { [K_6 in Exclude<keyof I_1["encryption"], keyof Encryption>]: never; }) | undefined;
211
+ } & { [K_8 in Exclude<keyof I_1["encryption"], keyof Encryption>]: never; }) | undefined;
190
212
  mrsigner?: Uint8Array | undefined;
191
- } & { [K_7 in Exclude<keyof I_1, keyof TRI>]: never; }>(object: I_1): TRI;
213
+ imageHashes?: ({
214
+ algo?: string | undefined;
215
+ hash?: Uint8Array | undefined;
216
+ }[] & ({
217
+ algo?: string | undefined;
218
+ hash?: Uint8Array | undefined;
219
+ } & {
220
+ algo?: string | undefined;
221
+ hash?: Uint8Array | undefined;
222
+ } & { [K_9 in Exclude<keyof I_1["imageHashes"][number], keyof Hash>]: never; })[] & { [K_10 in Exclude<keyof I_1["imageHashes"], keyof {
223
+ algo?: string | undefined;
224
+ hash?: Uint8Array | undefined;
225
+ }[]>]: never; }) | undefined;
226
+ } & { [K_11 in Exclude<keyof I_1, keyof TRI>]: never; }>(object: I_1): TRI;
192
227
  };
193
228
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
194
229
  export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {