@atomiqlabs/chain-starknet 1.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/LICENSE +201 -0
  2. package/dist/get_serialized_block.d.ts +1 -0
  3. package/dist/get_serialized_block.js +28 -0
  4. package/dist/index.d.ts +34 -0
  5. package/dist/index.js +50 -0
  6. package/dist/starknet/StarknetChainType.d.ts +9 -0
  7. package/dist/starknet/StarknetChainType.js +2 -0
  8. package/dist/starknet/StarknetInitializer.d.ts +18 -0
  9. package/dist/starknet/StarknetInitializer.js +49 -0
  10. package/dist/starknet/base/StarknetAction.d.ts +27 -0
  11. package/dist/starknet/base/StarknetAction.js +73 -0
  12. package/dist/starknet/base/StarknetBase.d.ts +34 -0
  13. package/dist/starknet/base/StarknetBase.js +29 -0
  14. package/dist/starknet/base/StarknetModule.d.ts +14 -0
  15. package/dist/starknet/base/StarknetModule.js +13 -0
  16. package/dist/starknet/base/modules/ERC20Abi.d.ts +755 -0
  17. package/dist/starknet/base/modules/ERC20Abi.js +1032 -0
  18. package/dist/starknet/base/modules/StarknetAccounts.d.ts +6 -0
  19. package/dist/starknet/base/modules/StarknetAccounts.js +24 -0
  20. package/dist/starknet/base/modules/StarknetAddresses.d.ts +9 -0
  21. package/dist/starknet/base/modules/StarknetAddresses.js +26 -0
  22. package/dist/starknet/base/modules/StarknetBlocks.d.ts +19 -0
  23. package/dist/starknet/base/modules/StarknetBlocks.js +49 -0
  24. package/dist/starknet/base/modules/StarknetEvents.d.ts +44 -0
  25. package/dist/starknet/base/modules/StarknetEvents.js +88 -0
  26. package/dist/starknet/base/modules/StarknetFees.d.ts +55 -0
  27. package/dist/starknet/base/modules/StarknetFees.js +102 -0
  28. package/dist/starknet/base/modules/StarknetSignatures.d.ts +30 -0
  29. package/dist/starknet/base/modules/StarknetSignatures.js +71 -0
  30. package/dist/starknet/base/modules/StarknetTokens.d.ts +67 -0
  31. package/dist/starknet/base/modules/StarknetTokens.js +97 -0
  32. package/dist/starknet/base/modules/StarknetTransactions.d.ts +87 -0
  33. package/dist/starknet/base/modules/StarknetTransactions.js +226 -0
  34. package/dist/starknet/btcrelay/BtcRelayAbi.d.ts +250 -0
  35. package/dist/starknet/btcrelay/BtcRelayAbi.js +341 -0
  36. package/dist/starknet/btcrelay/StarknetBtcRelay.d.ts +166 -0
  37. package/dist/starknet/btcrelay/StarknetBtcRelay.js +323 -0
  38. package/dist/starknet/btcrelay/headers/StarknetBtcHeader.d.ts +32 -0
  39. package/dist/starknet/btcrelay/headers/StarknetBtcHeader.js +74 -0
  40. package/dist/starknet/btcrelay/headers/StarknetBtcStoredHeader.d.ts +52 -0
  41. package/dist/starknet/btcrelay/headers/StarknetBtcStoredHeader.js +113 -0
  42. package/dist/starknet/contract/StarknetContractBase.d.ts +13 -0
  43. package/dist/starknet/contract/StarknetContractBase.js +18 -0
  44. package/dist/starknet/contract/modules/StarknetContractEvents.d.ts +40 -0
  45. package/dist/starknet/contract/modules/StarknetContractEvents.js +77 -0
  46. package/dist/starknet/events/StarknetChainEvents.d.ts +19 -0
  47. package/dist/starknet/events/StarknetChainEvents.js +51 -0
  48. package/dist/starknet/events/StarknetChainEventsBrowser.d.ts +73 -0
  49. package/dist/starknet/events/StarknetChainEventsBrowser.js +210 -0
  50. package/dist/starknet/swaps/EscrowManagerAbi.d.ts +445 -0
  51. package/dist/starknet/swaps/EscrowManagerAbi.js +601 -0
  52. package/dist/starknet/swaps/StarknetSwapContract.d.ts +215 -0
  53. package/dist/starknet/swaps/StarknetSwapContract.js +452 -0
  54. package/dist/starknet/swaps/StarknetSwapData.d.ts +74 -0
  55. package/dist/starknet/swaps/StarknetSwapData.js +316 -0
  56. package/dist/starknet/swaps/StarknetSwapModule.d.ts +9 -0
  57. package/dist/starknet/swaps/StarknetSwapModule.js +12 -0
  58. package/dist/starknet/swaps/handlers/IHandler.d.ts +13 -0
  59. package/dist/starknet/swaps/handlers/IHandler.js +2 -0
  60. package/dist/starknet/swaps/handlers/claim/ClaimHandlers.d.ts +13 -0
  61. package/dist/starknet/swaps/handlers/claim/ClaimHandlers.js +13 -0
  62. package/dist/starknet/swaps/handlers/claim/HashlockClaimHandler.d.ts +22 -0
  63. package/dist/starknet/swaps/handlers/claim/HashlockClaimHandler.js +44 -0
  64. package/dist/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.d.ts +25 -0
  65. package/dist/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.js +48 -0
  66. package/dist/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.d.ts +26 -0
  67. package/dist/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.js +40 -0
  68. package/dist/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.d.ts +20 -0
  69. package/dist/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.js +29 -0
  70. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.d.ts +64 -0
  71. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.js +86 -0
  72. package/dist/starknet/swaps/handlers/refund/TimelockRefundHandler.d.ts +17 -0
  73. package/dist/starknet/swaps/handlers/refund/TimelockRefundHandler.js +27 -0
  74. package/dist/starknet/swaps/modules/StarknetLpVault.d.ts +69 -0
  75. package/dist/starknet/swaps/modules/StarknetLpVault.js +122 -0
  76. package/dist/starknet/swaps/modules/StarknetSwapClaim.d.ts +53 -0
  77. package/dist/starknet/swaps/modules/StarknetSwapClaim.js +100 -0
  78. package/dist/starknet/swaps/modules/StarknetSwapInit.d.ts +84 -0
  79. package/dist/starknet/swaps/modules/StarknetSwapInit.js +164 -0
  80. package/dist/starknet/swaps/modules/StarknetSwapRefund.d.ts +64 -0
  81. package/dist/starknet/swaps/modules/StarknetSwapRefund.js +131 -0
  82. package/dist/starknet/swaps/modules/SwapClaim.d.ts +54 -0
  83. package/dist/starknet/swaps/modules/SwapClaim.js +115 -0
  84. package/dist/starknet/swaps/modules/SwapInit.d.ts +79 -0
  85. package/dist/starknet/swaps/modules/SwapInit.js +174 -0
  86. package/dist/starknet/swaps/modules/SwapRefund.d.ts +63 -0
  87. package/dist/starknet/swaps/modules/SwapRefund.js +149 -0
  88. package/dist/starknet/wallet/StarknetKeypairWallet.d.ts +6 -0
  89. package/dist/starknet/wallet/StarknetKeypairWallet.js +26 -0
  90. package/dist/starknet/wallet/StarknetSigner.d.ts +12 -0
  91. package/dist/starknet/wallet/StarknetSigner.js +46 -0
  92. package/dist/utils/Utils.d.ts +38 -0
  93. package/dist/utils/Utils.js +255 -0
  94. package/package.json +39 -0
  95. package/src/index.ts +41 -0
  96. package/src/starknet/StarknetChainType.ts +20 -0
  97. package/src/starknet/StarknetInitializer.ts +75 -0
  98. package/src/starknet/base/StarknetAction.ts +90 -0
  99. package/src/starknet/base/StarknetBase.ts +56 -0
  100. package/src/starknet/base/StarknetModule.ts +20 -0
  101. package/src/starknet/base/modules/ERC20Abi.ts +1029 -0
  102. package/src/starknet/base/modules/StarknetAccounts.ts +26 -0
  103. package/src/starknet/base/modules/StarknetAddresses.ts +23 -0
  104. package/src/starknet/base/modules/StarknetBlocks.ts +59 -0
  105. package/src/starknet/base/modules/StarknetEvents.ts +105 -0
  106. package/src/starknet/base/modules/StarknetFees.ts +136 -0
  107. package/src/starknet/base/modules/StarknetSignatures.ts +91 -0
  108. package/src/starknet/base/modules/StarknetTokens.ts +116 -0
  109. package/src/starknet/base/modules/StarknetTransactions.ts +254 -0
  110. package/src/starknet/btcrelay/BtcRelayAbi.ts +338 -0
  111. package/src/starknet/btcrelay/StarknetBtcRelay.ts +415 -0
  112. package/src/starknet/btcrelay/headers/StarknetBtcHeader.ts +101 -0
  113. package/src/starknet/btcrelay/headers/StarknetBtcStoredHeader.ts +142 -0
  114. package/src/starknet/contract/StarknetContractBase.ts +29 -0
  115. package/src/starknet/contract/modules/StarknetContractEvents.ts +108 -0
  116. package/src/starknet/events/StarknetChainEvents.ts +63 -0
  117. package/src/starknet/events/StarknetChainEventsBrowser.ts +289 -0
  118. package/src/starknet/swaps/EscrowManagerAbi.ts +600 -0
  119. package/src/starknet/swaps/StarknetSwapContract.ts +694 -0
  120. package/src/starknet/swaps/StarknetSwapData.ts +441 -0
  121. package/src/starknet/swaps/StarknetSwapModule.ts +17 -0
  122. package/src/starknet/swaps/handlers/IHandler.ts +20 -0
  123. package/src/starknet/swaps/handlers/claim/ClaimHandlers.ts +23 -0
  124. package/src/starknet/swaps/handlers/claim/HashlockClaimHandler.ts +54 -0
  125. package/src/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.ts +73 -0
  126. package/src/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.ts +67 -0
  127. package/src/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.ts +49 -0
  128. package/src/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.ts +151 -0
  129. package/src/starknet/swaps/handlers/refund/TimelockRefundHandler.ts +39 -0
  130. package/src/starknet/swaps/modules/StarknetLpVault.ts +148 -0
  131. package/src/starknet/swaps/modules/StarknetSwapClaim.ts +142 -0
  132. package/src/starknet/swaps/modules/StarknetSwapInit.ts +226 -0
  133. package/src/starknet/swaps/modules/StarknetSwapRefund.ts +202 -0
  134. package/src/starknet/wallet/StarknetKeypairWallet.ts +34 -0
  135. package/src/starknet/wallet/StarknetSigner.ts +55 -0
  136. package/src/utils/Utils.ts +247 -0
@@ -0,0 +1,1029 @@
1
+ export const ERC20Abi = [
2
+ {
3
+ "type": "impl",
4
+ "name": "MintableToken",
5
+ "interface_name": "src::mintable_token_interface::IMintableToken"
6
+ },
7
+ {
8
+ "type": "struct",
9
+ "name": "core::integer::u256",
10
+ "members": [
11
+ {
12
+ "name": "low",
13
+ "type": "core::integer::u128"
14
+ },
15
+ {
16
+ "name": "high",
17
+ "type": "core::integer::u128"
18
+ }
19
+ ]
20
+ },
21
+ {
22
+ "type": "interface",
23
+ "name": "src::mintable_token_interface::IMintableToken",
24
+ "items": [
25
+ {
26
+ "type": "function",
27
+ "name": "permissioned_mint",
28
+ "inputs": [
29
+ {
30
+ "name": "account",
31
+ "type": "core::starknet::contract_address::ContractAddress"
32
+ },
33
+ {
34
+ "name": "amount",
35
+ "type": "core::integer::u256"
36
+ }
37
+ ],
38
+ "outputs": [],
39
+ "state_mutability": "external"
40
+ },
41
+ {
42
+ "type": "function",
43
+ "name": "permissioned_burn",
44
+ "inputs": [
45
+ {
46
+ "name": "account",
47
+ "type": "core::starknet::contract_address::ContractAddress"
48
+ },
49
+ {
50
+ "name": "amount",
51
+ "type": "core::integer::u256"
52
+ }
53
+ ],
54
+ "outputs": [],
55
+ "state_mutability": "external"
56
+ }
57
+ ]
58
+ },
59
+ {
60
+ "type": "impl",
61
+ "name": "MintableTokenCamelImpl",
62
+ "interface_name": "src::mintable_token_interface::IMintableTokenCamel"
63
+ },
64
+ {
65
+ "type": "interface",
66
+ "name": "src::mintable_token_interface::IMintableTokenCamel",
67
+ "items": [
68
+ {
69
+ "type": "function",
70
+ "name": "permissionedMint",
71
+ "inputs": [
72
+ {
73
+ "name": "account",
74
+ "type": "core::starknet::contract_address::ContractAddress"
75
+ },
76
+ {
77
+ "name": "amount",
78
+ "type": "core::integer::u256"
79
+ }
80
+ ],
81
+ "outputs": [],
82
+ "state_mutability": "external"
83
+ },
84
+ {
85
+ "type": "function",
86
+ "name": "permissionedBurn",
87
+ "inputs": [
88
+ {
89
+ "name": "account",
90
+ "type": "core::starknet::contract_address::ContractAddress"
91
+ },
92
+ {
93
+ "name": "amount",
94
+ "type": "core::integer::u256"
95
+ }
96
+ ],
97
+ "outputs": [],
98
+ "state_mutability": "external"
99
+ }
100
+ ]
101
+ },
102
+ {
103
+ "type": "impl",
104
+ "name": "Replaceable",
105
+ "interface_name": "src::replaceability_interface::IReplaceable"
106
+ },
107
+ {
108
+ "type": "struct",
109
+ "name": "core::array::Span::<core::felt252>",
110
+ "members": [
111
+ {
112
+ "name": "snapshot",
113
+ "type": "@core::array::Array::<core::felt252>"
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "type": "struct",
119
+ "name": "src::replaceability_interface::EICData",
120
+ "members": [
121
+ {
122
+ "name": "eic_hash",
123
+ "type": "core::starknet::class_hash::ClassHash"
124
+ },
125
+ {
126
+ "name": "eic_init_data",
127
+ "type": "core::array::Span::<core::felt252>"
128
+ }
129
+ ]
130
+ },
131
+ {
132
+ "type": "enum",
133
+ "name": "core::option::Option::<src::replaceability_interface::EICData>",
134
+ "variants": [
135
+ {
136
+ "name": "Some",
137
+ "type": "src::replaceability_interface::EICData"
138
+ },
139
+ {
140
+ "name": "None",
141
+ "type": "()"
142
+ }
143
+ ]
144
+ },
145
+ {
146
+ "type": "enum",
147
+ "name": "core::bool",
148
+ "variants": [
149
+ {
150
+ "name": "False",
151
+ "type": "()"
152
+ },
153
+ {
154
+ "name": "True",
155
+ "type": "()"
156
+ }
157
+ ]
158
+ },
159
+ {
160
+ "type": "struct",
161
+ "name": "src::replaceability_interface::ImplementationData",
162
+ "members": [
163
+ {
164
+ "name": "impl_hash",
165
+ "type": "core::starknet::class_hash::ClassHash"
166
+ },
167
+ {
168
+ "name": "eic_data",
169
+ "type": "core::option::Option::<src::replaceability_interface::EICData>"
170
+ },
171
+ {
172
+ "name": "final",
173
+ "type": "core::bool"
174
+ }
175
+ ]
176
+ },
177
+ {
178
+ "type": "interface",
179
+ "name": "src::replaceability_interface::IReplaceable",
180
+ "items": [
181
+ {
182
+ "type": "function",
183
+ "name": "get_upgrade_delay",
184
+ "inputs": [],
185
+ "outputs": [
186
+ {
187
+ "type": "core::integer::u64"
188
+ }
189
+ ],
190
+ "state_mutability": "view"
191
+ },
192
+ {
193
+ "type": "function",
194
+ "name": "get_impl_activation_time",
195
+ "inputs": [
196
+ {
197
+ "name": "implementation_data",
198
+ "type": "src::replaceability_interface::ImplementationData"
199
+ }
200
+ ],
201
+ "outputs": [
202
+ {
203
+ "type": "core::integer::u64"
204
+ }
205
+ ],
206
+ "state_mutability": "view"
207
+ },
208
+ {
209
+ "type": "function",
210
+ "name": "add_new_implementation",
211
+ "inputs": [
212
+ {
213
+ "name": "implementation_data",
214
+ "type": "src::replaceability_interface::ImplementationData"
215
+ }
216
+ ],
217
+ "outputs": [],
218
+ "state_mutability": "external"
219
+ },
220
+ {
221
+ "type": "function",
222
+ "name": "remove_implementation",
223
+ "inputs": [
224
+ {
225
+ "name": "implementation_data",
226
+ "type": "src::replaceability_interface::ImplementationData"
227
+ }
228
+ ],
229
+ "outputs": [],
230
+ "state_mutability": "external"
231
+ },
232
+ {
233
+ "type": "function",
234
+ "name": "replace_to",
235
+ "inputs": [
236
+ {
237
+ "name": "implementation_data",
238
+ "type": "src::replaceability_interface::ImplementationData"
239
+ }
240
+ ],
241
+ "outputs": [],
242
+ "state_mutability": "external"
243
+ }
244
+ ]
245
+ },
246
+ {
247
+ "type": "impl",
248
+ "name": "AccessControlImplExternal",
249
+ "interface_name": "src::access_control_interface::IAccessControl"
250
+ },
251
+ {
252
+ "type": "interface",
253
+ "name": "src::access_control_interface::IAccessControl",
254
+ "items": [
255
+ {
256
+ "type": "function",
257
+ "name": "has_role",
258
+ "inputs": [
259
+ {
260
+ "name": "role",
261
+ "type": "core::felt252"
262
+ },
263
+ {
264
+ "name": "account",
265
+ "type": "core::starknet::contract_address::ContractAddress"
266
+ }
267
+ ],
268
+ "outputs": [
269
+ {
270
+ "type": "core::bool"
271
+ }
272
+ ],
273
+ "state_mutability": "view"
274
+ },
275
+ {
276
+ "type": "function",
277
+ "name": "get_role_admin",
278
+ "inputs": [
279
+ {
280
+ "name": "role",
281
+ "type": "core::felt252"
282
+ }
283
+ ],
284
+ "outputs": [
285
+ {
286
+ "type": "core::felt252"
287
+ }
288
+ ],
289
+ "state_mutability": "view"
290
+ }
291
+ ]
292
+ },
293
+ {
294
+ "type": "impl",
295
+ "name": "RolesImpl",
296
+ "interface_name": "src::roles_interface::IMinimalRoles"
297
+ },
298
+ {
299
+ "type": "interface",
300
+ "name": "src::roles_interface::IMinimalRoles",
301
+ "items": [
302
+ {
303
+ "type": "function",
304
+ "name": "is_governance_admin",
305
+ "inputs": [
306
+ {
307
+ "name": "account",
308
+ "type": "core::starknet::contract_address::ContractAddress"
309
+ }
310
+ ],
311
+ "outputs": [
312
+ {
313
+ "type": "core::bool"
314
+ }
315
+ ],
316
+ "state_mutability": "view"
317
+ },
318
+ {
319
+ "type": "function",
320
+ "name": "is_upgrade_governor",
321
+ "inputs": [
322
+ {
323
+ "name": "account",
324
+ "type": "core::starknet::contract_address::ContractAddress"
325
+ }
326
+ ],
327
+ "outputs": [
328
+ {
329
+ "type": "core::bool"
330
+ }
331
+ ],
332
+ "state_mutability": "view"
333
+ },
334
+ {
335
+ "type": "function",
336
+ "name": "register_governance_admin",
337
+ "inputs": [
338
+ {
339
+ "name": "account",
340
+ "type": "core::starknet::contract_address::ContractAddress"
341
+ }
342
+ ],
343
+ "outputs": [],
344
+ "state_mutability": "external"
345
+ },
346
+ {
347
+ "type": "function",
348
+ "name": "remove_governance_admin",
349
+ "inputs": [
350
+ {
351
+ "name": "account",
352
+ "type": "core::starknet::contract_address::ContractAddress"
353
+ }
354
+ ],
355
+ "outputs": [],
356
+ "state_mutability": "external"
357
+ },
358
+ {
359
+ "type": "function",
360
+ "name": "register_upgrade_governor",
361
+ "inputs": [
362
+ {
363
+ "name": "account",
364
+ "type": "core::starknet::contract_address::ContractAddress"
365
+ }
366
+ ],
367
+ "outputs": [],
368
+ "state_mutability": "external"
369
+ },
370
+ {
371
+ "type": "function",
372
+ "name": "remove_upgrade_governor",
373
+ "inputs": [
374
+ {
375
+ "name": "account",
376
+ "type": "core::starknet::contract_address::ContractAddress"
377
+ }
378
+ ],
379
+ "outputs": [],
380
+ "state_mutability": "external"
381
+ },
382
+ {
383
+ "type": "function",
384
+ "name": "renounce",
385
+ "inputs": [
386
+ {
387
+ "name": "role",
388
+ "type": "core::felt252"
389
+ }
390
+ ],
391
+ "outputs": [],
392
+ "state_mutability": "external"
393
+ }
394
+ ]
395
+ },
396
+ {
397
+ "type": "impl",
398
+ "name": "ERC20Impl",
399
+ "interface_name": "openzeppelin::token::erc20::interface::IERC20"
400
+ },
401
+ {
402
+ "type": "interface",
403
+ "name": "openzeppelin::token::erc20::interface::IERC20",
404
+ "items": [
405
+ {
406
+ "type": "function",
407
+ "name": "name",
408
+ "inputs": [],
409
+ "outputs": [
410
+ {
411
+ "type": "core::felt252"
412
+ }
413
+ ],
414
+ "state_mutability": "view"
415
+ },
416
+ {
417
+ "type": "function",
418
+ "name": "symbol",
419
+ "inputs": [],
420
+ "outputs": [
421
+ {
422
+ "type": "core::felt252"
423
+ }
424
+ ],
425
+ "state_mutability": "view"
426
+ },
427
+ {
428
+ "type": "function",
429
+ "name": "decimals",
430
+ "inputs": [],
431
+ "outputs": [
432
+ {
433
+ "type": "core::integer::u8"
434
+ }
435
+ ],
436
+ "state_mutability": "view"
437
+ },
438
+ {
439
+ "type": "function",
440
+ "name": "total_supply",
441
+ "inputs": [],
442
+ "outputs": [
443
+ {
444
+ "type": "core::integer::u256"
445
+ }
446
+ ],
447
+ "state_mutability": "view"
448
+ },
449
+ {
450
+ "type": "function",
451
+ "name": "balance_of",
452
+ "inputs": [
453
+ {
454
+ "name": "account",
455
+ "type": "core::starknet::contract_address::ContractAddress"
456
+ }
457
+ ],
458
+ "outputs": [
459
+ {
460
+ "type": "core::integer::u256"
461
+ }
462
+ ],
463
+ "state_mutability": "view"
464
+ },
465
+ {
466
+ "type": "function",
467
+ "name": "allowance",
468
+ "inputs": [
469
+ {
470
+ "name": "owner",
471
+ "type": "core::starknet::contract_address::ContractAddress"
472
+ },
473
+ {
474
+ "name": "spender",
475
+ "type": "core::starknet::contract_address::ContractAddress"
476
+ }
477
+ ],
478
+ "outputs": [
479
+ {
480
+ "type": "core::integer::u256"
481
+ }
482
+ ],
483
+ "state_mutability": "view"
484
+ },
485
+ {
486
+ "type": "function",
487
+ "name": "transfer",
488
+ "inputs": [
489
+ {
490
+ "name": "recipient",
491
+ "type": "core::starknet::contract_address::ContractAddress"
492
+ },
493
+ {
494
+ "name": "amount",
495
+ "type": "core::integer::u256"
496
+ }
497
+ ],
498
+ "outputs": [
499
+ {
500
+ "type": "core::bool"
501
+ }
502
+ ],
503
+ "state_mutability": "external"
504
+ },
505
+ {
506
+ "type": "function",
507
+ "name": "transfer_from",
508
+ "inputs": [
509
+ {
510
+ "name": "sender",
511
+ "type": "core::starknet::contract_address::ContractAddress"
512
+ },
513
+ {
514
+ "name": "recipient",
515
+ "type": "core::starknet::contract_address::ContractAddress"
516
+ },
517
+ {
518
+ "name": "amount",
519
+ "type": "core::integer::u256"
520
+ }
521
+ ],
522
+ "outputs": [
523
+ {
524
+ "type": "core::bool"
525
+ }
526
+ ],
527
+ "state_mutability": "external"
528
+ },
529
+ {
530
+ "type": "function",
531
+ "name": "approve",
532
+ "inputs": [
533
+ {
534
+ "name": "spender",
535
+ "type": "core::starknet::contract_address::ContractAddress"
536
+ },
537
+ {
538
+ "name": "amount",
539
+ "type": "core::integer::u256"
540
+ }
541
+ ],
542
+ "outputs": [
543
+ {
544
+ "type": "core::bool"
545
+ }
546
+ ],
547
+ "state_mutability": "external"
548
+ }
549
+ ]
550
+ },
551
+ {
552
+ "type": "impl",
553
+ "name": "ERC20CamelOnlyImpl",
554
+ "interface_name": "openzeppelin::token::erc20::interface::IERC20CamelOnly"
555
+ },
556
+ {
557
+ "type": "interface",
558
+ "name": "openzeppelin::token::erc20::interface::IERC20CamelOnly",
559
+ "items": [
560
+ {
561
+ "type": "function",
562
+ "name": "totalSupply",
563
+ "inputs": [],
564
+ "outputs": [
565
+ {
566
+ "type": "core::integer::u256"
567
+ }
568
+ ],
569
+ "state_mutability": "view"
570
+ },
571
+ {
572
+ "type": "function",
573
+ "name": "balanceOf",
574
+ "inputs": [
575
+ {
576
+ "name": "account",
577
+ "type": "core::starknet::contract_address::ContractAddress"
578
+ }
579
+ ],
580
+ "outputs": [
581
+ {
582
+ "type": "core::integer::u256"
583
+ }
584
+ ],
585
+ "state_mutability": "view"
586
+ },
587
+ {
588
+ "type": "function",
589
+ "name": "transferFrom",
590
+ "inputs": [
591
+ {
592
+ "name": "sender",
593
+ "type": "core::starknet::contract_address::ContractAddress"
594
+ },
595
+ {
596
+ "name": "recipient",
597
+ "type": "core::starknet::contract_address::ContractAddress"
598
+ },
599
+ {
600
+ "name": "amount",
601
+ "type": "core::integer::u256"
602
+ }
603
+ ],
604
+ "outputs": [
605
+ {
606
+ "type": "core::bool"
607
+ }
608
+ ],
609
+ "state_mutability": "external"
610
+ }
611
+ ]
612
+ },
613
+ {
614
+ "type": "constructor",
615
+ "name": "constructor",
616
+ "inputs": [
617
+ {
618
+ "name": "name",
619
+ "type": "core::felt252"
620
+ },
621
+ {
622
+ "name": "symbol",
623
+ "type": "core::felt252"
624
+ },
625
+ {
626
+ "name": "decimals",
627
+ "type": "core::integer::u8"
628
+ },
629
+ {
630
+ "name": "initial_supply",
631
+ "type": "core::integer::u256"
632
+ },
633
+ {
634
+ "name": "recipient",
635
+ "type": "core::starknet::contract_address::ContractAddress"
636
+ },
637
+ {
638
+ "name": "permitted_minter",
639
+ "type": "core::starknet::contract_address::ContractAddress"
640
+ },
641
+ {
642
+ "name": "provisional_governance_admin",
643
+ "type": "core::starknet::contract_address::ContractAddress"
644
+ },
645
+ {
646
+ "name": "upgrade_delay",
647
+ "type": "core::integer::u64"
648
+ }
649
+ ]
650
+ },
651
+ {
652
+ "type": "function",
653
+ "name": "increase_allowance",
654
+ "inputs": [
655
+ {
656
+ "name": "spender",
657
+ "type": "core::starknet::contract_address::ContractAddress"
658
+ },
659
+ {
660
+ "name": "added_value",
661
+ "type": "core::integer::u256"
662
+ }
663
+ ],
664
+ "outputs": [
665
+ {
666
+ "type": "core::bool"
667
+ }
668
+ ],
669
+ "state_mutability": "external"
670
+ },
671
+ {
672
+ "type": "function",
673
+ "name": "decrease_allowance",
674
+ "inputs": [
675
+ {
676
+ "name": "spender",
677
+ "type": "core::starknet::contract_address::ContractAddress"
678
+ },
679
+ {
680
+ "name": "subtracted_value",
681
+ "type": "core::integer::u256"
682
+ }
683
+ ],
684
+ "outputs": [
685
+ {
686
+ "type": "core::bool"
687
+ }
688
+ ],
689
+ "state_mutability": "external"
690
+ },
691
+ {
692
+ "type": "function",
693
+ "name": "increaseAllowance",
694
+ "inputs": [
695
+ {
696
+ "name": "spender",
697
+ "type": "core::starknet::contract_address::ContractAddress"
698
+ },
699
+ {
700
+ "name": "addedValue",
701
+ "type": "core::integer::u256"
702
+ }
703
+ ],
704
+ "outputs": [
705
+ {
706
+ "type": "core::bool"
707
+ }
708
+ ],
709
+ "state_mutability": "external"
710
+ },
711
+ {
712
+ "type": "function",
713
+ "name": "decreaseAllowance",
714
+ "inputs": [
715
+ {
716
+ "name": "spender",
717
+ "type": "core::starknet::contract_address::ContractAddress"
718
+ },
719
+ {
720
+ "name": "subtractedValue",
721
+ "type": "core::integer::u256"
722
+ }
723
+ ],
724
+ "outputs": [
725
+ {
726
+ "type": "core::bool"
727
+ }
728
+ ],
729
+ "state_mutability": "external"
730
+ },
731
+ {
732
+ "type": "event",
733
+ "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Transfer",
734
+ "kind": "struct",
735
+ "members": [
736
+ {
737
+ "name": "from",
738
+ "type": "core::starknet::contract_address::ContractAddress",
739
+ "kind": "data"
740
+ },
741
+ {
742
+ "name": "to",
743
+ "type": "core::starknet::contract_address::ContractAddress",
744
+ "kind": "data"
745
+ },
746
+ {
747
+ "name": "value",
748
+ "type": "core::integer::u256",
749
+ "kind": "data"
750
+ }
751
+ ]
752
+ },
753
+ {
754
+ "type": "event",
755
+ "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Approval",
756
+ "kind": "struct",
757
+ "members": [
758
+ {
759
+ "name": "owner",
760
+ "type": "core::starknet::contract_address::ContractAddress",
761
+ "kind": "data"
762
+ },
763
+ {
764
+ "name": "spender",
765
+ "type": "core::starknet::contract_address::ContractAddress",
766
+ "kind": "data"
767
+ },
768
+ {
769
+ "name": "value",
770
+ "type": "core::integer::u256",
771
+ "kind": "data"
772
+ }
773
+ ]
774
+ },
775
+ {
776
+ "type": "event",
777
+ "name": "src::replaceability_interface::ImplementationAdded",
778
+ "kind": "struct",
779
+ "members": [
780
+ {
781
+ "name": "implementation_data",
782
+ "type": "src::replaceability_interface::ImplementationData",
783
+ "kind": "data"
784
+ }
785
+ ]
786
+ },
787
+ {
788
+ "type": "event",
789
+ "name": "src::replaceability_interface::ImplementationRemoved",
790
+ "kind": "struct",
791
+ "members": [
792
+ {
793
+ "name": "implementation_data",
794
+ "type": "src::replaceability_interface::ImplementationData",
795
+ "kind": "data"
796
+ }
797
+ ]
798
+ },
799
+ {
800
+ "type": "event",
801
+ "name": "src::replaceability_interface::ImplementationReplaced",
802
+ "kind": "struct",
803
+ "members": [
804
+ {
805
+ "name": "implementation_data",
806
+ "type": "src::replaceability_interface::ImplementationData",
807
+ "kind": "data"
808
+ }
809
+ ]
810
+ },
811
+ {
812
+ "type": "event",
813
+ "name": "src::replaceability_interface::ImplementationFinalized",
814
+ "kind": "struct",
815
+ "members": [
816
+ {
817
+ "name": "impl_hash",
818
+ "type": "core::starknet::class_hash::ClassHash",
819
+ "kind": "data"
820
+ }
821
+ ]
822
+ },
823
+ {
824
+ "type": "event",
825
+ "name": "src::access_control_interface::RoleGranted",
826
+ "kind": "struct",
827
+ "members": [
828
+ {
829
+ "name": "role",
830
+ "type": "core::felt252",
831
+ "kind": "data"
832
+ },
833
+ {
834
+ "name": "account",
835
+ "type": "core::starknet::contract_address::ContractAddress",
836
+ "kind": "data"
837
+ },
838
+ {
839
+ "name": "sender",
840
+ "type": "core::starknet::contract_address::ContractAddress",
841
+ "kind": "data"
842
+ }
843
+ ]
844
+ },
845
+ {
846
+ "type": "event",
847
+ "name": "src::access_control_interface::RoleRevoked",
848
+ "kind": "struct",
849
+ "members": [
850
+ {
851
+ "name": "role",
852
+ "type": "core::felt252",
853
+ "kind": "data"
854
+ },
855
+ {
856
+ "name": "account",
857
+ "type": "core::starknet::contract_address::ContractAddress",
858
+ "kind": "data"
859
+ },
860
+ {
861
+ "name": "sender",
862
+ "type": "core::starknet::contract_address::ContractAddress",
863
+ "kind": "data"
864
+ }
865
+ ]
866
+ },
867
+ {
868
+ "type": "event",
869
+ "name": "src::access_control_interface::RoleAdminChanged",
870
+ "kind": "struct",
871
+ "members": [
872
+ {
873
+ "name": "role",
874
+ "type": "core::felt252",
875
+ "kind": "data"
876
+ },
877
+ {
878
+ "name": "previous_admin_role",
879
+ "type": "core::felt252",
880
+ "kind": "data"
881
+ },
882
+ {
883
+ "name": "new_admin_role",
884
+ "type": "core::felt252",
885
+ "kind": "data"
886
+ }
887
+ ]
888
+ },
889
+ {
890
+ "type": "event",
891
+ "name": "src::roles_interface::GovernanceAdminAdded",
892
+ "kind": "struct",
893
+ "members": [
894
+ {
895
+ "name": "added_account",
896
+ "type": "core::starknet::contract_address::ContractAddress",
897
+ "kind": "data"
898
+ },
899
+ {
900
+ "name": "added_by",
901
+ "type": "core::starknet::contract_address::ContractAddress",
902
+ "kind": "data"
903
+ }
904
+ ]
905
+ },
906
+ {
907
+ "type": "event",
908
+ "name": "src::roles_interface::GovernanceAdminRemoved",
909
+ "kind": "struct",
910
+ "members": [
911
+ {
912
+ "name": "removed_account",
913
+ "type": "core::starknet::contract_address::ContractAddress",
914
+ "kind": "data"
915
+ },
916
+ {
917
+ "name": "removed_by",
918
+ "type": "core::starknet::contract_address::ContractAddress",
919
+ "kind": "data"
920
+ }
921
+ ]
922
+ },
923
+ {
924
+ "type": "event",
925
+ "name": "src::roles_interface::UpgradeGovernorAdded",
926
+ "kind": "struct",
927
+ "members": [
928
+ {
929
+ "name": "added_account",
930
+ "type": "core::starknet::contract_address::ContractAddress",
931
+ "kind": "data"
932
+ },
933
+ {
934
+ "name": "added_by",
935
+ "type": "core::starknet::contract_address::ContractAddress",
936
+ "kind": "data"
937
+ }
938
+ ]
939
+ },
940
+ {
941
+ "type": "event",
942
+ "name": "src::roles_interface::UpgradeGovernorRemoved",
943
+ "kind": "struct",
944
+ "members": [
945
+ {
946
+ "name": "removed_account",
947
+ "type": "core::starknet::contract_address::ContractAddress",
948
+ "kind": "data"
949
+ },
950
+ {
951
+ "name": "removed_by",
952
+ "type": "core::starknet::contract_address::ContractAddress",
953
+ "kind": "data"
954
+ }
955
+ ]
956
+ },
957
+ {
958
+ "type": "event",
959
+ "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Event",
960
+ "kind": "enum",
961
+ "variants": [
962
+ {
963
+ "name": "Transfer",
964
+ "type": "openzeppelin::token::erc20_v070::erc20::ERC20::Transfer",
965
+ "kind": "nested"
966
+ },
967
+ {
968
+ "name": "Approval",
969
+ "type": "openzeppelin::token::erc20_v070::erc20::ERC20::Approval",
970
+ "kind": "nested"
971
+ },
972
+ {
973
+ "name": "ImplementationAdded",
974
+ "type": "src::replaceability_interface::ImplementationAdded",
975
+ "kind": "nested"
976
+ },
977
+ {
978
+ "name": "ImplementationRemoved",
979
+ "type": "src::replaceability_interface::ImplementationRemoved",
980
+ "kind": "nested"
981
+ },
982
+ {
983
+ "name": "ImplementationReplaced",
984
+ "type": "src::replaceability_interface::ImplementationReplaced",
985
+ "kind": "nested"
986
+ },
987
+ {
988
+ "name": "ImplementationFinalized",
989
+ "type": "src::replaceability_interface::ImplementationFinalized",
990
+ "kind": "nested"
991
+ },
992
+ {
993
+ "name": "RoleGranted",
994
+ "type": "src::access_control_interface::RoleGranted",
995
+ "kind": "nested"
996
+ },
997
+ {
998
+ "name": "RoleRevoked",
999
+ "type": "src::access_control_interface::RoleRevoked",
1000
+ "kind": "nested"
1001
+ },
1002
+ {
1003
+ "name": "RoleAdminChanged",
1004
+ "type": "src::access_control_interface::RoleAdminChanged",
1005
+ "kind": "nested"
1006
+ },
1007
+ {
1008
+ "name": "GovernanceAdminAdded",
1009
+ "type": "src::roles_interface::GovernanceAdminAdded",
1010
+ "kind": "nested"
1011
+ },
1012
+ {
1013
+ "name": "GovernanceAdminRemoved",
1014
+ "type": "src::roles_interface::GovernanceAdminRemoved",
1015
+ "kind": "nested"
1016
+ },
1017
+ {
1018
+ "name": "UpgradeGovernorAdded",
1019
+ "type": "src::roles_interface::UpgradeGovernorAdded",
1020
+ "kind": "nested"
1021
+ },
1022
+ {
1023
+ "name": "UpgradeGovernorRemoved",
1024
+ "type": "src::roles_interface::UpgradeGovernorRemoved",
1025
+ "kind": "nested"
1026
+ }
1027
+ ]
1028
+ }
1029
+ ] as const;