@o2exchange/contracts 0.0.1 → 0.0.2

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 (126) hide show
  1. package/README.md +4 -39
  2. package/dist/contracts/LargeContract.d.ts +136 -0
  3. package/dist/contracts/LargeContract.d.ts.map +1 -0
  4. package/dist/contracts/LargeContract.js +366 -0
  5. package/dist/contracts/LargeContract.js.map +1 -0
  6. package/dist/contracts/LargeContractFactory.d.ts +9 -0
  7. package/dist/contracts/LargeContractFactory.d.ts.map +1 -0
  8. package/dist/contracts/LargeContractFactory.js +23 -0
  9. package/dist/contracts/LargeContractFactory.js.map +1 -0
  10. package/dist/contracts/MaxHeapTest.d.ts +78 -0
  11. package/dist/contracts/MaxHeapTest.d.ts.map +1 -0
  12. package/dist/contracts/MaxHeapTest.js +176 -0
  13. package/dist/contracts/MaxHeapTest.js.map +1 -0
  14. package/dist/contracts/MaxHeapTestFactory.d.ts +9 -0
  15. package/dist/contracts/MaxHeapTestFactory.d.ts.map +1 -0
  16. package/dist/contracts/MaxHeapTestFactory.js +23 -0
  17. package/dist/contracts/MaxHeapTestFactory.js.map +1 -0
  18. package/dist/contracts/MinHeapTest.d.ts +78 -0
  19. package/dist/contracts/MinHeapTest.d.ts.map +1 -0
  20. package/dist/contracts/MinHeapTest.js +172 -0
  21. package/dist/contracts/MinHeapTest.js.map +1 -0
  22. package/dist/contracts/MinHeapTestFactory.d.ts +9 -0
  23. package/dist/contracts/MinHeapTestFactory.d.ts.map +1 -0
  24. package/dist/contracts/MinHeapTestFactory.js +23 -0
  25. package/dist/contracts/MinHeapTestFactory.js.map +1 -0
  26. package/dist/contracts/OrderBook.d.ts +541 -0
  27. package/dist/contracts/OrderBook.d.ts.map +1 -0
  28. package/dist/contracts/OrderBook.js +3439 -0
  29. package/dist/contracts/OrderBook.js.map +1 -0
  30. package/dist/contracts/OrderBookBlacklist.d.ts +155 -0
  31. package/dist/contracts/OrderBookBlacklist.d.ts.map +1 -0
  32. package/dist/contracts/OrderBookBlacklist.js +381 -0
  33. package/dist/contracts/OrderBookBlacklist.js.map +1 -0
  34. package/dist/contracts/OrderBookBlacklistFactory.d.ts +9 -0
  35. package/dist/contracts/OrderBookBlacklistFactory.d.ts.map +1 -0
  36. package/dist/contracts/OrderBookBlacklistFactory.js +23 -0
  37. package/dist/contracts/OrderBookBlacklistFactory.js.map +1 -0
  38. package/dist/contracts/OrderBookFactory.d.ts +9 -0
  39. package/dist/contracts/OrderBookFactory.d.ts.map +1 -0
  40. package/dist/contracts/OrderBookFactory.js +23 -0
  41. package/dist/contracts/OrderBookFactory.js.map +1 -0
  42. package/dist/contracts/OrderBookProxy.d.ts +192 -0
  43. package/dist/contracts/OrderBookProxy.d.ts.map +1 -0
  44. package/dist/contracts/OrderBookProxy.js +852 -0
  45. package/dist/contracts/OrderBookProxy.js.map +1 -0
  46. package/dist/contracts/OrderBookProxyFactory.d.ts +9 -0
  47. package/dist/contracts/OrderBookProxyFactory.d.ts.map +1 -0
  48. package/dist/contracts/OrderBookProxyFactory.js +23 -0
  49. package/dist/contracts/OrderBookProxyFactory.js.map +1 -0
  50. package/dist/contracts/OrderBookRegistry.d.ts +237 -0
  51. package/dist/contracts/OrderBookRegistry.d.ts.map +1 -0
  52. package/dist/contracts/OrderBookRegistry.js +678 -0
  53. package/dist/contracts/OrderBookRegistry.js.map +1 -0
  54. package/dist/contracts/OrderBookRegistryFactory.d.ts +9 -0
  55. package/dist/contracts/OrderBookRegistryFactory.d.ts.map +1 -0
  56. package/dist/contracts/OrderBookRegistryFactory.js +23 -0
  57. package/dist/contracts/OrderBookRegistryFactory.js.map +1 -0
  58. package/dist/contracts/OrderBookRegistryProxy.d.ts +192 -0
  59. package/dist/contracts/OrderBookRegistryProxy.d.ts.map +1 -0
  60. package/dist/contracts/OrderBookRegistryProxy.js +852 -0
  61. package/dist/contracts/OrderBookRegistryProxy.js.map +1 -0
  62. package/dist/contracts/OrderBookRegistryProxyFactory.d.ts +9 -0
  63. package/dist/contracts/OrderBookRegistryProxyFactory.d.ts.map +1 -0
  64. package/dist/contracts/OrderBookRegistryProxyFactory.js +23 -0
  65. package/dist/contracts/OrderBookRegistryProxyFactory.js.map +1 -0
  66. package/dist/contracts/OrderBookWhitelist.d.ts +155 -0
  67. package/dist/contracts/OrderBookWhitelist.d.ts.map +1 -0
  68. package/dist/contracts/OrderBookWhitelist.js +381 -0
  69. package/dist/contracts/OrderBookWhitelist.js.map +1 -0
  70. package/dist/contracts/OrderBookWhitelistFactory.d.ts +9 -0
  71. package/dist/contracts/OrderBookWhitelistFactory.d.ts.map +1 -0
  72. package/dist/contracts/OrderBookWhitelistFactory.js +23 -0
  73. package/dist/contracts/OrderBookWhitelistFactory.js.map +1 -0
  74. package/dist/contracts/TradeAccount.d.ts +449 -0
  75. package/dist/contracts/TradeAccount.d.ts.map +1 -0
  76. package/dist/contracts/TradeAccount.js +2780 -0
  77. package/dist/contracts/TradeAccount.js.map +1 -0
  78. package/dist/contracts/TradeAccountFactory.d.ts +9 -0
  79. package/dist/contracts/TradeAccountFactory.d.ts.map +1 -0
  80. package/dist/contracts/TradeAccountFactory.js +23 -0
  81. package/dist/contracts/TradeAccountFactory.js.map +1 -0
  82. package/dist/contracts/TradeAccountOracle.d.ts +161 -0
  83. package/dist/contracts/TradeAccountOracle.d.ts.map +1 -0
  84. package/dist/contracts/TradeAccountOracle.js +1015 -0
  85. package/dist/contracts/TradeAccountOracle.js.map +1 -0
  86. package/dist/contracts/TradeAccountOracleFactory.d.ts +9 -0
  87. package/dist/contracts/TradeAccountOracleFactory.d.ts.map +1 -0
  88. package/dist/contracts/TradeAccountOracleFactory.js +23 -0
  89. package/dist/contracts/TradeAccountOracleFactory.js.map +1 -0
  90. package/dist/contracts/TradeAccountProxy.d.ts +312 -0
  91. package/dist/contracts/TradeAccountProxy.d.ts.map +1 -0
  92. package/dist/contracts/TradeAccountProxy.js +1355 -0
  93. package/dist/contracts/TradeAccountProxy.js.map +1 -0
  94. package/dist/contracts/TradeAccountProxyFactory.d.ts +9 -0
  95. package/dist/contracts/TradeAccountProxyFactory.d.ts.map +1 -0
  96. package/dist/contracts/TradeAccountProxyFactory.js +23 -0
  97. package/dist/contracts/TradeAccountProxyFactory.js.map +1 -0
  98. package/dist/contracts/TradeAccountRegistry.d.ts +271 -0
  99. package/dist/contracts/TradeAccountRegistry.d.ts.map +1 -0
  100. package/dist/contracts/TradeAccountRegistry.js +841 -0
  101. package/dist/contracts/TradeAccountRegistry.js.map +1 -0
  102. package/dist/contracts/TradeAccountRegistryFactory.d.ts +9 -0
  103. package/dist/contracts/TradeAccountRegistryFactory.d.ts.map +1 -0
  104. package/dist/contracts/TradeAccountRegistryFactory.js +23 -0
  105. package/dist/contracts/TradeAccountRegistryFactory.js.map +1 -0
  106. package/dist/contracts/TradeAccountRegistryProxy.d.ts +192 -0
  107. package/dist/contracts/TradeAccountRegistryProxy.d.ts.map +1 -0
  108. package/dist/contracts/TradeAccountRegistryProxy.js +852 -0
  109. package/dist/contracts/TradeAccountRegistryProxy.js.map +1 -0
  110. package/dist/contracts/TradeAccountRegistryProxyFactory.d.ts +9 -0
  111. package/dist/contracts/TradeAccountRegistryProxyFactory.d.ts.map +1 -0
  112. package/dist/contracts/TradeAccountRegistryProxyFactory.js +23 -0
  113. package/dist/contracts/TradeAccountRegistryProxyFactory.js.map +1 -0
  114. package/dist/contracts/common.d.ts +24 -0
  115. package/dist/contracts/common.d.ts.map +1 -0
  116. package/dist/contracts/common.js +3 -0
  117. package/dist/contracts/common.js.map +1 -0
  118. package/dist/contracts/index.d.ts +29 -0
  119. package/dist/contracts/index.d.ts.map +1 -0
  120. package/dist/contracts/index.js +38 -0
  121. package/dist/contracts/index.js.map +1 -0
  122. package/dist/index.d.ts +2 -0
  123. package/dist/index.d.ts.map +1 -0
  124. package/dist/index.js +2 -0
  125. package/dist/index.js.map +1 -0
  126. package/package.json +88 -8
@@ -0,0 +1,2780 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* eslint-disable max-classes-per-file */
3
+ /* eslint-disable @typescript-eslint/no-unused-vars */
4
+ /* eslint-disable @typescript-eslint/consistent-type-imports */
5
+ /*
6
+ Fuels version: 0.103.0
7
+ Forc version: 0.70.2
8
+ Fuel-Core version: 0.47.1
9
+ */
10
+ import { Contract as __Contract, Interface } from "fuels";
11
+ export var CallerErrorInput;
12
+ (function (CallerErrorInput) {
13
+ CallerErrorInput["InvalidCaller"] = "InvalidCaller";
14
+ })(CallerErrorInput || (CallerErrorInput = {}));
15
+ ;
16
+ export var CallerErrorOutput;
17
+ (function (CallerErrorOutput) {
18
+ CallerErrorOutput["InvalidCaller"] = "InvalidCaller";
19
+ })(CallerErrorOutput || (CallerErrorOutput = {}));
20
+ ;
21
+ export var EncodingInput;
22
+ (function (EncodingInput) {
23
+ EncodingInput["SRC16"] = "SRC16";
24
+ EncodingInput["EIP712"] = "EIP712";
25
+ })(EncodingInput || (EncodingInput = {}));
26
+ ;
27
+ export var EncodingOutput;
28
+ (function (EncodingOutput) {
29
+ EncodingOutput["SRC16"] = "SRC16";
30
+ EncodingOutput["EIP712"] = "EIP712";
31
+ })(EncodingOutput || (EncodingOutput = {}));
32
+ ;
33
+ export var NonceErrorInput;
34
+ (function (NonceErrorInput) {
35
+ NonceErrorInput["InvalidNonce"] = "InvalidNonce";
36
+ })(NonceErrorInput || (NonceErrorInput = {}));
37
+ ;
38
+ export var NonceErrorOutput;
39
+ (function (NonceErrorOutput) {
40
+ NonceErrorOutput["InvalidNonce"] = "InvalidNonce";
41
+ })(NonceErrorOutput || (NonceErrorOutput = {}));
42
+ ;
43
+ export var SessionErrorInput;
44
+ (function (SessionErrorInput) {
45
+ SessionErrorInput["SessionInThePast"] = "SessionInThePast";
46
+ SessionErrorInput["NoApprovedContractIdsProvided"] = "NoApprovedContractIdsProvided";
47
+ })(SessionErrorInput || (SessionErrorInput = {}));
48
+ ;
49
+ export var SessionErrorOutput;
50
+ (function (SessionErrorOutput) {
51
+ SessionErrorOutput["SessionInThePast"] = "SessionInThePast";
52
+ SessionErrorOutput["NoApprovedContractIdsProvided"] = "NoApprovedContractIdsProvided";
53
+ })(SessionErrorOutput || (SessionErrorOutput = {}));
54
+ ;
55
+ export var SignatureErrorInput;
56
+ (function (SignatureErrorInput) {
57
+ SignatureErrorInput["UnrecoverablePublicKey"] = "UnrecoverablePublicKey";
58
+ SignatureErrorInput["InvalidPublicKey"] = "InvalidPublicKey";
59
+ SignatureErrorInput["InvalidSignature"] = "InvalidSignature";
60
+ SignatureErrorInput["InvalidOperation"] = "InvalidOperation";
61
+ })(SignatureErrorInput || (SignatureErrorInput = {}));
62
+ ;
63
+ export var SignatureErrorOutput;
64
+ (function (SignatureErrorOutput) {
65
+ SignatureErrorOutput["UnrecoverablePublicKey"] = "UnrecoverablePublicKey";
66
+ SignatureErrorOutput["InvalidPublicKey"] = "InvalidPublicKey";
67
+ SignatureErrorOutput["InvalidSignature"] = "InvalidSignature";
68
+ SignatureErrorOutput["InvalidOperation"] = "InvalidOperation";
69
+ })(SignatureErrorOutput || (SignatureErrorOutput = {}));
70
+ ;
71
+ export var SignerErrorInput;
72
+ (function (SignerErrorInput) {
73
+ SignerErrorInput["InvalidSigner"] = "InvalidSigner";
74
+ SignerErrorInput["ProxyOwnerIsContract"] = "ProxyOwnerIsContract";
75
+ })(SignerErrorInput || (SignerErrorInput = {}));
76
+ ;
77
+ export var SignerErrorOutput;
78
+ (function (SignerErrorOutput) {
79
+ SignerErrorOutput["InvalidSigner"] = "InvalidSigner";
80
+ SignerErrorOutput["ProxyOwnerIsContract"] = "ProxyOwnerIsContract";
81
+ })(SignerErrorOutput || (SignerErrorOutput = {}));
82
+ ;
83
+ export var WithdrawErrorInput;
84
+ (function (WithdrawErrorInput) {
85
+ WithdrawErrorInput["AmountIsZero"] = "AmountIsZero";
86
+ WithdrawErrorInput["NotEnoughBalance"] = "NotEnoughBalance";
87
+ })(WithdrawErrorInput || (WithdrawErrorInput = {}));
88
+ ;
89
+ export var WithdrawErrorOutput;
90
+ (function (WithdrawErrorOutput) {
91
+ WithdrawErrorOutput["AmountIsZero"] = "AmountIsZero";
92
+ WithdrawErrorOutput["NotEnoughBalance"] = "NotEnoughBalance";
93
+ })(WithdrawErrorOutput || (WithdrawErrorOutput = {}));
94
+ ;
95
+ const abi = {
96
+ "programType": "contract",
97
+ "specVersion": "1.2",
98
+ "encodingVersion": "1",
99
+ "concreteTypes": [
100
+ {
101
+ "type": "()",
102
+ "concreteTypeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
103
+ },
104
+ {
105
+ "type": "b256",
106
+ "concreteTypeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b"
107
+ },
108
+ {
109
+ "type": "bool",
110
+ "concreteTypeId": "b760f44fa5965c2474a3b471467a22c43185152129295af588b022ae50b50903"
111
+ },
112
+ {
113
+ "type": "enum contract_schema::src16::Domain",
114
+ "concreteTypeId": "5f05ed49298866d467640c48af64b5e978f95a74358b7050b09adfa77ea558b2",
115
+ "metadataTypeId": 1
116
+ },
117
+ {
118
+ "type": "enum contract_schema::src16::Encoding",
119
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07",
120
+ "metadataTypeId": 2
121
+ },
122
+ {
123
+ "type": "enum contract_schema::trade_account::CallerError",
124
+ "concreteTypeId": "0b65ce7c65308b155a42d67dba9a8f5ec826782ec477a1970fe592016e92d527",
125
+ "metadataTypeId": 3
126
+ },
127
+ {
128
+ "type": "enum contract_schema::trade_account::NonceError",
129
+ "concreteTypeId": "f88b7359b6a93f09790d042f771eb46a798919cde0d85a95d291dae15d746312",
130
+ "metadataTypeId": 4
131
+ },
132
+ {
133
+ "type": "enum contract_schema::trade_account::SessionError",
134
+ "concreteTypeId": "25f7b773d2b66be695d008d06f344b78146367854413f2041eaf21356640e568",
135
+ "metadataTypeId": 5
136
+ },
137
+ {
138
+ "type": "enum contract_schema::trade_account::SignerError",
139
+ "concreteTypeId": "9924f5da95b424d9efb5403e33f96557a6fa8e766014c055159e9c3bd457ca83",
140
+ "metadataTypeId": 6
141
+ },
142
+ {
143
+ "type": "enum contract_schema::trade_account::WithdrawError",
144
+ "concreteTypeId": "ce9db9ff03aafaa4ef9ebd0dac288345a961aff0262337411b6ef4db9df07039",
145
+ "metadataTypeId": 7
146
+ },
147
+ {
148
+ "type": "enum std::crypto::signature::Signature",
149
+ "concreteTypeId": "2a32867dec49ed8ddf6b7d2ed19d53c626d3f593369b5dd82a317d7b300e1c39",
150
+ "metadataTypeId": 8
151
+ },
152
+ {
153
+ "type": "enum std::crypto::signature_error::SignatureError",
154
+ "concreteTypeId": "c95b1133ba0fd973819faa015c9a3bf27edbbef753c977f859ba593b89ae22e5",
155
+ "metadataTypeId": 9
156
+ },
157
+ {
158
+ "type": "enum std::identity::Identity",
159
+ "concreteTypeId": "ab7cd04e05be58e3fc15d424c2c4a57f824a2a2d97d67252440a3925ebdc1335",
160
+ "metadataTypeId": 10
161
+ },
162
+ {
163
+ "type": "enum std::option::Option<enum std::crypto::signature::Signature>",
164
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40",
165
+ "metadataTypeId": 11,
166
+ "typeArguments": [
167
+ "2a32867dec49ed8ddf6b7d2ed19d53c626d3f593369b5dd82a317d7b300e1c39"
168
+ ]
169
+ },
170
+ {
171
+ "type": "enum std::option::Option<struct contract_schema::trade_account::Session>",
172
+ "concreteTypeId": "db4bc0201be00cc6d049122ba4e5eaf2e1a8d67e87ae531c85204a496c41add4",
173
+ "metadataTypeId": 11,
174
+ "typeArguments": [
175
+ "a59f4af5e00bdd0ab9aed213f6b7592136f986fe5f5224aa707f439dbd510aa9"
176
+ ]
177
+ },
178
+ {
179
+ "type": "str",
180
+ "concreteTypeId": "8c25cb3686462e9a86d2883c5688a22fe738b0bbc85f458d2d2b5f3f667c6d5a"
181
+ },
182
+ {
183
+ "type": "str[12]",
184
+ "concreteTypeId": "d41cd041a54363a3d61ab80537895c873f2315f976fc58def6e5035f6b1f0710"
185
+ },
186
+ {
187
+ "type": "str[1]",
188
+ "concreteTypeId": "6354581bfa62ac188c9f243cc30e1bf38a150773f871be8765351ef8c5db6c1e"
189
+ },
190
+ {
191
+ "type": "struct contract_libs::signature::IncrementNonceEvent",
192
+ "concreteTypeId": "1f60fe48a54d08956985da0422f2d7d44834b7c4d4687f0376f26dce46fe44bf",
193
+ "metadataTypeId": 14
194
+ },
195
+ {
196
+ "type": "struct contract_schema::trade_account::CallContractArg",
197
+ "concreteTypeId": "2e811073316cb5af9b64bcd703b0f5957a35112aa0f1f86782a8fd42b485c3d4",
198
+ "metadataTypeId": 17
199
+ },
200
+ {
201
+ "type": "struct contract_schema::trade_account::CallContractArgs",
202
+ "concreteTypeId": "f5137e8860728aa53b731dc6f4be35633f71e6cf3a24439ae80bb38d7ec67d5e",
203
+ "metadataTypeId": 18
204
+ },
205
+ {
206
+ "type": "struct contract_schema::trade_account::FailedToValidateEvent",
207
+ "concreteTypeId": "98fa03034b6a5a596d6121040d525eabb78d224d2411b6d5d0151727499bbd09",
208
+ "metadataTypeId": 19
209
+ },
210
+ {
211
+ "type": "struct contract_schema::trade_account::MultiCallContractArgs",
212
+ "concreteTypeId": "f4be05417a57a0fa163ebf6c649786e15dc74d541e39b1071bb7cfaa675759ad",
213
+ "metadataTypeId": 20
214
+ },
215
+ {
216
+ "type": "struct contract_schema::trade_account::RevokeArgs",
217
+ "concreteTypeId": "fa245643e7467acf010e5f8b65e5c1b8f23a3973dd24fe755acd630ac3fa7557",
218
+ "metadataTypeId": 21
219
+ },
220
+ {
221
+ "type": "struct contract_schema::trade_account::Session",
222
+ "concreteTypeId": "a59f4af5e00bdd0ab9aed213f6b7592136f986fe5f5224aa707f439dbd510aa9",
223
+ "metadataTypeId": 22
224
+ },
225
+ {
226
+ "type": "struct contract_schema::trade_account::SessionArgs",
227
+ "concreteTypeId": "bb7bd7d8bcce22513cea4a375d13aeff84ff17c9aecf40ae825265179de131be",
228
+ "metadataTypeId": 23
229
+ },
230
+ {
231
+ "type": "struct contract_schema::trade_account::SessionContractCallEvent",
232
+ "concreteTypeId": "55cb585aadd106832bdedaef0a231b5587db28871e2b12e5137ec4cb66b9b829",
233
+ "metadataTypeId": 24
234
+ },
235
+ {
236
+ "type": "struct contract_schema::trade_account::SessionCreatedEvent",
237
+ "concreteTypeId": "6f9ef4e7a983e700685ab472ed2e625822ad32b8f04de92adc81ed60911e5e77",
238
+ "metadataTypeId": 25
239
+ },
240
+ {
241
+ "type": "struct contract_schema::trade_account::SessionRevokedEvent",
242
+ "concreteTypeId": "2765c1864fc179c9ee1938cc4a28acedc0b1c76f0a63434b33149f432eb4e8c3",
243
+ "metadataTypeId": 26
244
+ },
245
+ {
246
+ "type": "struct contract_schema::trade_account::WithdrawArgs",
247
+ "concreteTypeId": "c86b3b5bfe482d7adedfc0fac7d7c73b4fd6e7c97a31a76afa54deeff1d5c49a",
248
+ "metadataTypeId": 27
249
+ },
250
+ {
251
+ "type": "struct contract_schema::trade_account::WithdrawEvent",
252
+ "concreteTypeId": "0e9654327e3d67d706825c5e4e2df18533389b6566d8c1c298c7bd5b5e0c6da5",
253
+ "metadataTypeId": 28
254
+ },
255
+ {
256
+ "type": "struct std::asset_id::AssetId",
257
+ "concreteTypeId": "c0710b6731b1dd59799cf6bef33eee3b3b04a2e40e80a0724090215bbf2ca974",
258
+ "metadataTypeId": 30
259
+ },
260
+ {
261
+ "type": "struct std::vec::Vec<struct contract_schema::trade_account::CallContractArg>",
262
+ "concreteTypeId": "d5d0add462df804d0d75443e00c45391dcc2f0c5c02c439a798cc7549b528449",
263
+ "metadataTypeId": 41,
264
+ "typeArguments": [
265
+ "2e811073316cb5af9b64bcd703b0f5957a35112aa0f1f86782a8fd42b485c3d4"
266
+ ]
267
+ },
268
+ {
269
+ "type": "u64",
270
+ "concreteTypeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
271
+ }
272
+ ],
273
+ "metadataTypes": [
274
+ {
275
+ "type": "[_; 64]",
276
+ "metadataTypeId": 0,
277
+ "components": [
278
+ {
279
+ "name": "__array_element",
280
+ "typeId": 43
281
+ }
282
+ ]
283
+ },
284
+ {
285
+ "type": "enum contract_schema::src16::Domain",
286
+ "metadataTypeId": 1,
287
+ "components": [
288
+ {
289
+ "name": "SRC16Domain",
290
+ "typeId": 16
291
+ },
292
+ {
293
+ "name": "EIP712Domain",
294
+ "typeId": 15
295
+ }
296
+ ]
297
+ },
298
+ {
299
+ "type": "enum contract_schema::src16::Encoding",
300
+ "metadataTypeId": 2,
301
+ "components": [
302
+ {
303
+ "name": "SRC16",
304
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
305
+ },
306
+ {
307
+ "name": "EIP712",
308
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
309
+ }
310
+ ]
311
+ },
312
+ {
313
+ "type": "enum contract_schema::trade_account::CallerError",
314
+ "metadataTypeId": 3,
315
+ "components": [
316
+ {
317
+ "name": "InvalidCaller",
318
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
319
+ }
320
+ ]
321
+ },
322
+ {
323
+ "type": "enum contract_schema::trade_account::NonceError",
324
+ "metadataTypeId": 4,
325
+ "components": [
326
+ {
327
+ "name": "InvalidNonce",
328
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
329
+ }
330
+ ]
331
+ },
332
+ {
333
+ "type": "enum contract_schema::trade_account::SessionError",
334
+ "metadataTypeId": 5,
335
+ "components": [
336
+ {
337
+ "name": "SessionInThePast",
338
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
339
+ },
340
+ {
341
+ "name": "NoApprovedContractIdsProvided",
342
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
343
+ }
344
+ ]
345
+ },
346
+ {
347
+ "type": "enum contract_schema::trade_account::SignerError",
348
+ "metadataTypeId": 6,
349
+ "components": [
350
+ {
351
+ "name": "InvalidSigner",
352
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
353
+ },
354
+ {
355
+ "name": "ProxyOwnerIsContract",
356
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
357
+ }
358
+ ]
359
+ },
360
+ {
361
+ "type": "enum contract_schema::trade_account::WithdrawError",
362
+ "metadataTypeId": 7,
363
+ "components": [
364
+ {
365
+ "name": "AmountIsZero",
366
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
367
+ },
368
+ {
369
+ "name": "NotEnoughBalance",
370
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
371
+ }
372
+ ]
373
+ },
374
+ {
375
+ "type": "enum std::crypto::signature::Signature",
376
+ "metadataTypeId": 8,
377
+ "components": [
378
+ {
379
+ "name": "Secp256k1",
380
+ "typeId": 35
381
+ },
382
+ {
383
+ "name": "Secp256r1",
384
+ "typeId": 36
385
+ },
386
+ {
387
+ "name": "Ed25519",
388
+ "typeId": 34
389
+ }
390
+ ]
391
+ },
392
+ {
393
+ "type": "enum std::crypto::signature_error::SignatureError",
394
+ "metadataTypeId": 9,
395
+ "components": [
396
+ {
397
+ "name": "UnrecoverablePublicKey",
398
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
399
+ },
400
+ {
401
+ "name": "InvalidPublicKey",
402
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
403
+ },
404
+ {
405
+ "name": "InvalidSignature",
406
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
407
+ },
408
+ {
409
+ "name": "InvalidOperation",
410
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
411
+ }
412
+ ]
413
+ },
414
+ {
415
+ "type": "enum std::identity::Identity",
416
+ "metadataTypeId": 10,
417
+ "components": [
418
+ {
419
+ "name": "Address",
420
+ "typeId": 29
421
+ },
422
+ {
423
+ "name": "ContractId",
424
+ "typeId": 33
425
+ }
426
+ ]
427
+ },
428
+ {
429
+ "type": "enum std::option::Option",
430
+ "metadataTypeId": 11,
431
+ "components": [
432
+ {
433
+ "name": "None",
434
+ "typeId": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d"
435
+ },
436
+ {
437
+ "name": "Some",
438
+ "typeId": 12
439
+ }
440
+ ],
441
+ "typeParameters": [
442
+ 12
443
+ ]
444
+ },
445
+ {
446
+ "type": "generic T",
447
+ "metadataTypeId": 12
448
+ },
449
+ {
450
+ "type": "raw untyped ptr",
451
+ "metadataTypeId": 13
452
+ },
453
+ {
454
+ "type": "struct contract_libs::signature::IncrementNonceEvent",
455
+ "metadataTypeId": 14,
456
+ "components": [
457
+ {
458
+ "name": "nonce",
459
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
460
+ }
461
+ ]
462
+ },
463
+ {
464
+ "type": "struct contract_schema::src16::EIP712Domain",
465
+ "metadataTypeId": 15,
466
+ "components": [
467
+ {
468
+ "name": "name",
469
+ "typeId": 38
470
+ },
471
+ {
472
+ "name": "version",
473
+ "typeId": 38
474
+ },
475
+ {
476
+ "name": "chain_id",
477
+ "typeId": 42
478
+ },
479
+ {
480
+ "name": "verifying_contract",
481
+ "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b"
482
+ }
483
+ ]
484
+ },
485
+ {
486
+ "type": "struct contract_schema::src16::SRC16Domain",
487
+ "metadataTypeId": 16,
488
+ "components": [
489
+ {
490
+ "name": "name",
491
+ "typeId": 38
492
+ },
493
+ {
494
+ "name": "version",
495
+ "typeId": 38
496
+ },
497
+ {
498
+ "name": "chain_id",
499
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
500
+ },
501
+ {
502
+ "name": "verifying_contract",
503
+ "typeId": 33
504
+ }
505
+ ]
506
+ },
507
+ {
508
+ "type": "struct contract_schema::trade_account::CallContractArg",
509
+ "metadataTypeId": 17,
510
+ "components": [
511
+ {
512
+ "name": "contract_id",
513
+ "typeId": 33
514
+ },
515
+ {
516
+ "name": "function_selector",
517
+ "typeId": 31
518
+ },
519
+ {
520
+ "name": "call_params",
521
+ "typeId": 37
522
+ },
523
+ {
524
+ "name": "call_data",
525
+ "typeId": 11,
526
+ "typeArguments": [
527
+ {
528
+ "name": "",
529
+ "typeId": 31
530
+ }
531
+ ]
532
+ }
533
+ ]
534
+ },
535
+ {
536
+ "type": "struct contract_schema::trade_account::CallContractArgs",
537
+ "metadataTypeId": 18,
538
+ "components": [
539
+ {
540
+ "name": "nonce",
541
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
542
+ },
543
+ {
544
+ "name": "call_contract_args",
545
+ "typeId": 17
546
+ }
547
+ ]
548
+ },
549
+ {
550
+ "type": "struct contract_schema::trade_account::FailedToValidateEvent",
551
+ "metadataTypeId": 19,
552
+ "components": [
553
+ {
554
+ "name": "account",
555
+ "typeId": 10
556
+ },
557
+ {
558
+ "name": "reason",
559
+ "typeId": 38
560
+ },
561
+ {
562
+ "name": "timestamp",
563
+ "typeId": 39
564
+ }
565
+ ]
566
+ },
567
+ {
568
+ "type": "struct contract_schema::trade_account::MultiCallContractArgs",
569
+ "metadataTypeId": 20,
570
+ "components": [
571
+ {
572
+ "name": "nonce",
573
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
574
+ },
575
+ {
576
+ "name": "call_contract_args",
577
+ "typeId": 41,
578
+ "typeArguments": [
579
+ {
580
+ "name": "",
581
+ "typeId": 17
582
+ }
583
+ ]
584
+ }
585
+ ]
586
+ },
587
+ {
588
+ "type": "struct contract_schema::trade_account::RevokeArgs",
589
+ "metadataTypeId": 21,
590
+ "components": [
591
+ {
592
+ "name": "nonce",
593
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
594
+ }
595
+ ]
596
+ },
597
+ {
598
+ "type": "struct contract_schema::trade_account::Session",
599
+ "metadataTypeId": 22,
600
+ "components": [
601
+ {
602
+ "name": "session_id",
603
+ "typeId": 10
604
+ },
605
+ {
606
+ "name": "expiry",
607
+ "typeId": 39
608
+ },
609
+ {
610
+ "name": "contract_ids",
611
+ "typeId": 41,
612
+ "typeArguments": [
613
+ {
614
+ "name": "",
615
+ "typeId": 33
616
+ }
617
+ ]
618
+ }
619
+ ]
620
+ },
621
+ {
622
+ "type": "struct contract_schema::trade_account::SessionArgs",
623
+ "metadataTypeId": 23,
624
+ "components": [
625
+ {
626
+ "name": "nonce",
627
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
628
+ },
629
+ {
630
+ "name": "session_id",
631
+ "typeId": 10
632
+ },
633
+ {
634
+ "name": "expiry",
635
+ "typeId": 39
636
+ },
637
+ {
638
+ "name": "contract_ids",
639
+ "typeId": 41,
640
+ "typeArguments": [
641
+ {
642
+ "name": "",
643
+ "typeId": 33
644
+ }
645
+ ]
646
+ }
647
+ ]
648
+ },
649
+ {
650
+ "type": "struct contract_schema::trade_account::SessionContractCallEvent",
651
+ "metadataTypeId": 24,
652
+ "components": [
653
+ {
654
+ "name": "session_id",
655
+ "typeId": 10
656
+ },
657
+ {
658
+ "name": "called_contract",
659
+ "typeId": 33
660
+ },
661
+ {
662
+ "name": "nonce",
663
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
664
+ }
665
+ ]
666
+ },
667
+ {
668
+ "type": "struct contract_schema::trade_account::SessionCreatedEvent",
669
+ "metadataTypeId": 25,
670
+ "components": [
671
+ {
672
+ "name": "account",
673
+ "typeId": 10
674
+ },
675
+ {
676
+ "name": "session",
677
+ "typeId": 22
678
+ }
679
+ ]
680
+ },
681
+ {
682
+ "type": "struct contract_schema::trade_account::SessionRevokedEvent",
683
+ "metadataTypeId": 26,
684
+ "components": [
685
+ {
686
+ "name": "account",
687
+ "typeId": 10
688
+ },
689
+ {
690
+ "name": "session_id",
691
+ "typeId": 10
692
+ }
693
+ ]
694
+ },
695
+ {
696
+ "type": "struct contract_schema::trade_account::WithdrawArgs",
697
+ "metadataTypeId": 27,
698
+ "components": [
699
+ {
700
+ "name": "nonce",
701
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
702
+ },
703
+ {
704
+ "name": "to",
705
+ "typeId": 10
706
+ },
707
+ {
708
+ "name": "amount",
709
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
710
+ },
711
+ {
712
+ "name": "asset_id",
713
+ "typeId": 30
714
+ }
715
+ ]
716
+ },
717
+ {
718
+ "type": "struct contract_schema::trade_account::WithdrawEvent",
719
+ "metadataTypeId": 28,
720
+ "components": [
721
+ {
722
+ "name": "account",
723
+ "typeId": 10
724
+ },
725
+ {
726
+ "name": "to",
727
+ "typeId": 10
728
+ },
729
+ {
730
+ "name": "amount",
731
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
732
+ },
733
+ {
734
+ "name": "asset_id",
735
+ "typeId": 30
736
+ },
737
+ {
738
+ "name": "timestamp",
739
+ "typeId": 39
740
+ }
741
+ ]
742
+ },
743
+ {
744
+ "type": "struct std::address::Address",
745
+ "metadataTypeId": 29,
746
+ "components": [
747
+ {
748
+ "name": "bits",
749
+ "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b"
750
+ }
751
+ ]
752
+ },
753
+ {
754
+ "type": "struct std::asset_id::AssetId",
755
+ "metadataTypeId": 30,
756
+ "components": [
757
+ {
758
+ "name": "bits",
759
+ "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b"
760
+ }
761
+ ]
762
+ },
763
+ {
764
+ "type": "struct std::bytes::Bytes",
765
+ "metadataTypeId": 31,
766
+ "components": [
767
+ {
768
+ "name": "buf",
769
+ "typeId": 32
770
+ },
771
+ {
772
+ "name": "len",
773
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
774
+ }
775
+ ]
776
+ },
777
+ {
778
+ "type": "struct std::bytes::RawBytes",
779
+ "metadataTypeId": 32,
780
+ "components": [
781
+ {
782
+ "name": "ptr",
783
+ "typeId": 13
784
+ },
785
+ {
786
+ "name": "cap",
787
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
788
+ }
789
+ ]
790
+ },
791
+ {
792
+ "type": "struct std::contract_id::ContractId",
793
+ "metadataTypeId": 33,
794
+ "components": [
795
+ {
796
+ "name": "bits",
797
+ "typeId": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b"
798
+ }
799
+ ]
800
+ },
801
+ {
802
+ "type": "struct std::crypto::ed25519::Ed25519",
803
+ "metadataTypeId": 34,
804
+ "components": [
805
+ {
806
+ "name": "bits",
807
+ "typeId": 0
808
+ }
809
+ ]
810
+ },
811
+ {
812
+ "type": "struct std::crypto::secp256k1::Secp256k1",
813
+ "metadataTypeId": 35,
814
+ "components": [
815
+ {
816
+ "name": "bits",
817
+ "typeId": 0
818
+ }
819
+ ]
820
+ },
821
+ {
822
+ "type": "struct std::crypto::secp256r1::Secp256r1",
823
+ "metadataTypeId": 36,
824
+ "components": [
825
+ {
826
+ "name": "bits",
827
+ "typeId": 0
828
+ }
829
+ ]
830
+ },
831
+ {
832
+ "type": "struct std::low_level_call::CallParams",
833
+ "metadataTypeId": 37,
834
+ "components": [
835
+ {
836
+ "name": "coins",
837
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
838
+ },
839
+ {
840
+ "name": "asset_id",
841
+ "typeId": 30
842
+ },
843
+ {
844
+ "name": "gas",
845
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
846
+ }
847
+ ]
848
+ },
849
+ {
850
+ "type": "struct std::string::String",
851
+ "metadataTypeId": 38,
852
+ "components": [
853
+ {
854
+ "name": "bytes",
855
+ "typeId": 31
856
+ }
857
+ ]
858
+ },
859
+ {
860
+ "type": "struct std::time::Time",
861
+ "metadataTypeId": 39,
862
+ "components": [
863
+ {
864
+ "name": "unix",
865
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
866
+ }
867
+ ]
868
+ },
869
+ {
870
+ "type": "struct std::vec::RawVec",
871
+ "metadataTypeId": 40,
872
+ "components": [
873
+ {
874
+ "name": "ptr",
875
+ "typeId": 13
876
+ },
877
+ {
878
+ "name": "cap",
879
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
880
+ }
881
+ ],
882
+ "typeParameters": [
883
+ 12
884
+ ]
885
+ },
886
+ {
887
+ "type": "struct std::vec::Vec",
888
+ "metadataTypeId": 41,
889
+ "components": [
890
+ {
891
+ "name": "buf",
892
+ "typeId": 40,
893
+ "typeArguments": [
894
+ {
895
+ "name": "",
896
+ "typeId": 12
897
+ }
898
+ ]
899
+ },
900
+ {
901
+ "name": "len",
902
+ "typeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
903
+ }
904
+ ],
905
+ "typeParameters": [
906
+ 12
907
+ ]
908
+ },
909
+ {
910
+ "type": "u256",
911
+ "metadataTypeId": 42
912
+ },
913
+ {
914
+ "type": "u8",
915
+ "metadataTypeId": 43
916
+ }
917
+ ],
918
+ "functions": [
919
+ {
920
+ "name": "call_contract",
921
+ "inputs": [
922
+ {
923
+ "name": "signature",
924
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
925
+ },
926
+ {
927
+ "name": "call",
928
+ "concreteTypeId": "2e811073316cb5af9b64bcd703b0f5957a35112aa0f1f86782a8fd42b485c3d4"
929
+ }
930
+ ],
931
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
932
+ "attributes": [
933
+ {
934
+ "name": "doc-comment",
935
+ "arguments": [
936
+ " Executes a call to another contract on behalf of the trading account."
937
+ ]
938
+ },
939
+ {
940
+ "name": "doc-comment",
941
+ "arguments": [
942
+ " Allows the account to interact with other contracts (e.g., order books)."
943
+ ]
944
+ },
945
+ {
946
+ "name": "doc-comment",
947
+ "arguments": [
948
+ ""
949
+ ]
950
+ },
951
+ {
952
+ "name": "doc-comment",
953
+ "arguments": [
954
+ " # Arguments"
955
+ ]
956
+ },
957
+ {
958
+ "name": "doc-comment",
959
+ "arguments": [
960
+ ""
961
+ ]
962
+ },
963
+ {
964
+ "name": "doc-comment",
965
+ "arguments": [
966
+ " * `contract_id` - The contract to call"
967
+ ]
968
+ },
969
+ {
970
+ "name": "doc-comment",
971
+ "arguments": [
972
+ " * `forward` - Optional assets to forward with the call"
973
+ ]
974
+ },
975
+ {
976
+ "name": "doc-comment",
977
+ "arguments": [
978
+ " * `args` - Optional encoded arguments for the call"
979
+ ]
980
+ },
981
+ {
982
+ "name": "doc-comment",
983
+ "arguments": [
984
+ ""
985
+ ]
986
+ },
987
+ {
988
+ "name": "doc-comment",
989
+ "arguments": [
990
+ " # Returns"
991
+ ]
992
+ },
993
+ {
994
+ "name": "doc-comment",
995
+ "arguments": [
996
+ ""
997
+ ]
998
+ },
999
+ {
1000
+ "name": "doc-comment",
1001
+ "arguments": [
1002
+ " * `Bytes` - The encoded return value from the called contract"
1003
+ ]
1004
+ },
1005
+ {
1006
+ "name": "doc-comment",
1007
+ "arguments": [
1008
+ ""
1009
+ ]
1010
+ },
1011
+ {
1012
+ "name": "doc-comment",
1013
+ "arguments": [
1014
+ " # Storage Access"
1015
+ ]
1016
+ },
1017
+ {
1018
+ "name": "doc-comment",
1019
+ "arguments": [
1020
+ ""
1021
+ ]
1022
+ },
1023
+ {
1024
+ "name": "doc-comment",
1025
+ "arguments": [
1026
+ " - Reads: Verifies caller permissions (owner or valid session)"
1027
+ ]
1028
+ },
1029
+ {
1030
+ "name": "doc-comment",
1031
+ "arguments": [
1032
+ ""
1033
+ ]
1034
+ },
1035
+ {
1036
+ "name": "doc-comment",
1037
+ "arguments": [
1038
+ " # Security"
1039
+ ]
1040
+ },
1041
+ {
1042
+ "name": "doc-comment",
1043
+ "arguments": [
1044
+ ""
1045
+ ]
1046
+ },
1047
+ {
1048
+ "name": "doc-comment",
1049
+ "arguments": [
1050
+ " - Only callable by account owner or valid session key holder"
1051
+ ]
1052
+ },
1053
+ {
1054
+ "name": "doc-comment",
1055
+ "arguments": [
1056
+ " - Validates forwarded amounts against account balance"
1057
+ ]
1058
+ },
1059
+ {
1060
+ "name": "doc-comment",
1061
+ "arguments": [
1062
+ ""
1063
+ ]
1064
+ },
1065
+ {
1066
+ "name": "doc-comment",
1067
+ "arguments": [
1068
+ " # Events"
1069
+ ]
1070
+ },
1071
+ {
1072
+ "name": "doc-comment",
1073
+ "arguments": [
1074
+ ""
1075
+ ]
1076
+ },
1077
+ {
1078
+ "name": "doc-comment",
1079
+ "arguments": [
1080
+ " - May emit `FailedToValidateEvent` if session validation fails"
1081
+ ]
1082
+ },
1083
+ {
1084
+ "name": "doc-comment",
1085
+ "arguments": [
1086
+ ""
1087
+ ]
1088
+ },
1089
+ {
1090
+ "name": "doc-comment",
1091
+ "arguments": [
1092
+ " # Reverts"
1093
+ ]
1094
+ },
1095
+ {
1096
+ "name": "doc-comment",
1097
+ "arguments": [
1098
+ ""
1099
+ ]
1100
+ },
1101
+ {
1102
+ "name": "doc-comment",
1103
+ "arguments": [
1104
+ " - If caller is not authorized (neither owner nor valid session)"
1105
+ ]
1106
+ },
1107
+ {
1108
+ "name": "doc-comment",
1109
+ "arguments": [
1110
+ " - If insufficient balance for forwarded assets"
1111
+ ]
1112
+ },
1113
+ {
1114
+ "name": "doc-comment",
1115
+ "arguments": [
1116
+ " - If external call fails"
1117
+ ]
1118
+ },
1119
+ {
1120
+ "name": "storage",
1121
+ "arguments": [
1122
+ "read",
1123
+ "write"
1124
+ ]
1125
+ }
1126
+ ]
1127
+ },
1128
+ {
1129
+ "name": "call_contracts",
1130
+ "inputs": [
1131
+ {
1132
+ "name": "signature",
1133
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
1134
+ },
1135
+ {
1136
+ "name": "calls",
1137
+ "concreteTypeId": "d5d0add462df804d0d75443e00c45391dcc2f0c5c02c439a798cc7549b528449"
1138
+ }
1139
+ ],
1140
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
1141
+ "attributes": [
1142
+ {
1143
+ "name": "doc-comment",
1144
+ "arguments": [
1145
+ " Executes multiple calls to other contracts on behalf of the trading account via the trading account owner."
1146
+ ]
1147
+ },
1148
+ {
1149
+ "name": "doc-comment",
1150
+ "arguments": [
1151
+ " Allows the account to interact with other contracts (e.g., order books)."
1152
+ ]
1153
+ },
1154
+ {
1155
+ "name": "doc-comment",
1156
+ "arguments": [
1157
+ ""
1158
+ ]
1159
+ },
1160
+ {
1161
+ "name": "doc-comment",
1162
+ "arguments": [
1163
+ " # Arguments"
1164
+ ]
1165
+ },
1166
+ {
1167
+ "name": "doc-comment",
1168
+ "arguments": [
1169
+ ""
1170
+ ]
1171
+ },
1172
+ {
1173
+ "name": "doc-comment",
1174
+ "arguments": [
1175
+ " * `contract_id` - The contract to call"
1176
+ ]
1177
+ },
1178
+ {
1179
+ "name": "doc-comment",
1180
+ "arguments": [
1181
+ " * `call_params` - Optional assets to forward with the call"
1182
+ ]
1183
+ },
1184
+ {
1185
+ "name": "doc-comment",
1186
+ "arguments": [
1187
+ " * `args` - Optional encoded arguments for the call"
1188
+ ]
1189
+ },
1190
+ {
1191
+ "name": "doc-comment",
1192
+ "arguments": [
1193
+ ""
1194
+ ]
1195
+ },
1196
+ {
1197
+ "name": "doc-comment",
1198
+ "arguments": [
1199
+ " # Returns"
1200
+ ]
1201
+ },
1202
+ {
1203
+ "name": "doc-comment",
1204
+ "arguments": [
1205
+ ""
1206
+ ]
1207
+ },
1208
+ {
1209
+ "name": "doc-comment",
1210
+ "arguments": [
1211
+ " * `Bytes` - The encoded return value from the called contract"
1212
+ ]
1213
+ },
1214
+ {
1215
+ "name": "doc-comment",
1216
+ "arguments": [
1217
+ ""
1218
+ ]
1219
+ },
1220
+ {
1221
+ "name": "doc-comment",
1222
+ "arguments": [
1223
+ " # Storage Access"
1224
+ ]
1225
+ },
1226
+ {
1227
+ "name": "doc-comment",
1228
+ "arguments": [
1229
+ ""
1230
+ ]
1231
+ },
1232
+ {
1233
+ "name": "doc-comment",
1234
+ "arguments": [
1235
+ " - Reads: Verifies caller permissions (owner or valid session)"
1236
+ ]
1237
+ },
1238
+ {
1239
+ "name": "doc-comment",
1240
+ "arguments": [
1241
+ ""
1242
+ ]
1243
+ },
1244
+ {
1245
+ "name": "doc-comment",
1246
+ "arguments": [
1247
+ " # Security"
1248
+ ]
1249
+ },
1250
+ {
1251
+ "name": "doc-comment",
1252
+ "arguments": [
1253
+ ""
1254
+ ]
1255
+ },
1256
+ {
1257
+ "name": "doc-comment",
1258
+ "arguments": [
1259
+ " - Only callable by account owner or valid session key holder"
1260
+ ]
1261
+ },
1262
+ {
1263
+ "name": "doc-comment",
1264
+ "arguments": [
1265
+ " - Validates forwarded amounts against account balance"
1266
+ ]
1267
+ },
1268
+ {
1269
+ "name": "doc-comment",
1270
+ "arguments": [
1271
+ ""
1272
+ ]
1273
+ },
1274
+ {
1275
+ "name": "doc-comment",
1276
+ "arguments": [
1277
+ " # Events"
1278
+ ]
1279
+ },
1280
+ {
1281
+ "name": "doc-comment",
1282
+ "arguments": [
1283
+ ""
1284
+ ]
1285
+ },
1286
+ {
1287
+ "name": "doc-comment",
1288
+ "arguments": [
1289
+ " - May emit `FailedToValidateEvent` if session validation fails"
1290
+ ]
1291
+ },
1292
+ {
1293
+ "name": "doc-comment",
1294
+ "arguments": [
1295
+ ""
1296
+ ]
1297
+ },
1298
+ {
1299
+ "name": "doc-comment",
1300
+ "arguments": [
1301
+ " # Reverts"
1302
+ ]
1303
+ },
1304
+ {
1305
+ "name": "doc-comment",
1306
+ "arguments": [
1307
+ ""
1308
+ ]
1309
+ },
1310
+ {
1311
+ "name": "doc-comment",
1312
+ "arguments": [
1313
+ " - If caller is not the trading account owner"
1314
+ ]
1315
+ },
1316
+ {
1317
+ "name": "doc-comment",
1318
+ "arguments": [
1319
+ " - If insufficient balance for forwarded assets"
1320
+ ]
1321
+ },
1322
+ {
1323
+ "name": "doc-comment",
1324
+ "arguments": [
1325
+ " - If external call fails"
1326
+ ]
1327
+ },
1328
+ {
1329
+ "name": "storage",
1330
+ "arguments": [
1331
+ "read",
1332
+ "write"
1333
+ ]
1334
+ }
1335
+ ]
1336
+ },
1337
+ {
1338
+ "name": "get_current_session",
1339
+ "inputs": [],
1340
+ "output": "db4bc0201be00cc6d049122ba4e5eaf2e1a8d67e87ae531c85204a496c41add4",
1341
+ "attributes": [
1342
+ {
1343
+ "name": "doc-comment",
1344
+ "arguments": [
1345
+ " Returns information about the current active session."
1346
+ ]
1347
+ },
1348
+ {
1349
+ "name": "doc-comment",
1350
+ "arguments": [
1351
+ ""
1352
+ ]
1353
+ },
1354
+ {
1355
+ "name": "doc-comment",
1356
+ "arguments": [
1357
+ " # Returns"
1358
+ ]
1359
+ },
1360
+ {
1361
+ "name": "doc-comment",
1362
+ "arguments": [
1363
+ ""
1364
+ ]
1365
+ },
1366
+ {
1367
+ "name": "doc-comment",
1368
+ "arguments": [
1369
+ " * `Option<Session>` - Session if a session exists, None otherwise"
1370
+ ]
1371
+ },
1372
+ {
1373
+ "name": "doc-comment",
1374
+ "arguments": [
1375
+ ""
1376
+ ]
1377
+ },
1378
+ {
1379
+ "name": "doc-comment",
1380
+ "arguments": [
1381
+ " # Storage Access"
1382
+ ]
1383
+ },
1384
+ {
1385
+ "name": "doc-comment",
1386
+ "arguments": [
1387
+ ""
1388
+ ]
1389
+ },
1390
+ {
1391
+ "name": "doc-comment",
1392
+ "arguments": [
1393
+ " - Reads: Current session data"
1394
+ ]
1395
+ },
1396
+ {
1397
+ "name": "doc-comment",
1398
+ "arguments": [
1399
+ ""
1400
+ ]
1401
+ },
1402
+ {
1403
+ "name": "doc-comment",
1404
+ "arguments": [
1405
+ " # Note"
1406
+ ]
1407
+ },
1408
+ {
1409
+ "name": "doc-comment",
1410
+ "arguments": [
1411
+ ""
1412
+ ]
1413
+ },
1414
+ {
1415
+ "name": "doc-comment",
1416
+ "arguments": [
1417
+ " - Returns the session even if it has expired (caller should check expiry)"
1418
+ ]
1419
+ },
1420
+ {
1421
+ "name": "doc-comment",
1422
+ "arguments": [
1423
+ " - Returns None if no session has been set"
1424
+ ]
1425
+ },
1426
+ {
1427
+ "name": "storage",
1428
+ "arguments": [
1429
+ "read"
1430
+ ]
1431
+ }
1432
+ ]
1433
+ },
1434
+ {
1435
+ "name": "get_nonce",
1436
+ "inputs": [],
1437
+ "output": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0",
1438
+ "attributes": [
1439
+ {
1440
+ "name": "doc-comment",
1441
+ "arguments": [
1442
+ " Returns the current nonce value for replay protection."
1443
+ ]
1444
+ },
1445
+ {
1446
+ "name": "doc-comment",
1447
+ "arguments": [
1448
+ " Nonce increments with each session-authorized operation."
1449
+ ]
1450
+ },
1451
+ {
1452
+ "name": "doc-comment",
1453
+ "arguments": [
1454
+ ""
1455
+ ]
1456
+ },
1457
+ {
1458
+ "name": "doc-comment",
1459
+ "arguments": [
1460
+ " # Returns"
1461
+ ]
1462
+ },
1463
+ {
1464
+ "name": "doc-comment",
1465
+ "arguments": [
1466
+ ""
1467
+ ]
1468
+ },
1469
+ {
1470
+ "name": "doc-comment",
1471
+ "arguments": [
1472
+ " * `u64` - Current nonce value (starts at 0)"
1473
+ ]
1474
+ },
1475
+ {
1476
+ "name": "doc-comment",
1477
+ "arguments": [
1478
+ ""
1479
+ ]
1480
+ },
1481
+ {
1482
+ "name": "doc-comment",
1483
+ "arguments": [
1484
+ " # Storage Access"
1485
+ ]
1486
+ },
1487
+ {
1488
+ "name": "doc-comment",
1489
+ "arguments": [
1490
+ ""
1491
+ ]
1492
+ },
1493
+ {
1494
+ "name": "doc-comment",
1495
+ "arguments": [
1496
+ " - Reads: Current nonce from storage"
1497
+ ]
1498
+ },
1499
+ {
1500
+ "name": "doc-comment",
1501
+ "arguments": [
1502
+ ""
1503
+ ]
1504
+ },
1505
+ {
1506
+ "name": "doc-comment",
1507
+ "arguments": [
1508
+ " # Note"
1509
+ ]
1510
+ },
1511
+ {
1512
+ "name": "doc-comment",
1513
+ "arguments": [
1514
+ ""
1515
+ ]
1516
+ },
1517
+ {
1518
+ "name": "doc-comment",
1519
+ "arguments": [
1520
+ " - Used to prevent replay attacks on session operations"
1521
+ ]
1522
+ },
1523
+ {
1524
+ "name": "doc-comment",
1525
+ "arguments": [
1526
+ " - Increments automatically with each session call"
1527
+ ]
1528
+ },
1529
+ {
1530
+ "name": "storage",
1531
+ "arguments": [
1532
+ "read"
1533
+ ]
1534
+ }
1535
+ ]
1536
+ },
1537
+ {
1538
+ "name": "session_call_contract",
1539
+ "inputs": [
1540
+ {
1541
+ "name": "signature",
1542
+ "concreteTypeId": "2a32867dec49ed8ddf6b7d2ed19d53c626d3f593369b5dd82a317d7b300e1c39"
1543
+ },
1544
+ {
1545
+ "name": "call",
1546
+ "concreteTypeId": "2e811073316cb5af9b64bcd703b0f5957a35112aa0f1f86782a8fd42b485c3d4"
1547
+ }
1548
+ ],
1549
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
1550
+ "attributes": [
1551
+ {
1552
+ "name": "doc-comment",
1553
+ "arguments": [
1554
+ " Executes a single contract call using session key authorization."
1555
+ ]
1556
+ },
1557
+ {
1558
+ "name": "doc-comment",
1559
+ "arguments": [
1560
+ " Allows delegated operations without exposing the owner's private key."
1561
+ ]
1562
+ },
1563
+ {
1564
+ "name": "doc-comment",
1565
+ "arguments": [
1566
+ ""
1567
+ ]
1568
+ },
1569
+ {
1570
+ "name": "doc-comment",
1571
+ "arguments": [
1572
+ " # Arguments"
1573
+ ]
1574
+ },
1575
+ {
1576
+ "name": "doc-comment",
1577
+ "arguments": [
1578
+ ""
1579
+ ]
1580
+ },
1581
+ {
1582
+ "name": "doc-comment",
1583
+ "arguments": [
1584
+ " * `signature` - Session key signature proving authorization"
1585
+ ]
1586
+ },
1587
+ {
1588
+ "name": "doc-comment",
1589
+ "arguments": [
1590
+ " * `call` - The contract call details including target, selector, and parameters"
1591
+ ]
1592
+ },
1593
+ {
1594
+ "name": "doc-comment",
1595
+ "arguments": [
1596
+ ""
1597
+ ]
1598
+ },
1599
+ {
1600
+ "name": "doc-comment",
1601
+ "arguments": [
1602
+ " # Storage Access"
1603
+ ]
1604
+ },
1605
+ {
1606
+ "name": "doc-comment",
1607
+ "arguments": [
1608
+ ""
1609
+ ]
1610
+ },
1611
+ {
1612
+ "name": "doc-comment",
1613
+ "arguments": [
1614
+ " - Reads: Current session for validation, current nonce"
1615
+ ]
1616
+ },
1617
+ {
1618
+ "name": "doc-comment",
1619
+ "arguments": [
1620
+ " - Writes: Increments nonce for replay protection"
1621
+ ]
1622
+ },
1623
+ {
1624
+ "name": "doc-comment",
1625
+ "arguments": [
1626
+ ""
1627
+ ]
1628
+ },
1629
+ {
1630
+ "name": "doc-comment",
1631
+ "arguments": [
1632
+ " # Security"
1633
+ ]
1634
+ },
1635
+ {
1636
+ "name": "doc-comment",
1637
+ "arguments": [
1638
+ ""
1639
+ ]
1640
+ },
1641
+ {
1642
+ "name": "doc-comment",
1643
+ "arguments": [
1644
+ " - Validates signature against the session key"
1645
+ ]
1646
+ },
1647
+ {
1648
+ "name": "doc-comment",
1649
+ "arguments": [
1650
+ " - Verifies session is active and not expired"
1651
+ ]
1652
+ },
1653
+ {
1654
+ "name": "doc-comment",
1655
+ "arguments": [
1656
+ " - Uses nonce to prevent replay attacks"
1657
+ ]
1658
+ },
1659
+ {
1660
+ "name": "doc-comment",
1661
+ "arguments": [
1662
+ ""
1663
+ ]
1664
+ },
1665
+ {
1666
+ "name": "doc-comment",
1667
+ "arguments": [
1668
+ " # Events"
1669
+ ]
1670
+ },
1671
+ {
1672
+ "name": "doc-comment",
1673
+ "arguments": [
1674
+ ""
1675
+ ]
1676
+ },
1677
+ {
1678
+ "name": "doc-comment",
1679
+ "arguments": [
1680
+ " - Emits `SessionContractCallEvent` for audit trail"
1681
+ ]
1682
+ },
1683
+ {
1684
+ "name": "doc-comment",
1685
+ "arguments": [
1686
+ ""
1687
+ ]
1688
+ },
1689
+ {
1690
+ "name": "doc-comment",
1691
+ "arguments": [
1692
+ " # Reverts"
1693
+ ]
1694
+ },
1695
+ {
1696
+ "name": "doc-comment",
1697
+ "arguments": [
1698
+ ""
1699
+ ]
1700
+ },
1701
+ {
1702
+ "name": "doc-comment",
1703
+ "arguments": [
1704
+ " - If signature is invalid"
1705
+ ]
1706
+ },
1707
+ {
1708
+ "name": "doc-comment",
1709
+ "arguments": [
1710
+ " - If session is expired or revoked"
1711
+ ]
1712
+ },
1713
+ {
1714
+ "name": "doc-comment",
1715
+ "arguments": [
1716
+ " - If recovered address doesn't match session_id"
1717
+ ]
1718
+ },
1719
+ {
1720
+ "name": "doc-comment",
1721
+ "arguments": [
1722
+ " - If external call fails"
1723
+ ]
1724
+ },
1725
+ {
1726
+ "name": "storage",
1727
+ "arguments": [
1728
+ "read",
1729
+ "write"
1730
+ ]
1731
+ }
1732
+ ]
1733
+ },
1734
+ {
1735
+ "name": "session_call_contracts",
1736
+ "inputs": [
1737
+ {
1738
+ "name": "signature",
1739
+ "concreteTypeId": "2a32867dec49ed8ddf6b7d2ed19d53c626d3f593369b5dd82a317d7b300e1c39"
1740
+ },
1741
+ {
1742
+ "name": "calls",
1743
+ "concreteTypeId": "d5d0add462df804d0d75443e00c45391dcc2f0c5c02c439a798cc7549b528449"
1744
+ }
1745
+ ],
1746
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
1747
+ "attributes": [
1748
+ {
1749
+ "name": "doc-comment",
1750
+ "arguments": [
1751
+ " Executes multiple contract calls using session key authorization."
1752
+ ]
1753
+ },
1754
+ {
1755
+ "name": "doc-comment",
1756
+ "arguments": [
1757
+ " Enables batch operations for efficiency and atomicity."
1758
+ ]
1759
+ },
1760
+ {
1761
+ "name": "doc-comment",
1762
+ "arguments": [
1763
+ ""
1764
+ ]
1765
+ },
1766
+ {
1767
+ "name": "doc-comment",
1768
+ "arguments": [
1769
+ " # Arguments"
1770
+ ]
1771
+ },
1772
+ {
1773
+ "name": "doc-comment",
1774
+ "arguments": [
1775
+ ""
1776
+ ]
1777
+ },
1778
+ {
1779
+ "name": "doc-comment",
1780
+ "arguments": [
1781
+ " * `signature` - Session key signature for the batch operation"
1782
+ ]
1783
+ },
1784
+ {
1785
+ "name": "doc-comment",
1786
+ "arguments": [
1787
+ " * `calls` - Vector of contract calls to execute in sequence"
1788
+ ]
1789
+ },
1790
+ {
1791
+ "name": "doc-comment",
1792
+ "arguments": [
1793
+ ""
1794
+ ]
1795
+ },
1796
+ {
1797
+ "name": "doc-comment",
1798
+ "arguments": [
1799
+ " # Storage Access"
1800
+ ]
1801
+ },
1802
+ {
1803
+ "name": "doc-comment",
1804
+ "arguments": [
1805
+ ""
1806
+ ]
1807
+ },
1808
+ {
1809
+ "name": "doc-comment",
1810
+ "arguments": [
1811
+ " - Reads: Current session for validation, current nonce"
1812
+ ]
1813
+ },
1814
+ {
1815
+ "name": "doc-comment",
1816
+ "arguments": [
1817
+ " - Writes: Increments nonce once for the entire batch"
1818
+ ]
1819
+ },
1820
+ {
1821
+ "name": "doc-comment",
1822
+ "arguments": [
1823
+ ""
1824
+ ]
1825
+ },
1826
+ {
1827
+ "name": "doc-comment",
1828
+ "arguments": [
1829
+ " # Security"
1830
+ ]
1831
+ },
1832
+ {
1833
+ "name": "doc-comment",
1834
+ "arguments": [
1835
+ ""
1836
+ ]
1837
+ },
1838
+ {
1839
+ "name": "doc-comment",
1840
+ "arguments": [
1841
+ " - Single signature validates the entire batch"
1842
+ ]
1843
+ },
1844
+ {
1845
+ "name": "doc-comment",
1846
+ "arguments": [
1847
+ " - All calls share the same nonce for atomicity"
1848
+ ]
1849
+ },
1850
+ {
1851
+ "name": "doc-comment",
1852
+ "arguments": [
1853
+ " - Session must be valid for all calls to execute"
1854
+ ]
1855
+ },
1856
+ {
1857
+ "name": "doc-comment",
1858
+ "arguments": [
1859
+ ""
1860
+ ]
1861
+ },
1862
+ {
1863
+ "name": "doc-comment",
1864
+ "arguments": [
1865
+ " # Events"
1866
+ ]
1867
+ },
1868
+ {
1869
+ "name": "doc-comment",
1870
+ "arguments": [
1871
+ ""
1872
+ ]
1873
+ },
1874
+ {
1875
+ "name": "doc-comment",
1876
+ "arguments": [
1877
+ " - Emits `SessionContractCallEvent` for each call in the batch"
1878
+ ]
1879
+ },
1880
+ {
1881
+ "name": "doc-comment",
1882
+ "arguments": [
1883
+ ""
1884
+ ]
1885
+ },
1886
+ {
1887
+ "name": "doc-comment",
1888
+ "arguments": [
1889
+ " # Note"
1890
+ ]
1891
+ },
1892
+ {
1893
+ "name": "doc-comment",
1894
+ "arguments": [
1895
+ ""
1896
+ ]
1897
+ },
1898
+ {
1899
+ "name": "doc-comment",
1900
+ "arguments": [
1901
+ " - Calls are executed sequentially in the order provided"
1902
+ ]
1903
+ },
1904
+ {
1905
+ "name": "doc-comment",
1906
+ "arguments": [
1907
+ " - If any call fails, subsequent calls may not execute"
1908
+ ]
1909
+ },
1910
+ {
1911
+ "name": "doc-comment",
1912
+ "arguments": [
1913
+ ""
1914
+ ]
1915
+ },
1916
+ {
1917
+ "name": "doc-comment",
1918
+ "arguments": [
1919
+ " # Reverts"
1920
+ ]
1921
+ },
1922
+ {
1923
+ "name": "doc-comment",
1924
+ "arguments": [
1925
+ ""
1926
+ ]
1927
+ },
1928
+ {
1929
+ "name": "doc-comment",
1930
+ "arguments": [
1931
+ " - If signature validation fails"
1932
+ ]
1933
+ },
1934
+ {
1935
+ "name": "doc-comment",
1936
+ "arguments": [
1937
+ " - If session is invalid"
1938
+ ]
1939
+ },
1940
+ {
1941
+ "name": "doc-comment",
1942
+ "arguments": [
1943
+ " - If any individual call fails"
1944
+ ]
1945
+ },
1946
+ {
1947
+ "name": "storage",
1948
+ "arguments": [
1949
+ "read",
1950
+ "write"
1951
+ ]
1952
+ }
1953
+ ]
1954
+ },
1955
+ {
1956
+ "name": "set_session",
1957
+ "inputs": [
1958
+ {
1959
+ "name": "signature",
1960
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
1961
+ },
1962
+ {
1963
+ "name": "session",
1964
+ "concreteTypeId": "db4bc0201be00cc6d049122ba4e5eaf2e1a8d67e87ae531c85204a496c41add4"
1965
+ }
1966
+ ],
1967
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
1968
+ "attributes": [
1969
+ {
1970
+ "name": "doc-comment",
1971
+ "arguments": [
1972
+ " Sets a new session identity for delegated operations."
1973
+ ]
1974
+ },
1975
+ {
1976
+ "name": "doc-comment",
1977
+ "arguments": [
1978
+ " Only one session can be active at a time - setting a new session automatically revokes any existing session."
1979
+ ]
1980
+ },
1981
+ {
1982
+ "name": "doc-comment",
1983
+ "arguments": [
1984
+ " Sessions allow temporary access to trading functions without exposing the owner's keys."
1985
+ ]
1986
+ },
1987
+ {
1988
+ "name": "doc-comment",
1989
+ "arguments": [
1990
+ " Sessions must specify at least one allowed contract for security."
1991
+ ]
1992
+ },
1993
+ {
1994
+ "name": "doc-comment",
1995
+ "arguments": [
1996
+ ""
1997
+ ]
1998
+ },
1999
+ {
2000
+ "name": "doc-comment",
2001
+ "arguments": [
2002
+ " # Arguments"
2003
+ ]
2004
+ },
2005
+ {
2006
+ "name": "doc-comment",
2007
+ "arguments": [
2008
+ ""
2009
+ ]
2010
+ },
2011
+ {
2012
+ "name": "doc-comment",
2013
+ "arguments": [
2014
+ " * `session` - The new session to make active (pass None to revoke without replacement)"
2015
+ ]
2016
+ },
2017
+ {
2018
+ "name": "doc-comment",
2019
+ "arguments": [
2020
+ ""
2021
+ ]
2022
+ },
2023
+ {
2024
+ "name": "doc-comment",
2025
+ "arguments": [
2026
+ " # Storage Access"
2027
+ ]
2028
+ },
2029
+ {
2030
+ "name": "doc-comment",
2031
+ "arguments": [
2032
+ ""
2033
+ ]
2034
+ },
2035
+ {
2036
+ "name": "doc-comment",
2037
+ "arguments": [
2038
+ " - Reads: Verifies caller is the account owner"
2039
+ ]
2040
+ },
2041
+ {
2042
+ "name": "doc-comment",
2043
+ "arguments": [
2044
+ " - Writes: Replaces any existing session with the new one"
2045
+ ]
2046
+ },
2047
+ {
2048
+ "name": "doc-comment",
2049
+ "arguments": [
2050
+ ""
2051
+ ]
2052
+ },
2053
+ {
2054
+ "name": "doc-comment",
2055
+ "arguments": [
2056
+ " # Events"
2057
+ ]
2058
+ },
2059
+ {
2060
+ "name": "doc-comment",
2061
+ "arguments": [
2062
+ ""
2063
+ ]
2064
+ },
2065
+ {
2066
+ "name": "doc-comment",
2067
+ "arguments": [
2068
+ " - Emits `SessionRevokedEvent` if a previous session existed"
2069
+ ]
2070
+ },
2071
+ {
2072
+ "name": "doc-comment",
2073
+ "arguments": [
2074
+ " - Emits `SessionCreatedEvent` if new session is created"
2075
+ ]
2076
+ },
2077
+ {
2078
+ "name": "doc-comment",
2079
+ "arguments": [
2080
+ ""
2081
+ ]
2082
+ },
2083
+ {
2084
+ "name": "doc-comment",
2085
+ "arguments": [
2086
+ " # Security"
2087
+ ]
2088
+ },
2089
+ {
2090
+ "name": "doc-comment",
2091
+ "arguments": [
2092
+ ""
2093
+ ]
2094
+ },
2095
+ {
2096
+ "name": "doc-comment",
2097
+ "arguments": [
2098
+ " - Automatically revokes any existing session before creating the new one"
2099
+ ]
2100
+ },
2101
+ {
2102
+ "name": "doc-comment",
2103
+ "arguments": [
2104
+ " - Only one session can be active per account at any time"
2105
+ ]
2106
+ },
2107
+ {
2108
+ "name": "doc-comment",
2109
+ "arguments": [
2110
+ " - Sessions must specify at least one allowed contract ID"
2111
+ ]
2112
+ },
2113
+ {
2114
+ "name": "doc-comment",
2115
+ "arguments": [
2116
+ " - Pass None to revoke without setting a new session"
2117
+ ]
2118
+ },
2119
+ {
2120
+ "name": "doc-comment",
2121
+ "arguments": [
2122
+ ""
2123
+ ]
2124
+ },
2125
+ {
2126
+ "name": "doc-comment",
2127
+ "arguments": [
2128
+ " # Reverts"
2129
+ ]
2130
+ },
2131
+ {
2132
+ "name": "doc-comment",
2133
+ "arguments": [
2134
+ ""
2135
+ ]
2136
+ },
2137
+ {
2138
+ "name": "doc-comment",
2139
+ "arguments": [
2140
+ " - If caller is not the account owner"
2141
+ ]
2142
+ },
2143
+ {
2144
+ "name": "doc-comment",
2145
+ "arguments": [
2146
+ " - If expiry is in the past (when session is Some)"
2147
+ ]
2148
+ },
2149
+ {
2150
+ "name": "doc-comment",
2151
+ "arguments": [
2152
+ " - If session has no allowed contracts (when session is Some)"
2153
+ ]
2154
+ },
2155
+ {
2156
+ "name": "storage",
2157
+ "arguments": [
2158
+ "read",
2159
+ "write"
2160
+ ]
2161
+ }
2162
+ ]
2163
+ },
2164
+ {
2165
+ "name": "typed_call_contract",
2166
+ "inputs": [
2167
+ {
2168
+ "name": "signature",
2169
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2170
+ },
2171
+ {
2172
+ "name": "call",
2173
+ "concreteTypeId": "f5137e8860728aa53b731dc6f4be35633f71e6cf3a24439ae80bb38d7ec67d5e"
2174
+ }
2175
+ ],
2176
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2177
+ "attributes": [
2178
+ {
2179
+ "name": "storage",
2180
+ "arguments": [
2181
+ "read",
2182
+ "write"
2183
+ ]
2184
+ }
2185
+ ]
2186
+ },
2187
+ {
2188
+ "name": "typed_call_contracts",
2189
+ "inputs": [
2190
+ {
2191
+ "name": "signature",
2192
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2193
+ },
2194
+ {
2195
+ "name": "calls",
2196
+ "concreteTypeId": "f4be05417a57a0fa163ebf6c649786e15dc74d541e39b1071bb7cfaa675759ad"
2197
+ }
2198
+ ],
2199
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2200
+ "attributes": [
2201
+ {
2202
+ "name": "storage",
2203
+ "arguments": [
2204
+ "read",
2205
+ "write"
2206
+ ]
2207
+ }
2208
+ ]
2209
+ },
2210
+ {
2211
+ "name": "typed_revoke_session",
2212
+ "inputs": [
2213
+ {
2214
+ "name": "signature",
2215
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2216
+ },
2217
+ {
2218
+ "name": "revoke",
2219
+ "concreteTypeId": "fa245643e7467acf010e5f8b65e5c1b8f23a3973dd24fe755acd630ac3fa7557"
2220
+ }
2221
+ ],
2222
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2223
+ "attributes": [
2224
+ {
2225
+ "name": "storage",
2226
+ "arguments": [
2227
+ "read",
2228
+ "write"
2229
+ ]
2230
+ }
2231
+ ]
2232
+ },
2233
+ {
2234
+ "name": "typed_set_session",
2235
+ "inputs": [
2236
+ {
2237
+ "name": "signature",
2238
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2239
+ },
2240
+ {
2241
+ "name": "session_args",
2242
+ "concreteTypeId": "bb7bd7d8bcce22513cea4a375d13aeff84ff17c9aecf40ae825265179de131be"
2243
+ }
2244
+ ],
2245
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2246
+ "attributes": [
2247
+ {
2248
+ "name": "storage",
2249
+ "arguments": [
2250
+ "read",
2251
+ "write"
2252
+ ]
2253
+ }
2254
+ ]
2255
+ },
2256
+ {
2257
+ "name": "typed_withdraw",
2258
+ "inputs": [
2259
+ {
2260
+ "name": "signature",
2261
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2262
+ },
2263
+ {
2264
+ "name": "withdraw_args",
2265
+ "concreteTypeId": "c86b3b5bfe482d7adedfc0fac7d7c73b4fd6e7c97a31a76afa54deeff1d5c49a"
2266
+ }
2267
+ ],
2268
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2269
+ "attributes": [
2270
+ {
2271
+ "name": "storage",
2272
+ "arguments": [
2273
+ "read",
2274
+ "write"
2275
+ ]
2276
+ }
2277
+ ]
2278
+ },
2279
+ {
2280
+ "name": "validate_session",
2281
+ "inputs": [
2282
+ {
2283
+ "name": "session_id",
2284
+ "concreteTypeId": "ab7cd04e05be58e3fc15d424c2c4a57f824a2a2d97d67252440a3925ebdc1335"
2285
+ }
2286
+ ],
2287
+ "output": "b760f44fa5965c2474a3b471467a22c43185152129295af588b022ae50b50903",
2288
+ "attributes": [
2289
+ {
2290
+ "name": "doc-comment",
2291
+ "arguments": [
2292
+ " Validates if a session identity is currently active."
2293
+ ]
2294
+ },
2295
+ {
2296
+ "name": "doc-comment",
2297
+ "arguments": [
2298
+ " Checks both if this is the current session and if it hasn't expired."
2299
+ ]
2300
+ },
2301
+ {
2302
+ "name": "doc-comment",
2303
+ "arguments": [
2304
+ ""
2305
+ ]
2306
+ },
2307
+ {
2308
+ "name": "doc-comment",
2309
+ "arguments": [
2310
+ " # Arguments"
2311
+ ]
2312
+ },
2313
+ {
2314
+ "name": "doc-comment",
2315
+ "arguments": [
2316
+ ""
2317
+ ]
2318
+ },
2319
+ {
2320
+ "name": "doc-comment",
2321
+ "arguments": [
2322
+ " * `session_id` - The session Identity to validate"
2323
+ ]
2324
+ },
2325
+ {
2326
+ "name": "doc-comment",
2327
+ "arguments": [
2328
+ ""
2329
+ ]
2330
+ },
2331
+ {
2332
+ "name": "doc-comment",
2333
+ "arguments": [
2334
+ " # Returns"
2335
+ ]
2336
+ },
2337
+ {
2338
+ "name": "doc-comment",
2339
+ "arguments": [
2340
+ ""
2341
+ ]
2342
+ },
2343
+ {
2344
+ "name": "doc-comment",
2345
+ "arguments": [
2346
+ " * `bool` - True if this is the current session and not expired, false otherwise"
2347
+ ]
2348
+ },
2349
+ {
2350
+ "name": "doc-comment",
2351
+ "arguments": [
2352
+ ""
2353
+ ]
2354
+ },
2355
+ {
2356
+ "name": "doc-comment",
2357
+ "arguments": [
2358
+ " # Storage Access"
2359
+ ]
2360
+ },
2361
+ {
2362
+ "name": "doc-comment",
2363
+ "arguments": [
2364
+ ""
2365
+ ]
2366
+ },
2367
+ {
2368
+ "name": "doc-comment",
2369
+ "arguments": [
2370
+ " - Reads: Current session identity and expiry time"
2371
+ ]
2372
+ },
2373
+ {
2374
+ "name": "doc-comment",
2375
+ "arguments": [
2376
+ ""
2377
+ ]
2378
+ },
2379
+ {
2380
+ "name": "doc-comment",
2381
+ "arguments": [
2382
+ " # Note"
2383
+ ]
2384
+ },
2385
+ {
2386
+ "name": "doc-comment",
2387
+ "arguments": [
2388
+ ""
2389
+ ]
2390
+ },
2391
+ {
2392
+ "name": "doc-comment",
2393
+ "arguments": [
2394
+ " - Returns false if the provided identity doesn't match the current session"
2395
+ ]
2396
+ },
2397
+ {
2398
+ "name": "doc-comment",
2399
+ "arguments": [
2400
+ " - Returns false if the current session has expired"
2401
+ ]
2402
+ },
2403
+ {
2404
+ "name": "storage",
2405
+ "arguments": [
2406
+ "read"
2407
+ ]
2408
+ }
2409
+ ]
2410
+ },
2411
+ {
2412
+ "name": "withdraw",
2413
+ "inputs": [
2414
+ {
2415
+ "name": "signature",
2416
+ "concreteTypeId": "8c8a9aeea8dc1a1ac1f1fe31c77823653152feda3fa93cd494eedbf84395ca40"
2417
+ },
2418
+ {
2419
+ "name": "to",
2420
+ "concreteTypeId": "ab7cd04e05be58e3fc15d424c2c4a57f824a2a2d97d67252440a3925ebdc1335"
2421
+ },
2422
+ {
2423
+ "name": "amount",
2424
+ "concreteTypeId": "1506e6f44c1d6291cdf46395a8e573276a4fa79e8ace3fc891e092ef32d1b0a0"
2425
+ },
2426
+ {
2427
+ "name": "asset_id",
2428
+ "concreteTypeId": "c0710b6731b1dd59799cf6bef33eee3b3b04a2e40e80a0724090215bbf2ca974"
2429
+ }
2430
+ ],
2431
+ "output": "2e38e77b22c314a449e91fafed92a43826ac6aa403ae6a8acb6cf58239fbaf5d",
2432
+ "attributes": [
2433
+ {
2434
+ "name": "doc-comment",
2435
+ "arguments": [
2436
+ " Withdraws assets from the trading account to a specified recipient."
2437
+ ]
2438
+ },
2439
+ {
2440
+ "name": "doc-comment",
2441
+ "arguments": [
2442
+ " Only the account owner can withdraw funds."
2443
+ ]
2444
+ },
2445
+ {
2446
+ "name": "doc-comment",
2447
+ "arguments": [
2448
+ ""
2449
+ ]
2450
+ },
2451
+ {
2452
+ "name": "doc-comment",
2453
+ "arguments": [
2454
+ " # Arguments"
2455
+ ]
2456
+ },
2457
+ {
2458
+ "name": "doc-comment",
2459
+ "arguments": [
2460
+ ""
2461
+ ]
2462
+ },
2463
+ {
2464
+ "name": "doc-comment",
2465
+ "arguments": [
2466
+ " * `to` - The recipient Identity for the withdrawal"
2467
+ ]
2468
+ },
2469
+ {
2470
+ "name": "doc-comment",
2471
+ "arguments": [
2472
+ " * `amount` - The amount to withdraw"
2473
+ ]
2474
+ },
2475
+ {
2476
+ "name": "doc-comment",
2477
+ "arguments": [
2478
+ " * `asset_id` - The asset to withdraw"
2479
+ ]
2480
+ },
2481
+ {
2482
+ "name": "doc-comment",
2483
+ "arguments": [
2484
+ ""
2485
+ ]
2486
+ },
2487
+ {
2488
+ "name": "doc-comment",
2489
+ "arguments": [
2490
+ " # Storage Access"
2491
+ ]
2492
+ },
2493
+ {
2494
+ "name": "doc-comment",
2495
+ "arguments": [
2496
+ ""
2497
+ ]
2498
+ },
2499
+ {
2500
+ "name": "doc-comment",
2501
+ "arguments": [
2502
+ " - Reads: Verifies caller is owner and checks balance"
2503
+ ]
2504
+ },
2505
+ {
2506
+ "name": "doc-comment",
2507
+ "arguments": [
2508
+ " - Writes: Updates the balance after withdrawal"
2509
+ ]
2510
+ },
2511
+ {
2512
+ "name": "doc-comment",
2513
+ "arguments": [
2514
+ ""
2515
+ ]
2516
+ },
2517
+ {
2518
+ "name": "doc-comment",
2519
+ "arguments": [
2520
+ " # Events"
2521
+ ]
2522
+ },
2523
+ {
2524
+ "name": "doc-comment",
2525
+ "arguments": [
2526
+ ""
2527
+ ]
2528
+ },
2529
+ {
2530
+ "name": "doc-comment",
2531
+ "arguments": [
2532
+ " - Emits `WithdrawEvent` with withdrawal details"
2533
+ ]
2534
+ },
2535
+ {
2536
+ "name": "doc-comment",
2537
+ "arguments": [
2538
+ ""
2539
+ ]
2540
+ },
2541
+ {
2542
+ "name": "doc-comment",
2543
+ "arguments": [
2544
+ " # Reverts"
2545
+ ]
2546
+ },
2547
+ {
2548
+ "name": "doc-comment",
2549
+ "arguments": [
2550
+ ""
2551
+ ]
2552
+ },
2553
+ {
2554
+ "name": "doc-comment",
2555
+ "arguments": [
2556
+ " - If caller is not the account owner"
2557
+ ]
2558
+ },
2559
+ {
2560
+ "name": "doc-comment",
2561
+ "arguments": [
2562
+ " - If insufficient balance"
2563
+ ]
2564
+ },
2565
+ {
2566
+ "name": "doc-comment",
2567
+ "arguments": [
2568
+ " - If amount is zero"
2569
+ ]
2570
+ },
2571
+ {
2572
+ "name": "doc-comment",
2573
+ "arguments": [
2574
+ " - If transfer fails"
2575
+ ]
2576
+ },
2577
+ {
2578
+ "name": "storage",
2579
+ "arguments": [
2580
+ "read",
2581
+ "write"
2582
+ ]
2583
+ }
2584
+ ]
2585
+ },
2586
+ {
2587
+ "name": "call_contract_arg_type_hash",
2588
+ "inputs": [
2589
+ {
2590
+ "name": "encoding",
2591
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2592
+ }
2593
+ ],
2594
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2595
+ "attributes": null
2596
+ },
2597
+ {
2598
+ "name": "call_contract_args_type_hash",
2599
+ "inputs": [
2600
+ {
2601
+ "name": "encoding",
2602
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2603
+ }
2604
+ ],
2605
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2606
+ "attributes": null
2607
+ },
2608
+ {
2609
+ "name": "call_params_type_hash",
2610
+ "inputs": [
2611
+ {
2612
+ "name": "encoding",
2613
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2614
+ }
2615
+ ],
2616
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2617
+ "attributes": null
2618
+ },
2619
+ {
2620
+ "name": "domain_separator",
2621
+ "inputs": [
2622
+ {
2623
+ "name": "encoding",
2624
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2625
+ }
2626
+ ],
2627
+ "output": "5f05ed49298866d467640c48af64b5e978f95a74358b7050b09adfa77ea558b2",
2628
+ "attributes": null
2629
+ },
2630
+ {
2631
+ "name": "domain_separator_hash",
2632
+ "inputs": [
2633
+ {
2634
+ "name": "encoding",
2635
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2636
+ }
2637
+ ],
2638
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2639
+ "attributes": null
2640
+ },
2641
+ {
2642
+ "name": "multi_call_contract_args_type_hash",
2643
+ "inputs": [
2644
+ {
2645
+ "name": "encoding",
2646
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2647
+ }
2648
+ ],
2649
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2650
+ "attributes": null
2651
+ },
2652
+ {
2653
+ "name": "revoke_args_type_hash",
2654
+ "inputs": [
2655
+ {
2656
+ "name": "encoding",
2657
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2658
+ }
2659
+ ],
2660
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2661
+ "attributes": null
2662
+ },
2663
+ {
2664
+ "name": "session_args_type_hash",
2665
+ "inputs": [
2666
+ {
2667
+ "name": "encoding",
2668
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2669
+ }
2670
+ ],
2671
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2672
+ "attributes": null
2673
+ },
2674
+ {
2675
+ "name": "withdraw_args_type_hash",
2676
+ "inputs": [
2677
+ {
2678
+ "name": "encoding",
2679
+ "concreteTypeId": "5eb19a24b67b9922247392ca34ef7e4726b323401f4d6b3f65d4a8f382632a07"
2680
+ }
2681
+ ],
2682
+ "output": "7c5ee1cecf5f8eacd1284feb5f0bf2bdea533a51e2f0c9aabe9236d335989f3b",
2683
+ "attributes": null
2684
+ }
2685
+ ],
2686
+ "loggedTypes": [
2687
+ {
2688
+ "logId": "2261086600904378517",
2689
+ "concreteTypeId": "1f60fe48a54d08956985da0422f2d7d44834b7c4d4687f0376f26dce46fe44bf"
2690
+ },
2691
+ {
2692
+ "logId": "10098701174489624218",
2693
+ "concreteTypeId": "8c25cb3686462e9a86d2883c5688a22fe738b0bbc85f458d2d2b5f3f667c6d5a"
2694
+ },
2695
+ {
2696
+ "logId": "1051120138880640983",
2697
+ "concreteTypeId": "0e9654327e3d67d706825c5e4e2df18533389b6566d8c1c298c7bd5b5e0c6da5"
2698
+ },
2699
+ {
2700
+ "logId": "8043135260348901120",
2701
+ "concreteTypeId": "6f9ef4e7a983e700685ab472ed2e625822ad32b8f04de92adc81ed60911e5e77"
2702
+ },
2703
+ {
2704
+ "logId": "2838887922734823881",
2705
+ "concreteTypeId": "2765c1864fc179c9ee1938cc4a28acedc0b1c76f0a63434b33149f432eb4e8c3"
2706
+ },
2707
+ {
2708
+ "logId": "17909535172322737929",
2709
+ "concreteTypeId": "f88b7359b6a93f09790d042f771eb46a798919cde0d85a95d291dae15d746312"
2710
+ },
2711
+ {
2712
+ "logId": "11035215306127844569",
2713
+ "concreteTypeId": "9924f5da95b424d9efb5403e33f96557a6fa8e766014c055159e9c3bd457ca83"
2714
+ },
2715
+ {
2716
+ "logId": "14509209538366790003",
2717
+ "concreteTypeId": "c95b1133ba0fd973819faa015c9a3bf27edbbef753c977f859ba593b89ae22e5"
2718
+ },
2719
+ {
2720
+ "logId": "821289540733930261",
2721
+ "concreteTypeId": "0b65ce7c65308b155a42d67dba9a8f5ec826782ec477a1970fe592016e92d527"
2722
+ },
2723
+ {
2724
+ "logId": "14888260448086063780",
2725
+ "concreteTypeId": "ce9db9ff03aafaa4ef9ebd0dac288345a961aff0262337411b6ef4db9df07039"
2726
+ },
2727
+ {
2728
+ "logId": "11023126350627756633",
2729
+ "concreteTypeId": "98fa03034b6a5a596d6121040d525eabb78d224d2411b6d5d0151727499bbd09"
2730
+ },
2731
+ {
2732
+ "logId": "2735857006735158246",
2733
+ "concreteTypeId": "25f7b773d2b66be695d008d06f344b78146367854413f2041eaf21356640e568"
2734
+ },
2735
+ {
2736
+ "logId": "6182132059982595715",
2737
+ "concreteTypeId": "55cb585aadd106832bdedaef0a231b5587db28871e2b12e5137ec4cb66b9b829"
2738
+ }
2739
+ ],
2740
+ "messagesTypes": [],
2741
+ "configurables": [
2742
+ {
2743
+ "name": "DOMAIN",
2744
+ "concreteTypeId": "d41cd041a54363a3d61ab80537895c873f2315f976fc58def6e5035f6b1f0710",
2745
+ "offset": 76256,
2746
+ "indirect": false
2747
+ },
2748
+ {
2749
+ "name": "VERSION",
2750
+ "concreteTypeId": "6354581bfa62ac188c9f243cc30e1bf38a150773f871be8765351ef8c5db6c1e",
2751
+ "offset": 76272,
2752
+ "indirect": false
2753
+ }
2754
+ ],
2755
+ "errorCodes": {},
2756
+ "panickingCalls": {}
2757
+ };
2758
+ const storageSlots = [
2759
+ {
2760
+ "key": "01d66960d3120f08228f6113a5f43d715a03ec130422f4b1920c8ede5c377bc2",
2761
+ "value": "0000000000000000000000000000000000000000000000000000000000000000"
2762
+ },
2763
+ {
2764
+ "key": "01d66960d3120f08228f6113a5f43d715a03ec130422f4b1920c8ede5c377bc3",
2765
+ "value": "0000000000000000000000000000000000000000000000000000000000000000"
2766
+ }
2767
+ ];
2768
+ export class TradeAccountInterface extends Interface {
2769
+ constructor() {
2770
+ super(abi);
2771
+ }
2772
+ }
2773
+ export class TradeAccount extends __Contract {
2774
+ static abi = abi;
2775
+ static storageSlots = storageSlots;
2776
+ constructor(id, accountOrProvider) {
2777
+ super(id, abi, accountOrProvider);
2778
+ }
2779
+ }
2780
+ //# sourceMappingURL=TradeAccount.js.map