@avail-project/ca-common 1.0.0-beta.1

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 (97) hide show
  1. package/dist/cjs/balances/ub-api.js +25 -0
  2. package/dist/cjs/cosmos/index.js +31 -0
  3. package/dist/cjs/data/chaindata.js +680 -0
  4. package/dist/cjs/data/chainid.js +91 -0
  5. package/dist/cjs/data/currency.js +77 -0
  6. package/dist/cjs/data/index.js +7 -0
  7. package/dist/cjs/data/utils.js +44 -0
  8. package/dist/cjs/evmabi/erc20.abi.js +349 -0
  9. package/dist/cjs/evmabi/index.js +6 -0
  10. package/dist/cjs/evmabi/vault.abi.js +1021 -0
  11. package/dist/cjs/evmabi/yakaggregator.abi.js +275 -0
  12. package/dist/cjs/fuelcontracts/ArcanaVault.js +2407 -0
  13. package/dist/cjs/fuelcontracts/ArcanaVaultFactory.js +18 -0
  14. package/dist/cjs/fuelcontracts/common.js +3 -0
  15. package/dist/cjs/fuelcontracts/index.js +5 -0
  16. package/dist/cjs/index.js +21 -0
  17. package/dist/cjs/permitutils/index.js +186 -0
  18. package/dist/cjs/proto/definition.js +4263 -0
  19. package/dist/cjs/proto/grpc.js +303 -0
  20. package/dist/cjs/rff/fuel.js +27 -0
  21. package/dist/cjs/rff/rff.js +77 -0
  22. package/dist/cjs/types/binarytypes.js +2 -0
  23. package/dist/cjs/types/index.js +5 -0
  24. package/dist/cjs/types/msgpack-axios.js +22 -0
  25. package/dist/cjs/vaultcontracts/index.js +4 -0
  26. package/dist/cjs/vaultcontracts/vaultcontracts.js +145 -0
  27. package/dist/cjs/xcs/autochoice.js +374 -0
  28. package/dist/cjs/xcs/bebop-agg.js +128 -0
  29. package/dist/cjs/xcs/iface.js +13 -0
  30. package/dist/cjs/xcs/index.js +8 -0
  31. package/dist/cjs/xcs/lifi-agg.js +104 -0
  32. package/dist/cjs/xcs/yieldyak-agg.js +113 -0
  33. package/dist/esm/balances/ub-api.js +21 -0
  34. package/dist/esm/cosmos/index.js +26 -0
  35. package/dist/esm/data/chaindata.js +677 -0
  36. package/dist/esm/data/chainid.js +85 -0
  37. package/dist/esm/data/currency.js +72 -0
  38. package/dist/esm/data/index.js +4 -0
  39. package/dist/esm/data/utils.js +34 -0
  40. package/dist/esm/evmabi/erc20.abi.js +346 -0
  41. package/dist/esm/evmabi/index.js +3 -0
  42. package/dist/esm/evmabi/vault.abi.js +1018 -0
  43. package/dist/esm/evmabi/yakaggregator.abi.js +272 -0
  44. package/dist/esm/fuelcontracts/ArcanaVault.js +2402 -0
  45. package/dist/esm/fuelcontracts/ArcanaVaultFactory.js +14 -0
  46. package/dist/esm/fuelcontracts/common.js +2 -0
  47. package/dist/esm/fuelcontracts/index.js +2 -0
  48. package/dist/esm/index.js +12 -0
  49. package/dist/esm/permitutils/index.js +181 -0
  50. package/dist/esm/proto/definition.js +4255 -0
  51. package/dist/esm/proto/grpc.js +297 -0
  52. package/dist/esm/rff/fuel.js +23 -0
  53. package/dist/esm/rff/rff.js +73 -0
  54. package/dist/esm/types/binarytypes.js +1 -0
  55. package/dist/esm/types/index.js +2 -0
  56. package/dist/esm/types/msgpack-axios.js +18 -0
  57. package/dist/esm/vaultcontracts/index.js +1 -0
  58. package/dist/esm/vaultcontracts/vaultcontracts.js +141 -0
  59. package/dist/esm/xcs/autochoice.js +364 -0
  60. package/dist/esm/xcs/bebop-agg.js +123 -0
  61. package/dist/esm/xcs/iface.js +10 -0
  62. package/dist/esm/xcs/index.js +5 -0
  63. package/dist/esm/xcs/lifi-agg.js +99 -0
  64. package/dist/esm/xcs/yieldyak-agg.js +109 -0
  65. package/dist/types/balances/ub-api.d.ts +14 -0
  66. package/dist/types/cosmos/index.d.ts +6 -0
  67. package/dist/types/data/chaindata.d.ts +20 -0
  68. package/dist/types/data/chainid.d.ts +31 -0
  69. package/dist/types/data/currency.d.ts +29 -0
  70. package/dist/types/data/index.d.ts +4 -0
  71. package/dist/types/data/utils.d.ts +10 -0
  72. package/dist/types/evmabi/erc20.abi.d.ts +264 -0
  73. package/dist/types/evmabi/index.d.ts +3 -0
  74. package/dist/types/evmabi/vault.abi.d.ts +785 -0
  75. package/dist/types/evmabi/yakaggregator.abi.d.ts +298 -0
  76. package/dist/types/fuelcontracts/ArcanaVault.d.ts +448 -0
  77. package/dist/types/fuelcontracts/ArcanaVaultFactory.d.ts +8 -0
  78. package/dist/types/fuelcontracts/common.d.ts +23 -0
  79. package/dist/types/fuelcontracts/index.d.ts +2 -0
  80. package/dist/types/index.d.ts +12 -0
  81. package/dist/types/permitutils/index.d.ts +13 -0
  82. package/dist/types/proto/definition.d.ts +373 -0
  83. package/dist/types/proto/grpc.d.ts +75 -0
  84. package/dist/types/rff/fuel.d.ts +4 -0
  85. package/dist/types/rff/rff.d.ts +12 -0
  86. package/dist/types/types/binarytypes.d.ts +1 -0
  87. package/dist/types/types/index.d.ts +2 -0
  88. package/dist/types/types/msgpack-axios.d.ts +1 -0
  89. package/dist/types/vaultcontracts/index.d.ts +22 -0
  90. package/dist/types/vaultcontracts/vaultcontracts.d.ts +8 -0
  91. package/dist/types/xcs/autochoice.d.ts +57 -0
  92. package/dist/types/xcs/bebop-agg.d.ts +104 -0
  93. package/dist/types/xcs/iface.d.ts +36 -0
  94. package/dist/types/xcs/index.d.ts +5 -0
  95. package/dist/types/xcs/lifi-agg.d.ts +35 -0
  96. package/dist/types/xcs/yieldyak-agg.d.ts +21 -0
  97. package/package.json +63 -0
@@ -0,0 +1,448 @@
1
+ import type { Account, Address, BigNumberish, BN, FunctionFragment, InvokeFunction, Provider, StorageSlot } from "fuels";
2
+ import { Contract, Interface } from "fuels";
3
+ import type { Enum, Option, Vec } from "./common";
4
+ export declare enum AccessErrorInput {
5
+ NotOwner = "NotOwner"
6
+ }
7
+ export declare enum AccessErrorOutput {
8
+ NotOwner = "NotOwner"
9
+ }
10
+ export type IdentityInput = Enum<{
11
+ Address: AddressInput;
12
+ ContractId: ContractIdInput;
13
+ }>;
14
+ export type IdentityOutput = Enum<{
15
+ Address: AddressOutput;
16
+ ContractId: ContractIdOutput;
17
+ }>;
18
+ export declare enum InitializationErrorInput {
19
+ CannotReinitialized = "CannotReinitialized"
20
+ }
21
+ export declare enum InitializationErrorOutput {
22
+ CannotReinitialized = "CannotReinitialized"
23
+ }
24
+ export declare enum ReentrancyErrorInput {
25
+ NonReentrant = "NonReentrant"
26
+ }
27
+ export declare enum ReentrancyErrorOutput {
28
+ NonReentrant = "NonReentrant"
29
+ }
30
+ export declare enum RoleAccessErrorInput {
31
+ NotSettlementVerifier = "NotSettlementVerifier",
32
+ NotRefundEligible = "NotRefundEligible"
33
+ }
34
+ export declare enum RoleAccessErrorOutput {
35
+ NotSettlementVerifier = "NotSettlementVerifier",
36
+ NotRefundEligible = "NotRefundEligible"
37
+ }
38
+ export type StateInput = Enum<{
39
+ Uninitialized: undefined;
40
+ Initialized: IdentityInput;
41
+ Revoked: undefined;
42
+ }>;
43
+ export type StateOutput = Enum<{
44
+ Uninitialized: void;
45
+ Initialized: IdentityOutput;
46
+ Revoked: void;
47
+ }>;
48
+ export declare enum UniverseInput {
49
+ ETHEREUM = "ETHEREUM",
50
+ FUEL = "FUEL",
51
+ SOLANA = "SOLANA"
52
+ }
53
+ export declare enum UniverseOutput {
54
+ ETHEREUM = "ETHEREUM",
55
+ FUEL = "FUEL",
56
+ SOLANA = "SOLANA"
57
+ }
58
+ export type VaultErrorInput = Enum<{
59
+ AssetMismatch: undefined;
60
+ ChainIdMismatch: undefined;
61
+ DestinationPairsNotFilled: Vec<DestinationPairInput>;
62
+ InvalidFillOutputs: undefined;
63
+ InvalidSignature: undefined;
64
+ NonceAlreadyUsed: undefined;
65
+ RequestExpired: undefined;
66
+ RequestUnverified: undefined;
67
+ SolversAndAmountsLengthMismatch: undefined;
68
+ SolversAndAssetsLengthMismatch: undefined;
69
+ ValueMismatch: undefined;
70
+ AddressNotFound: undefined;
71
+ }>;
72
+ export type VaultErrorOutput = Enum<{
73
+ AssetMismatch: void;
74
+ ChainIdMismatch: void;
75
+ DestinationPairsNotFilled: Vec<DestinationPairOutput>;
76
+ InvalidFillOutputs: void;
77
+ InvalidSignature: void;
78
+ NonceAlreadyUsed: void;
79
+ RequestExpired: void;
80
+ RequestUnverified: void;
81
+ SolversAndAmountsLengthMismatch: void;
82
+ SolversAndAssetsLengthMismatch: void;
83
+ ValueMismatch: void;
84
+ AddressNotFound: void;
85
+ }>;
86
+ export type AddressInput = {
87
+ bits: string;
88
+ };
89
+ export type AddressOutput = AddressInput;
90
+ export type AssetIdInput = {
91
+ bits: string;
92
+ };
93
+ export type AssetIdOutput = AssetIdInput;
94
+ export type ContractIdInput = {
95
+ bits: string;
96
+ };
97
+ export type ContractIdOutput = ContractIdInput;
98
+ export type DepositInput = {
99
+ from: AddressInput;
100
+ signed_message_hash: string;
101
+ };
102
+ export type DepositOutput = {
103
+ from: AddressOutput;
104
+ signed_message_hash: string;
105
+ };
106
+ export type DestinationPairInput = {
107
+ asset_id: AssetIdInput;
108
+ value: BigNumberish;
109
+ };
110
+ export type DestinationPairOutput = {
111
+ asset_id: AssetIdOutput;
112
+ value: BN;
113
+ };
114
+ export type FillInput = {
115
+ from: AddressInput;
116
+ signed_message_hash: string;
117
+ solver: AddressInput;
118
+ };
119
+ export type FillOutput = {
120
+ from: AddressOutput;
121
+ signed_message_hash: string;
122
+ solver: AddressOutput;
123
+ };
124
+ export type OwnershipRenouncedInput = {
125
+ previous_owner: IdentityInput;
126
+ };
127
+ export type OwnershipRenouncedOutput = {
128
+ previous_owner: IdentityOutput;
129
+ };
130
+ export type OwnershipSetInput = {
131
+ new_owner: IdentityInput;
132
+ };
133
+ export type OwnershipSetOutput = {
134
+ new_owner: IdentityOutput;
135
+ };
136
+ export type OwnershipTransferredInput = {
137
+ new_owner: IdentityInput;
138
+ previous_owner: IdentityInput;
139
+ };
140
+ export type OwnershipTransferredOutput = {
141
+ new_owner: IdentityOutput;
142
+ previous_owner: IdentityOutput;
143
+ };
144
+ export type PartyInput = {
145
+ universe: UniverseInput;
146
+ address: AddressInput;
147
+ };
148
+ export type PartyOutput = {
149
+ universe: UniverseOutput;
150
+ address: AddressOutput;
151
+ };
152
+ export type RefundEligibleRoleSetInput = {
153
+ identity: IdentityInput;
154
+ has_role: boolean;
155
+ };
156
+ export type RefundEligibleRoleSetOutput = {
157
+ identity: IdentityOutput;
158
+ has_role: boolean;
159
+ };
160
+ export type RefundEligibleRoleTransferInput = {
161
+ old_identity: IdentityInput;
162
+ new_identity: IdentityInput;
163
+ };
164
+ export type RefundEligibleRoleTransferOutput = {
165
+ old_identity: IdentityOutput;
166
+ new_identity: IdentityOutput;
167
+ };
168
+ export type RequestInput = {
169
+ sources: Vec<SourcePairInput>;
170
+ destination_universe: UniverseInput;
171
+ destination_chain_id: BigNumberish;
172
+ destinations: Vec<DestinationPairInput>;
173
+ nonce: BigNumberish;
174
+ expiry: BigNumberish;
175
+ parties: Vec<PartyInput>;
176
+ };
177
+ export type RequestOutput = {
178
+ sources: Vec<SourcePairOutput>;
179
+ destination_universe: UniverseOutput;
180
+ destination_chain_id: BN;
181
+ destinations: Vec<DestinationPairOutput>;
182
+ nonce: BN;
183
+ expiry: BN;
184
+ parties: Vec<PartyOutput>;
185
+ };
186
+ export type SettleInput = {
187
+ solver: AddressInput;
188
+ asset_id: AssetIdInput;
189
+ amount: BigNumberish;
190
+ nonce: BigNumberish;
191
+ };
192
+ export type SettleOutput = {
193
+ solver: AddressOutput;
194
+ asset_id: AssetIdOutput;
195
+ amount: BN;
196
+ nonce: BN;
197
+ };
198
+ export type SettleDataInput = {
199
+ universe: UniverseInput;
200
+ chain_id: BigNumberish;
201
+ solvers: Vec<AddressInput>;
202
+ assets: Vec<AssetIdInput>;
203
+ amounts: Vec<BigNumberish>;
204
+ nonce: BigNumberish;
205
+ };
206
+ export type SettleDataOutput = {
207
+ universe: UniverseOutput;
208
+ chain_id: BN;
209
+ solvers: Vec<AddressOutput>;
210
+ assets: Vec<AssetIdOutput>;
211
+ amounts: Vec<BN>;
212
+ nonce: BN;
213
+ };
214
+ export type SettlementVerifierRoleSetInput = {
215
+ identity: IdentityInput;
216
+ has_role: boolean;
217
+ };
218
+ export type SettlementVerifierRoleSetOutput = {
219
+ identity: IdentityOutput;
220
+ has_role: boolean;
221
+ };
222
+ export type SettlementVerifierRoleTransferInput = {
223
+ old_identity: IdentityInput;
224
+ new_identity: IdentityInput;
225
+ };
226
+ export type SettlementVerifierRoleTransferOutput = {
227
+ old_identity: IdentityOutput;
228
+ new_identity: IdentityOutput;
229
+ };
230
+ export type SourcePairInput = {
231
+ universe: UniverseInput;
232
+ chain_id: BigNumberish;
233
+ asset_id: AssetIdInput;
234
+ value: BigNumberish;
235
+ };
236
+ export type SourcePairOutput = {
237
+ universe: UniverseOutput;
238
+ chain_id: BN;
239
+ asset_id: AssetIdOutput;
240
+ value: BN;
241
+ };
242
+ export type WithdrawInput = {
243
+ to: IdentityInput;
244
+ asset_id: AssetIdInput;
245
+ amount: BigNumberish;
246
+ };
247
+ export type WithdrawOutput = {
248
+ to: IdentityOutput;
249
+ asset_id: AssetIdOutput;
250
+ amount: BN;
251
+ };
252
+ export type ArcanaVaultConfigurables = Partial<{
253
+ INITIAL_OWNER: IdentityInput;
254
+ FUEL_IGNITION_CHAIN_ID: BigNumberish;
255
+ }>;
256
+ export declare class ArcanaVaultInterface extends Interface {
257
+ functions: {
258
+ owner: FunctionFragment;
259
+ deposit: FunctionFragment;
260
+ deposit_nonce: FunctionFragment;
261
+ fill: FunctionFragment;
262
+ fill_nonce: FunctionFragment;
263
+ hash_request: FunctionFragment;
264
+ hash_settle_data: FunctionFragment;
265
+ initialize_vault: FunctionFragment;
266
+ refund_eligible_role: FunctionFragment;
267
+ renounce_ownership: FunctionFragment;
268
+ requests: FunctionFragment;
269
+ set_refund_eligible_role: FunctionFragment;
270
+ set_settlement_verifier_role: FunctionFragment;
271
+ settle: FunctionFragment;
272
+ settle_nonce: FunctionFragment;
273
+ settlement_verifier_role: FunctionFragment;
274
+ transfer_ownership: FunctionFragment;
275
+ transfer_refund_eligible_role: FunctionFragment;
276
+ transfer_settlement_verifier_role: FunctionFragment;
277
+ verify_request_signature: FunctionFragment;
278
+ withdraw: FunctionFragment;
279
+ };
280
+ constructor();
281
+ }
282
+ export declare class ArcanaVault extends Contract {
283
+ static readonly abi: {
284
+ programType: string;
285
+ specVersion: string;
286
+ encodingVersion: string;
287
+ concreteTypes: ({
288
+ type: string;
289
+ concreteTypeId: string;
290
+ metadataTypeId?: undefined;
291
+ typeArguments?: undefined;
292
+ } | {
293
+ type: string;
294
+ concreteTypeId: string;
295
+ metadataTypeId: number;
296
+ typeArguments?: undefined;
297
+ } | {
298
+ type: string;
299
+ concreteTypeId: string;
300
+ metadataTypeId: number;
301
+ typeArguments: string[];
302
+ })[];
303
+ metadataTypes: ({
304
+ type: string;
305
+ metadataTypeId: number;
306
+ components: ({
307
+ name: string;
308
+ typeId: string;
309
+ } | {
310
+ name: string;
311
+ typeId: number;
312
+ })[];
313
+ typeParameters: number[];
314
+ } | {
315
+ type: string;
316
+ metadataTypeId: number;
317
+ components?: undefined;
318
+ typeParameters?: undefined;
319
+ } | {
320
+ type: string;
321
+ metadataTypeId: number;
322
+ components: ({
323
+ name: string;
324
+ typeId: number;
325
+ typeArguments?: undefined;
326
+ } | {
327
+ name: string;
328
+ typeId: string;
329
+ typeArguments?: undefined;
330
+ } | {
331
+ name: string;
332
+ typeId: number;
333
+ typeArguments: {
334
+ name: string;
335
+ typeId: number;
336
+ }[];
337
+ } | {
338
+ name: string;
339
+ typeId: number;
340
+ typeArguments: {
341
+ name: string;
342
+ typeId: string;
343
+ }[];
344
+ })[];
345
+ typeParameters?: undefined;
346
+ } | {
347
+ type: string;
348
+ metadataTypeId: number;
349
+ components: ({
350
+ name: string;
351
+ typeId: number;
352
+ typeArguments: {
353
+ name: string;
354
+ typeId: number;
355
+ }[];
356
+ } | {
357
+ name: string;
358
+ typeId: string;
359
+ typeArguments?: undefined;
360
+ })[];
361
+ typeParameters: number[];
362
+ })[];
363
+ functions: ({
364
+ inputs: {
365
+ name: string;
366
+ concreteTypeId: string;
367
+ }[];
368
+ name: string;
369
+ output: string;
370
+ attributes: {
371
+ name: string;
372
+ arguments: string[];
373
+ }[];
374
+ } | {
375
+ inputs: {
376
+ name: string;
377
+ concreteTypeId: string;
378
+ }[];
379
+ name: string;
380
+ output: string;
381
+ attributes: null;
382
+ })[];
383
+ loggedTypes: {
384
+ logId: string;
385
+ concreteTypeId: string;
386
+ }[];
387
+ messagesTypes: never[];
388
+ configurables: {
389
+ name: string;
390
+ concreteTypeId: string;
391
+ offset: number;
392
+ }[];
393
+ };
394
+ static readonly storageSlots: StorageSlot[];
395
+ interface: ArcanaVaultInterface;
396
+ functions: {
397
+ owner: InvokeFunction<[], StateOutput>;
398
+ deposit: InvokeFunction<[
399
+ request: RequestInput,
400
+ signature: string,
401
+ chain_index: BigNumberish
402
+ ], void>;
403
+ deposit_nonce: InvokeFunction<[nonce: BigNumberish], Option<boolean>>;
404
+ fill: InvokeFunction<[request: RequestInput, signature: string], void>;
405
+ fill_nonce: InvokeFunction<[nonce: BigNumberish], Option<boolean>>;
406
+ hash_request: InvokeFunction<[request: RequestInput], string>;
407
+ hash_settle_data: InvokeFunction<[settle_data: SettleDataInput], string>;
408
+ initialize_vault: InvokeFunction<[], void>;
409
+ refund_eligible_role: InvokeFunction<[identity: IdentityInput], boolean>;
410
+ renounce_ownership: InvokeFunction<[], void>;
411
+ requests: InvokeFunction<[
412
+ signed_message_hash: string
413
+ ], Option<RequestOutput>>;
414
+ set_refund_eligible_role: InvokeFunction<[
415
+ identity: IdentityInput,
416
+ has_role: boolean
417
+ ], void>;
418
+ set_settlement_verifier_role: InvokeFunction<[
419
+ identity: IdentityInput,
420
+ has_role: boolean
421
+ ], void>;
422
+ settle: InvokeFunction<[
423
+ settle_data: SettleDataInput,
424
+ signature: string
425
+ ], void>;
426
+ settle_nonce: InvokeFunction<[nonce: BigNumberish], Option<boolean>>;
427
+ settlement_verifier_role: InvokeFunction<[
428
+ identity: IdentityInput
429
+ ], boolean>;
430
+ transfer_ownership: InvokeFunction<[new_owner: IdentityInput], void>;
431
+ transfer_refund_eligible_role: InvokeFunction<[
432
+ new_identity: IdentityInput
433
+ ], void>;
434
+ transfer_settlement_verifier_role: InvokeFunction<[
435
+ new_identity: IdentityInput
436
+ ], void>;
437
+ verify_request_signature: InvokeFunction<[
438
+ request: RequestInput,
439
+ signature: string
440
+ ], string>;
441
+ withdraw: InvokeFunction<[
442
+ to: IdentityInput,
443
+ asset_id: AssetIdInput,
444
+ amount: BigNumberish
445
+ ], void>;
446
+ };
447
+ constructor(id: string | Address, accountOrProvider: Account | Provider);
448
+ }
@@ -0,0 +1,8 @@
1
+ import type { Account, DeployContractOptions, Provider } from "fuels";
2
+ import { ContractFactory } from "fuels";
3
+ import { ArcanaVault } from "./ArcanaVault";
4
+ export declare class ArcanaVaultFactory extends ContractFactory<ArcanaVault> {
5
+ static readonly bytecode: Uint8Array<ArrayBufferLike>;
6
+ constructor(accountOrProvider: Account | Provider);
7
+ static deploy(wallet: Account, options?: DeployContractOptions): Promise<import("fuels").DeployContractResult<ArcanaVault>>;
8
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Mimics Sway Enum.
3
+ * Requires one and only one Key-Value pair and raises error if more are provided.
4
+ */
5
+ export type Enum<T> = {
6
+ [K in keyof T]: Pick<T, K> & {
7
+ [P in Exclude<keyof T, K>]?: never;
8
+ };
9
+ }[keyof T];
10
+ /**
11
+ * Mimics Sway Option and Vectors.
12
+ * Vectors are treated like arrays in Typescript.
13
+ */
14
+ export type Option<T> = T | undefined;
15
+ export type Vec<T> = T[];
16
+ /**
17
+ * Mimics Sway Result enum type.
18
+ * Ok represents the success case, while Err represents the error case.
19
+ */
20
+ export type Result<T, E> = Enum<{
21
+ Ok: T;
22
+ Err: E;
23
+ }>;
@@ -0,0 +1,2 @@
1
+ export * from './ArcanaVault';
2
+ export * from './ArcanaVaultFactory';
@@ -0,0 +1,12 @@
1
+ export { ArcanaVault, ArcanaVaultFactory } from './fuelcontracts';
2
+ export * from './proto/definition';
3
+ export { QueryClientImpl, Query, GrpcWebError, GrpcWebImpl } from './proto/grpc';
4
+ export * from './data';
5
+ export * from './vaultcontracts';
6
+ export * from './permitutils';
7
+ export * from './xcs';
8
+ export * from './cosmos';
9
+ export * from './rff/rff';
10
+ export * from './types';
11
+ export * from './balances/ub-api';
12
+ export * from './evmabi';
@@ -0,0 +1,13 @@
1
+ import { Account, Address, GetContractReturnType, Hex, WalletClient } from "viem";
2
+ import { Currency } from "../data";
3
+ import { ERC20ABI } from "../evmabi";
4
+ export declare enum PermitVariant {
5
+ Unsupported = 0,
6
+ EIP2612Canonical = 1,
7
+ DAI = 2,
8
+ Polygon2612 = 3,
9
+ PolygonEMT = 4
10
+ }
11
+ export declare class PermitCreationError extends Error {
12
+ }
13
+ export declare function signPermitForAddressAndValue(cur: Currency, client: WalletClient, account: Account, spender: Address, value: bigint, contract?: GetContractReturnType<typeof ERC20ABI, WalletClient, Hex>, deadline?: bigint): Promise<`0x${string}`>;