@optimex-xyz/market-maker-sdk 0.0.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.
@@ -0,0 +1,4813 @@
1
+ import { DeferredTopicFilter, EventFragment, EventLog, TransactionRequest, Typed, ContractTransactionResponse, FunctionFragment, ContractTransaction, LogDescription, BaseContract, ContractRunner, Interface, AddressLike, BigNumberish, BytesLike, Result, Listener, ContractMethod, Provider, Signer as Signer$1, Wallet, TypedDataDomain } from 'ethers';
2
+ import { z } from 'zod';
3
+
4
+ type Environment = 'dev' | 'production';
5
+ interface EnvironmentConfig {
6
+ solverUrl: string;
7
+ backendUrl: string;
8
+ rpcUrl: string;
9
+ routerAddress: string;
10
+ paymentAddressMap: Record<string, string>;
11
+ }
12
+ interface AppConfig extends EnvironmentConfig {
13
+ env: Environment;
14
+ }
15
+ declare class Config {
16
+ private readonly env;
17
+ private readonly config;
18
+ constructor();
19
+ get(): AppConfig;
20
+ getSolverUrl(): string;
21
+ getBackendUrl(): string;
22
+ getRpcUrl(): string;
23
+ getRouterAddress(): string;
24
+ getPaymentAddress(networkId: string): string | undefined;
25
+ }
26
+ declare const config: Config;
27
+
28
+ interface TypedDeferredTopicFilter<_TCEvent extends TypedContractEvent> extends DeferredTopicFilter {
29
+ }
30
+ interface TypedContractEvent<InputTuple extends Array<any> = any, OutputTuple extends Array<any> = any, OutputObject = any> {
31
+ (...args: Partial<InputTuple>): TypedDeferredTopicFilter<TypedContractEvent<InputTuple, OutputTuple, OutputObject>>;
32
+ name: string;
33
+ fragment: EventFragment;
34
+ getFragment(...args: Partial<InputTuple>): EventFragment;
35
+ }
36
+ type __TypechainAOutputTuple<T> = T extends TypedContractEvent<infer _U, infer W> ? W : never;
37
+ type __TypechainOutputObject<T> = T extends TypedContractEvent<infer _U, infer _W, infer V> ? V : never;
38
+ interface TypedEventLog<TCEvent extends TypedContractEvent> extends Omit<EventLog, "args"> {
39
+ args: __TypechainAOutputTuple<TCEvent> & __TypechainOutputObject<TCEvent>;
40
+ }
41
+ interface TypedLogDescription<TCEvent extends TypedContractEvent> extends Omit<LogDescription, "args"> {
42
+ args: __TypechainAOutputTuple<TCEvent> & __TypechainOutputObject<TCEvent>;
43
+ }
44
+ type TypedListener<TCEvent extends TypedContractEvent> = (...listenerArg: [
45
+ ...__TypechainAOutputTuple<TCEvent>,
46
+ TypedEventLog<TCEvent>,
47
+ ...undefined[]
48
+ ]) => void;
49
+ type StateMutability = "nonpayable" | "payable" | "view";
50
+ type BaseOverrides = Omit<TransactionRequest, "to" | "data">;
51
+ type NonPayableOverrides = Omit<BaseOverrides, "value" | "blockTag" | "enableCcipRead">;
52
+ type PayableOverrides = Omit<BaseOverrides, "blockTag" | "enableCcipRead">;
53
+ type ViewOverrides = Omit<TransactionRequest, "to" | "data">;
54
+ type Overrides<S extends StateMutability> = S extends "nonpayable" ? NonPayableOverrides : S extends "payable" ? PayableOverrides : ViewOverrides;
55
+ type PostfixOverrides<A extends Array<any>, S extends StateMutability> = A | [...A, Overrides<S>];
56
+ type ContractMethodArgs<A extends Array<any>, S extends StateMutability> = PostfixOverrides<{
57
+ [I in keyof A]-?: A[I] | Typed;
58
+ }, S>;
59
+ type DefaultReturnType<R> = R extends Array<any> ? R[0] : R;
60
+ interface TypedContractMethod<A extends Array<any> = Array<any>, R = any, S extends StateMutability = "payable"> {
61
+ (...args: ContractMethodArgs<A, S>): S extends "view" ? Promise<DefaultReturnType<R>> : Promise<ContractTransactionResponse>;
62
+ name: string;
63
+ fragment: FunctionFragment;
64
+ getFragment(...args: ContractMethodArgs<A, S>): FunctionFragment;
65
+ populateTransaction(...args: ContractMethodArgs<A, S>): Promise<ContractTransaction>;
66
+ staticCall(...args: ContractMethodArgs<A, "view">): Promise<DefaultReturnType<R>>;
67
+ send(...args: ContractMethodArgs<A, S>): Promise<ContractTransactionResponse>;
68
+ estimateGas(...args: ContractMethodArgs<A, S>): Promise<bigint>;
69
+ staticCallResult(...args: ContractMethodArgs<A, "view">): Promise<R>;
70
+ }
71
+
72
+ interface ERC20Interface extends Interface {
73
+ getFunction(nameOrSignature: "CANCEL_AUTHORIZATION_TYPEHASH" | "DOMAIN_SEPARATOR" | "PERMIT_TYPEHASH" | "RECEIVE_WITH_AUTHORIZATION_TYPEHASH" | "TRANSFER_WITH_AUTHORIZATION_TYPEHASH" | "allowance" | "approve" | "authorizationState" | "balanceOf" | "blacklist" | "blacklister" | "burn" | "cancelAuthorization(address,bytes32,uint8,bytes32,bytes32)" | "cancelAuthorization(address,bytes32,bytes)" | "configureMinter" | "currency" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "initialize" | "initializeV2" | "initializeV2_1" | "initializeV2_2" | "isBlacklisted" | "isMinter" | "masterMinter" | "mint" | "minterAllowance" | "name" | "nonces" | "owner" | "pause" | "paused" | "pauser" | "permit(address,address,uint256,uint256,bytes)" | "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)" | "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)" | "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)" | "removeMinter" | "rescueERC20" | "rescuer" | "symbol" | "totalSupply" | "transfer" | "transferFrom" | "transferOwnership" | "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)" | "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)" | "unBlacklist" | "unpause" | "updateBlacklister" | "updateMasterMinter" | "updatePauser" | "updateRescuer" | "version"): FunctionFragment;
74
+ getEvent(nameOrSignatureOrTopic: "Approval" | "AuthorizationCanceled" | "AuthorizationUsed" | "Blacklisted" | "BlacklisterChanged" | "Burn" | "MasterMinterChanged" | "Mint" | "MinterConfigured" | "MinterRemoved" | "OwnershipTransferred" | "Pause" | "PauserChanged" | "RescuerChanged" | "Transfer" | "UnBlacklisted" | "Unpause"): EventFragment;
75
+ encodeFunctionData(functionFragment: "CANCEL_AUTHORIZATION_TYPEHASH", values?: undefined): string;
76
+ encodeFunctionData(functionFragment: "DOMAIN_SEPARATOR", values?: undefined): string;
77
+ encodeFunctionData(functionFragment: "PERMIT_TYPEHASH", values?: undefined): string;
78
+ encodeFunctionData(functionFragment: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH", values?: undefined): string;
79
+ encodeFunctionData(functionFragment: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH", values?: undefined): string;
80
+ encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string;
81
+ encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string;
82
+ encodeFunctionData(functionFragment: "authorizationState", values: [AddressLike, BytesLike]): string;
83
+ encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string;
84
+ encodeFunctionData(functionFragment: "blacklist", values: [AddressLike]): string;
85
+ encodeFunctionData(functionFragment: "blacklister", values?: undefined): string;
86
+ encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string;
87
+ encodeFunctionData(functionFragment: "cancelAuthorization(address,bytes32,uint8,bytes32,bytes32)", values: [AddressLike, BytesLike, BigNumberish, BytesLike, BytesLike]): string;
88
+ encodeFunctionData(functionFragment: "cancelAuthorization(address,bytes32,bytes)", values: [AddressLike, BytesLike, BytesLike]): string;
89
+ encodeFunctionData(functionFragment: "configureMinter", values: [AddressLike, BigNumberish]): string;
90
+ encodeFunctionData(functionFragment: "currency", values?: undefined): string;
91
+ encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
92
+ encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string;
93
+ encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string;
94
+ encodeFunctionData(functionFragment: "initialize", values: [
95
+ string,
96
+ string,
97
+ string,
98
+ BigNumberish,
99
+ AddressLike,
100
+ AddressLike,
101
+ AddressLike,
102
+ AddressLike
103
+ ]): string;
104
+ encodeFunctionData(functionFragment: "initializeV2", values: [string]): string;
105
+ encodeFunctionData(functionFragment: "initializeV2_1", values: [AddressLike]): string;
106
+ encodeFunctionData(functionFragment: "initializeV2_2", values: [AddressLike[], string]): string;
107
+ encodeFunctionData(functionFragment: "isBlacklisted", values: [AddressLike]): string;
108
+ encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string;
109
+ encodeFunctionData(functionFragment: "masterMinter", values?: undefined): string;
110
+ encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string;
111
+ encodeFunctionData(functionFragment: "minterAllowance", values: [AddressLike]): string;
112
+ encodeFunctionData(functionFragment: "name", values?: undefined): string;
113
+ encodeFunctionData(functionFragment: "nonces", values: [AddressLike]): string;
114
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
115
+ encodeFunctionData(functionFragment: "pause", values?: undefined): string;
116
+ encodeFunctionData(functionFragment: "paused", values?: undefined): string;
117
+ encodeFunctionData(functionFragment: "pauser", values?: undefined): string;
118
+ encodeFunctionData(functionFragment: "permit(address,address,uint256,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string;
119
+ encodeFunctionData(functionFragment: "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)", values: [
120
+ AddressLike,
121
+ AddressLike,
122
+ BigNumberish,
123
+ BigNumberish,
124
+ BigNumberish,
125
+ BytesLike,
126
+ BytesLike
127
+ ]): string;
128
+ encodeFunctionData(functionFragment: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)", values: [
129
+ AddressLike,
130
+ AddressLike,
131
+ BigNumberish,
132
+ BigNumberish,
133
+ BigNumberish,
134
+ BytesLike,
135
+ BytesLike
136
+ ]): string;
137
+ encodeFunctionData(functionFragment: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)", values: [
138
+ AddressLike,
139
+ AddressLike,
140
+ BigNumberish,
141
+ BigNumberish,
142
+ BigNumberish,
143
+ BytesLike,
144
+ BigNumberish,
145
+ BytesLike,
146
+ BytesLike
147
+ ]): string;
148
+ encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string;
149
+ encodeFunctionData(functionFragment: "rescueERC20", values: [AddressLike, AddressLike, BigNumberish]): string;
150
+ encodeFunctionData(functionFragment: "rescuer", values?: undefined): string;
151
+ encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
152
+ encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
153
+ encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string;
154
+ encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string;
155
+ encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string;
156
+ encodeFunctionData(functionFragment: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)", values: [
157
+ AddressLike,
158
+ AddressLike,
159
+ BigNumberish,
160
+ BigNumberish,
161
+ BigNumberish,
162
+ BytesLike,
163
+ BytesLike
164
+ ]): string;
165
+ encodeFunctionData(functionFragment: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)", values: [
166
+ AddressLike,
167
+ AddressLike,
168
+ BigNumberish,
169
+ BigNumberish,
170
+ BigNumberish,
171
+ BytesLike,
172
+ BigNumberish,
173
+ BytesLike,
174
+ BytesLike
175
+ ]): string;
176
+ encodeFunctionData(functionFragment: "unBlacklist", values: [AddressLike]): string;
177
+ encodeFunctionData(functionFragment: "unpause", values?: undefined): string;
178
+ encodeFunctionData(functionFragment: "updateBlacklister", values: [AddressLike]): string;
179
+ encodeFunctionData(functionFragment: "updateMasterMinter", values: [AddressLike]): string;
180
+ encodeFunctionData(functionFragment: "updatePauser", values: [AddressLike]): string;
181
+ encodeFunctionData(functionFragment: "updateRescuer", values: [AddressLike]): string;
182
+ encodeFunctionData(functionFragment: "version", values?: undefined): string;
183
+ decodeFunctionResult(functionFragment: "CANCEL_AUTHORIZATION_TYPEHASH", data: BytesLike): Result;
184
+ decodeFunctionResult(functionFragment: "DOMAIN_SEPARATOR", data: BytesLike): Result;
185
+ decodeFunctionResult(functionFragment: "PERMIT_TYPEHASH", data: BytesLike): Result;
186
+ decodeFunctionResult(functionFragment: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH", data: BytesLike): Result;
187
+ decodeFunctionResult(functionFragment: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH", data: BytesLike): Result;
188
+ decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
189
+ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
190
+ decodeFunctionResult(functionFragment: "authorizationState", data: BytesLike): Result;
191
+ decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
192
+ decodeFunctionResult(functionFragment: "blacklist", data: BytesLike): Result;
193
+ decodeFunctionResult(functionFragment: "blacklister", data: BytesLike): Result;
194
+ decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result;
195
+ decodeFunctionResult(functionFragment: "cancelAuthorization(address,bytes32,uint8,bytes32,bytes32)", data: BytesLike): Result;
196
+ decodeFunctionResult(functionFragment: "cancelAuthorization(address,bytes32,bytes)", data: BytesLike): Result;
197
+ decodeFunctionResult(functionFragment: "configureMinter", data: BytesLike): Result;
198
+ decodeFunctionResult(functionFragment: "currency", data: BytesLike): Result;
199
+ decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
200
+ decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result;
201
+ decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result;
202
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
203
+ decodeFunctionResult(functionFragment: "initializeV2", data: BytesLike): Result;
204
+ decodeFunctionResult(functionFragment: "initializeV2_1", data: BytesLike): Result;
205
+ decodeFunctionResult(functionFragment: "initializeV2_2", data: BytesLike): Result;
206
+ decodeFunctionResult(functionFragment: "isBlacklisted", data: BytesLike): Result;
207
+ decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result;
208
+ decodeFunctionResult(functionFragment: "masterMinter", data: BytesLike): Result;
209
+ decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
210
+ decodeFunctionResult(functionFragment: "minterAllowance", data: BytesLike): Result;
211
+ decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
212
+ decodeFunctionResult(functionFragment: "nonces", data: BytesLike): Result;
213
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
214
+ decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result;
215
+ decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result;
216
+ decodeFunctionResult(functionFragment: "pauser", data: BytesLike): Result;
217
+ decodeFunctionResult(functionFragment: "permit(address,address,uint256,uint256,bytes)", data: BytesLike): Result;
218
+ decodeFunctionResult(functionFragment: "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)", data: BytesLike): Result;
219
+ decodeFunctionResult(functionFragment: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)", data: BytesLike): Result;
220
+ decodeFunctionResult(functionFragment: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)", data: BytesLike): Result;
221
+ decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result;
222
+ decodeFunctionResult(functionFragment: "rescueERC20", data: BytesLike): Result;
223
+ decodeFunctionResult(functionFragment: "rescuer", data: BytesLike): Result;
224
+ decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
225
+ decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result;
226
+ decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
227
+ decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
228
+ decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result;
229
+ decodeFunctionResult(functionFragment: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)", data: BytesLike): Result;
230
+ decodeFunctionResult(functionFragment: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)", data: BytesLike): Result;
231
+ decodeFunctionResult(functionFragment: "unBlacklist", data: BytesLike): Result;
232
+ decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result;
233
+ decodeFunctionResult(functionFragment: "updateBlacklister", data: BytesLike): Result;
234
+ decodeFunctionResult(functionFragment: "updateMasterMinter", data: BytesLike): Result;
235
+ decodeFunctionResult(functionFragment: "updatePauser", data: BytesLike): Result;
236
+ decodeFunctionResult(functionFragment: "updateRescuer", data: BytesLike): Result;
237
+ decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
238
+ }
239
+ declare namespace ApprovalEvent {
240
+ type InputTuple = [
241
+ owner: AddressLike,
242
+ spender: AddressLike,
243
+ value: BigNumberish
244
+ ];
245
+ type OutputTuple = [owner: string, spender: string, value: bigint];
246
+ interface OutputObject {
247
+ owner: string;
248
+ spender: string;
249
+ value: bigint;
250
+ }
251
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
252
+ type Filter = TypedDeferredTopicFilter<Event>;
253
+ type Log = TypedEventLog<Event>;
254
+ type LogDescription = TypedLogDescription<Event>;
255
+ }
256
+ declare namespace AuthorizationCanceledEvent {
257
+ type InputTuple = [authorizer: AddressLike, nonce: BytesLike];
258
+ type OutputTuple = [authorizer: string, nonce: string];
259
+ interface OutputObject {
260
+ authorizer: string;
261
+ nonce: string;
262
+ }
263
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
264
+ type Filter = TypedDeferredTopicFilter<Event>;
265
+ type Log = TypedEventLog<Event>;
266
+ type LogDescription = TypedLogDescription<Event>;
267
+ }
268
+ declare namespace AuthorizationUsedEvent {
269
+ type InputTuple = [authorizer: AddressLike, nonce: BytesLike];
270
+ type OutputTuple = [authorizer: string, nonce: string];
271
+ interface OutputObject {
272
+ authorizer: string;
273
+ nonce: string;
274
+ }
275
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
276
+ type Filter = TypedDeferredTopicFilter<Event>;
277
+ type Log = TypedEventLog<Event>;
278
+ type LogDescription = TypedLogDescription<Event>;
279
+ }
280
+ declare namespace BlacklistedEvent {
281
+ type InputTuple = [_account: AddressLike];
282
+ type OutputTuple = [_account: string];
283
+ interface OutputObject {
284
+ _account: string;
285
+ }
286
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
287
+ type Filter = TypedDeferredTopicFilter<Event>;
288
+ type Log = TypedEventLog<Event>;
289
+ type LogDescription = TypedLogDescription<Event>;
290
+ }
291
+ declare namespace BlacklisterChangedEvent {
292
+ type InputTuple = [newBlacklister: AddressLike];
293
+ type OutputTuple = [newBlacklister: string];
294
+ interface OutputObject {
295
+ newBlacklister: string;
296
+ }
297
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
298
+ type Filter = TypedDeferredTopicFilter<Event>;
299
+ type Log = TypedEventLog<Event>;
300
+ type LogDescription = TypedLogDescription<Event>;
301
+ }
302
+ declare namespace BurnEvent {
303
+ type InputTuple = [burner: AddressLike, amount: BigNumberish];
304
+ type OutputTuple = [burner: string, amount: bigint];
305
+ interface OutputObject {
306
+ burner: string;
307
+ amount: bigint;
308
+ }
309
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
310
+ type Filter = TypedDeferredTopicFilter<Event>;
311
+ type Log = TypedEventLog<Event>;
312
+ type LogDescription = TypedLogDescription<Event>;
313
+ }
314
+ declare namespace MasterMinterChangedEvent {
315
+ type InputTuple = [newMasterMinter: AddressLike];
316
+ type OutputTuple = [newMasterMinter: string];
317
+ interface OutputObject {
318
+ newMasterMinter: string;
319
+ }
320
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
321
+ type Filter = TypedDeferredTopicFilter<Event>;
322
+ type Log = TypedEventLog<Event>;
323
+ type LogDescription = TypedLogDescription<Event>;
324
+ }
325
+ declare namespace MintEvent {
326
+ type InputTuple = [
327
+ minter: AddressLike,
328
+ to: AddressLike,
329
+ amount: BigNumberish
330
+ ];
331
+ type OutputTuple = [minter: string, to: string, amount: bigint];
332
+ interface OutputObject {
333
+ minter: string;
334
+ to: string;
335
+ amount: bigint;
336
+ }
337
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
338
+ type Filter = TypedDeferredTopicFilter<Event>;
339
+ type Log = TypedEventLog<Event>;
340
+ type LogDescription = TypedLogDescription<Event>;
341
+ }
342
+ declare namespace MinterConfiguredEvent {
343
+ type InputTuple = [
344
+ minter: AddressLike,
345
+ minterAllowedAmount: BigNumberish
346
+ ];
347
+ type OutputTuple = [minter: string, minterAllowedAmount: bigint];
348
+ interface OutputObject {
349
+ minter: string;
350
+ minterAllowedAmount: bigint;
351
+ }
352
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
353
+ type Filter = TypedDeferredTopicFilter<Event>;
354
+ type Log = TypedEventLog<Event>;
355
+ type LogDescription = TypedLogDescription<Event>;
356
+ }
357
+ declare namespace MinterRemovedEvent {
358
+ type InputTuple = [oldMinter: AddressLike];
359
+ type OutputTuple = [oldMinter: string];
360
+ interface OutputObject {
361
+ oldMinter: string;
362
+ }
363
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
364
+ type Filter = TypedDeferredTopicFilter<Event>;
365
+ type Log = TypedEventLog<Event>;
366
+ type LogDescription = TypedLogDescription<Event>;
367
+ }
368
+ declare namespace OwnershipTransferredEvent {
369
+ type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike];
370
+ type OutputTuple = [previousOwner: string, newOwner: string];
371
+ interface OutputObject {
372
+ previousOwner: string;
373
+ newOwner: string;
374
+ }
375
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
376
+ type Filter = TypedDeferredTopicFilter<Event>;
377
+ type Log = TypedEventLog<Event>;
378
+ type LogDescription = TypedLogDescription<Event>;
379
+ }
380
+ declare namespace PauseEvent {
381
+ type InputTuple = [];
382
+ type OutputTuple = [];
383
+ interface OutputObject {
384
+ }
385
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
386
+ type Filter = TypedDeferredTopicFilter<Event>;
387
+ type Log = TypedEventLog<Event>;
388
+ type LogDescription = TypedLogDescription<Event>;
389
+ }
390
+ declare namespace PauserChangedEvent {
391
+ type InputTuple = [newAddress: AddressLike];
392
+ type OutputTuple = [newAddress: string];
393
+ interface OutputObject {
394
+ newAddress: string;
395
+ }
396
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
397
+ type Filter = TypedDeferredTopicFilter<Event>;
398
+ type Log = TypedEventLog<Event>;
399
+ type LogDescription = TypedLogDescription<Event>;
400
+ }
401
+ declare namespace RescuerChangedEvent {
402
+ type InputTuple = [newRescuer: AddressLike];
403
+ type OutputTuple = [newRescuer: string];
404
+ interface OutputObject {
405
+ newRescuer: string;
406
+ }
407
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
408
+ type Filter = TypedDeferredTopicFilter<Event>;
409
+ type Log = TypedEventLog<Event>;
410
+ type LogDescription = TypedLogDescription<Event>;
411
+ }
412
+ declare namespace TransferEvent {
413
+ type InputTuple = [
414
+ from: AddressLike,
415
+ to: AddressLike,
416
+ value: BigNumberish
417
+ ];
418
+ type OutputTuple = [from: string, to: string, value: bigint];
419
+ interface OutputObject {
420
+ from: string;
421
+ to: string;
422
+ value: bigint;
423
+ }
424
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
425
+ type Filter = TypedDeferredTopicFilter<Event>;
426
+ type Log = TypedEventLog<Event>;
427
+ type LogDescription = TypedLogDescription<Event>;
428
+ }
429
+ declare namespace UnBlacklistedEvent {
430
+ type InputTuple = [_account: AddressLike];
431
+ type OutputTuple = [_account: string];
432
+ interface OutputObject {
433
+ _account: string;
434
+ }
435
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
436
+ type Filter = TypedDeferredTopicFilter<Event>;
437
+ type Log = TypedEventLog<Event>;
438
+ type LogDescription = TypedLogDescription<Event>;
439
+ }
440
+ declare namespace UnpauseEvent {
441
+ type InputTuple = [];
442
+ type OutputTuple = [];
443
+ interface OutputObject {
444
+ }
445
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
446
+ type Filter = TypedDeferredTopicFilter<Event>;
447
+ type Log = TypedEventLog<Event>;
448
+ type LogDescription = TypedLogDescription<Event>;
449
+ }
450
+ interface ERC20 extends BaseContract {
451
+ connect(runner?: ContractRunner | null): ERC20;
452
+ waitForDeployment(): Promise<this>;
453
+ interface: ERC20Interface;
454
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
455
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
456
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
457
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
458
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
459
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
460
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
461
+ listeners(eventName?: string): Promise<Array<Listener>>;
462
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
463
+ CANCEL_AUTHORIZATION_TYPEHASH: TypedContractMethod<[], [string], "view">;
464
+ DOMAIN_SEPARATOR: TypedContractMethod<[], [string], "view">;
465
+ PERMIT_TYPEHASH: TypedContractMethod<[], [string], "view">;
466
+ RECEIVE_WITH_AUTHORIZATION_TYPEHASH: TypedContractMethod<[
467
+ ], [
468
+ string
469
+ ], "view">;
470
+ TRANSFER_WITH_AUTHORIZATION_TYPEHASH: TypedContractMethod<[
471
+ ], [
472
+ string
473
+ ], "view">;
474
+ allowance: TypedContractMethod<[
475
+ owner: AddressLike,
476
+ spender: AddressLike
477
+ ], [
478
+ bigint
479
+ ], "view">;
480
+ approve: TypedContractMethod<[
481
+ spender: AddressLike,
482
+ value: BigNumberish
483
+ ], [
484
+ boolean
485
+ ], "nonpayable">;
486
+ authorizationState: TypedContractMethod<[
487
+ authorizer: AddressLike,
488
+ nonce: BytesLike
489
+ ], [
490
+ boolean
491
+ ], "view">;
492
+ balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">;
493
+ blacklist: TypedContractMethod<[_account: AddressLike], [void], "nonpayable">;
494
+ blacklister: TypedContractMethod<[], [string], "view">;
495
+ burn: TypedContractMethod<[_amount: BigNumberish], [void], "nonpayable">;
496
+ "cancelAuthorization(address,bytes32,uint8,bytes32,bytes32)": TypedContractMethod<[
497
+ authorizer: AddressLike,
498
+ nonce: BytesLike,
499
+ v: BigNumberish,
500
+ r: BytesLike,
501
+ s: BytesLike
502
+ ], [
503
+ void
504
+ ], "nonpayable">;
505
+ "cancelAuthorization(address,bytes32,bytes)": TypedContractMethod<[
506
+ authorizer: AddressLike,
507
+ nonce: BytesLike,
508
+ signature: BytesLike
509
+ ], [
510
+ void
511
+ ], "nonpayable">;
512
+ configureMinter: TypedContractMethod<[
513
+ minter: AddressLike,
514
+ minterAllowedAmount: BigNumberish
515
+ ], [
516
+ boolean
517
+ ], "nonpayable">;
518
+ currency: TypedContractMethod<[], [string], "view">;
519
+ decimals: TypedContractMethod<[], [bigint], "view">;
520
+ decreaseAllowance: TypedContractMethod<[
521
+ spender: AddressLike,
522
+ decrement: BigNumberish
523
+ ], [
524
+ boolean
525
+ ], "nonpayable">;
526
+ increaseAllowance: TypedContractMethod<[
527
+ spender: AddressLike,
528
+ increment: BigNumberish
529
+ ], [
530
+ boolean
531
+ ], "nonpayable">;
532
+ initialize: TypedContractMethod<[
533
+ tokenName: string,
534
+ tokenSymbol: string,
535
+ tokenCurrency: string,
536
+ tokenDecimals: BigNumberish,
537
+ newMasterMinter: AddressLike,
538
+ newPauser: AddressLike,
539
+ newBlacklister: AddressLike,
540
+ newOwner: AddressLike
541
+ ], [
542
+ void
543
+ ], "nonpayable">;
544
+ initializeV2: TypedContractMethod<[newName: string], [void], "nonpayable">;
545
+ initializeV2_1: TypedContractMethod<[
546
+ lostAndFound: AddressLike
547
+ ], [
548
+ void
549
+ ], "nonpayable">;
550
+ initializeV2_2: TypedContractMethod<[
551
+ accountsToBlacklist: AddressLike[],
552
+ newSymbol: string
553
+ ], [
554
+ void
555
+ ], "nonpayable">;
556
+ isBlacklisted: TypedContractMethod<[
557
+ _account: AddressLike
558
+ ], [
559
+ boolean
560
+ ], "view">;
561
+ isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">;
562
+ masterMinter: TypedContractMethod<[], [string], "view">;
563
+ mint: TypedContractMethod<[
564
+ _to: AddressLike,
565
+ _amount: BigNumberish
566
+ ], [
567
+ boolean
568
+ ], "nonpayable">;
569
+ minterAllowance: TypedContractMethod<[minter: AddressLike], [bigint], "view">;
570
+ name: TypedContractMethod<[], [string], "view">;
571
+ nonces: TypedContractMethod<[owner: AddressLike], [bigint], "view">;
572
+ owner: TypedContractMethod<[], [string], "view">;
573
+ pause: TypedContractMethod<[], [void], "nonpayable">;
574
+ paused: TypedContractMethod<[], [boolean], "view">;
575
+ pauser: TypedContractMethod<[], [string], "view">;
576
+ "permit(address,address,uint256,uint256,bytes)": TypedContractMethod<[
577
+ owner: AddressLike,
578
+ spender: AddressLike,
579
+ value: BigNumberish,
580
+ deadline: BigNumberish,
581
+ signature: BytesLike
582
+ ], [
583
+ void
584
+ ], "nonpayable">;
585
+ "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)": TypedContractMethod<[
586
+ owner: AddressLike,
587
+ spender: AddressLike,
588
+ value: BigNumberish,
589
+ deadline: BigNumberish,
590
+ v: BigNumberish,
591
+ r: BytesLike,
592
+ s: BytesLike
593
+ ], [
594
+ void
595
+ ], "nonpayable">;
596
+ "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)": TypedContractMethod<[
597
+ from: AddressLike,
598
+ to: AddressLike,
599
+ value: BigNumberish,
600
+ validAfter: BigNumberish,
601
+ validBefore: BigNumberish,
602
+ nonce: BytesLike,
603
+ signature: BytesLike
604
+ ], [
605
+ void
606
+ ], "nonpayable">;
607
+ "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)": TypedContractMethod<[
608
+ from: AddressLike,
609
+ to: AddressLike,
610
+ value: BigNumberish,
611
+ validAfter: BigNumberish,
612
+ validBefore: BigNumberish,
613
+ nonce: BytesLike,
614
+ v: BigNumberish,
615
+ r: BytesLike,
616
+ s: BytesLike
617
+ ], [
618
+ void
619
+ ], "nonpayable">;
620
+ removeMinter: TypedContractMethod<[
621
+ minter: AddressLike
622
+ ], [
623
+ boolean
624
+ ], "nonpayable">;
625
+ rescueERC20: TypedContractMethod<[
626
+ tokenContract: AddressLike,
627
+ to: AddressLike,
628
+ amount: BigNumberish
629
+ ], [
630
+ void
631
+ ], "nonpayable">;
632
+ rescuer: TypedContractMethod<[], [string], "view">;
633
+ symbol: TypedContractMethod<[], [string], "view">;
634
+ totalSupply: TypedContractMethod<[], [bigint], "view">;
635
+ transfer: TypedContractMethod<[
636
+ to: AddressLike,
637
+ value: BigNumberish
638
+ ], [
639
+ boolean
640
+ ], "nonpayable">;
641
+ transferFrom: TypedContractMethod<[
642
+ from: AddressLike,
643
+ to: AddressLike,
644
+ value: BigNumberish
645
+ ], [
646
+ boolean
647
+ ], "nonpayable">;
648
+ transferOwnership: TypedContractMethod<[
649
+ newOwner: AddressLike
650
+ ], [
651
+ void
652
+ ], "nonpayable">;
653
+ "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)": TypedContractMethod<[
654
+ from: AddressLike,
655
+ to: AddressLike,
656
+ value: BigNumberish,
657
+ validAfter: BigNumberish,
658
+ validBefore: BigNumberish,
659
+ nonce: BytesLike,
660
+ signature: BytesLike
661
+ ], [
662
+ void
663
+ ], "nonpayable">;
664
+ "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)": TypedContractMethod<[
665
+ from: AddressLike,
666
+ to: AddressLike,
667
+ value: BigNumberish,
668
+ validAfter: BigNumberish,
669
+ validBefore: BigNumberish,
670
+ nonce: BytesLike,
671
+ v: BigNumberish,
672
+ r: BytesLike,
673
+ s: BytesLike
674
+ ], [
675
+ void
676
+ ], "nonpayable">;
677
+ unBlacklist: TypedContractMethod<[
678
+ _account: AddressLike
679
+ ], [
680
+ void
681
+ ], "nonpayable">;
682
+ unpause: TypedContractMethod<[], [void], "nonpayable">;
683
+ updateBlacklister: TypedContractMethod<[
684
+ _newBlacklister: AddressLike
685
+ ], [
686
+ void
687
+ ], "nonpayable">;
688
+ updateMasterMinter: TypedContractMethod<[
689
+ _newMasterMinter: AddressLike
690
+ ], [
691
+ void
692
+ ], "nonpayable">;
693
+ updatePauser: TypedContractMethod<[
694
+ _newPauser: AddressLike
695
+ ], [
696
+ void
697
+ ], "nonpayable">;
698
+ updateRescuer: TypedContractMethod<[
699
+ newRescuer: AddressLike
700
+ ], [
701
+ void
702
+ ], "nonpayable">;
703
+ version: TypedContractMethod<[], [string], "view">;
704
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
705
+ getFunction(nameOrSignature: "CANCEL_AUTHORIZATION_TYPEHASH"): TypedContractMethod<[], [string], "view">;
706
+ getFunction(nameOrSignature: "DOMAIN_SEPARATOR"): TypedContractMethod<[], [string], "view">;
707
+ getFunction(nameOrSignature: "PERMIT_TYPEHASH"): TypedContractMethod<[], [string], "view">;
708
+ getFunction(nameOrSignature: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH"): TypedContractMethod<[], [string], "view">;
709
+ getFunction(nameOrSignature: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH"): TypedContractMethod<[], [string], "view">;
710
+ getFunction(nameOrSignature: "allowance"): TypedContractMethod<[
711
+ owner: AddressLike,
712
+ spender: AddressLike
713
+ ], [
714
+ bigint
715
+ ], "view">;
716
+ getFunction(nameOrSignature: "approve"): TypedContractMethod<[
717
+ spender: AddressLike,
718
+ value: BigNumberish
719
+ ], [
720
+ boolean
721
+ ], "nonpayable">;
722
+ getFunction(nameOrSignature: "authorizationState"): TypedContractMethod<[
723
+ authorizer: AddressLike,
724
+ nonce: BytesLike
725
+ ], [
726
+ boolean
727
+ ], "view">;
728
+ getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">;
729
+ getFunction(nameOrSignature: "blacklist"): TypedContractMethod<[_account: AddressLike], [void], "nonpayable">;
730
+ getFunction(nameOrSignature: "blacklister"): TypedContractMethod<[], [string], "view">;
731
+ getFunction(nameOrSignature: "burn"): TypedContractMethod<[_amount: BigNumberish], [void], "nonpayable">;
732
+ getFunction(nameOrSignature: "cancelAuthorization(address,bytes32,uint8,bytes32,bytes32)"): TypedContractMethod<[
733
+ authorizer: AddressLike,
734
+ nonce: BytesLike,
735
+ v: BigNumberish,
736
+ r: BytesLike,
737
+ s: BytesLike
738
+ ], [
739
+ void
740
+ ], "nonpayable">;
741
+ getFunction(nameOrSignature: "cancelAuthorization(address,bytes32,bytes)"): TypedContractMethod<[
742
+ authorizer: AddressLike,
743
+ nonce: BytesLike,
744
+ signature: BytesLike
745
+ ], [
746
+ void
747
+ ], "nonpayable">;
748
+ getFunction(nameOrSignature: "configureMinter"): TypedContractMethod<[
749
+ minter: AddressLike,
750
+ minterAllowedAmount: BigNumberish
751
+ ], [
752
+ boolean
753
+ ], "nonpayable">;
754
+ getFunction(nameOrSignature: "currency"): TypedContractMethod<[], [string], "view">;
755
+ getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">;
756
+ getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[
757
+ spender: AddressLike,
758
+ decrement: BigNumberish
759
+ ], [
760
+ boolean
761
+ ], "nonpayable">;
762
+ getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[
763
+ spender: AddressLike,
764
+ increment: BigNumberish
765
+ ], [
766
+ boolean
767
+ ], "nonpayable">;
768
+ getFunction(nameOrSignature: "initialize"): TypedContractMethod<[
769
+ tokenName: string,
770
+ tokenSymbol: string,
771
+ tokenCurrency: string,
772
+ tokenDecimals: BigNumberish,
773
+ newMasterMinter: AddressLike,
774
+ newPauser: AddressLike,
775
+ newBlacklister: AddressLike,
776
+ newOwner: AddressLike
777
+ ], [
778
+ void
779
+ ], "nonpayable">;
780
+ getFunction(nameOrSignature: "initializeV2"): TypedContractMethod<[newName: string], [void], "nonpayable">;
781
+ getFunction(nameOrSignature: "initializeV2_1"): TypedContractMethod<[lostAndFound: AddressLike], [void], "nonpayable">;
782
+ getFunction(nameOrSignature: "initializeV2_2"): TypedContractMethod<[
783
+ accountsToBlacklist: AddressLike[],
784
+ newSymbol: string
785
+ ], [
786
+ void
787
+ ], "nonpayable">;
788
+ getFunction(nameOrSignature: "isBlacklisted"): TypedContractMethod<[_account: AddressLike], [boolean], "view">;
789
+ getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">;
790
+ getFunction(nameOrSignature: "masterMinter"): TypedContractMethod<[], [string], "view">;
791
+ getFunction(nameOrSignature: "mint"): TypedContractMethod<[
792
+ _to: AddressLike,
793
+ _amount: BigNumberish
794
+ ], [
795
+ boolean
796
+ ], "nonpayable">;
797
+ getFunction(nameOrSignature: "minterAllowance"): TypedContractMethod<[minter: AddressLike], [bigint], "view">;
798
+ getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">;
799
+ getFunction(nameOrSignature: "nonces"): TypedContractMethod<[owner: AddressLike], [bigint], "view">;
800
+ getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">;
801
+ getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">;
802
+ getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">;
803
+ getFunction(nameOrSignature: "pauser"): TypedContractMethod<[], [string], "view">;
804
+ getFunction(nameOrSignature: "permit(address,address,uint256,uint256,bytes)"): TypedContractMethod<[
805
+ owner: AddressLike,
806
+ spender: AddressLike,
807
+ value: BigNumberish,
808
+ deadline: BigNumberish,
809
+ signature: BytesLike
810
+ ], [
811
+ void
812
+ ], "nonpayable">;
813
+ getFunction(nameOrSignature: "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"): TypedContractMethod<[
814
+ owner: AddressLike,
815
+ spender: AddressLike,
816
+ value: BigNumberish,
817
+ deadline: BigNumberish,
818
+ v: BigNumberish,
819
+ r: BytesLike,
820
+ s: BytesLike
821
+ ], [
822
+ void
823
+ ], "nonpayable">;
824
+ getFunction(nameOrSignature: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)"): TypedContractMethod<[
825
+ from: AddressLike,
826
+ to: AddressLike,
827
+ value: BigNumberish,
828
+ validAfter: BigNumberish,
829
+ validBefore: BigNumberish,
830
+ nonce: BytesLike,
831
+ signature: BytesLike
832
+ ], [
833
+ void
834
+ ], "nonpayable">;
835
+ getFunction(nameOrSignature: "receiveWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)"): TypedContractMethod<[
836
+ from: AddressLike,
837
+ to: AddressLike,
838
+ value: BigNumberish,
839
+ validAfter: BigNumberish,
840
+ validBefore: BigNumberish,
841
+ nonce: BytesLike,
842
+ v: BigNumberish,
843
+ r: BytesLike,
844
+ s: BytesLike
845
+ ], [
846
+ void
847
+ ], "nonpayable">;
848
+ getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[minter: AddressLike], [boolean], "nonpayable">;
849
+ getFunction(nameOrSignature: "rescueERC20"): TypedContractMethod<[
850
+ tokenContract: AddressLike,
851
+ to: AddressLike,
852
+ amount: BigNumberish
853
+ ], [
854
+ void
855
+ ], "nonpayable">;
856
+ getFunction(nameOrSignature: "rescuer"): TypedContractMethod<[], [string], "view">;
857
+ getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">;
858
+ getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">;
859
+ getFunction(nameOrSignature: "transfer"): TypedContractMethod<[
860
+ to: AddressLike,
861
+ value: BigNumberish
862
+ ], [
863
+ boolean
864
+ ], "nonpayable">;
865
+ getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[
866
+ from: AddressLike,
867
+ to: AddressLike,
868
+ value: BigNumberish
869
+ ], [
870
+ boolean
871
+ ], "nonpayable">;
872
+ getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">;
873
+ getFunction(nameOrSignature: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,bytes)"): TypedContractMethod<[
874
+ from: AddressLike,
875
+ to: AddressLike,
876
+ value: BigNumberish,
877
+ validAfter: BigNumberish,
878
+ validBefore: BigNumberish,
879
+ nonce: BytesLike,
880
+ signature: BytesLike
881
+ ], [
882
+ void
883
+ ], "nonpayable">;
884
+ getFunction(nameOrSignature: "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)"): TypedContractMethod<[
885
+ from: AddressLike,
886
+ to: AddressLike,
887
+ value: BigNumberish,
888
+ validAfter: BigNumberish,
889
+ validBefore: BigNumberish,
890
+ nonce: BytesLike,
891
+ v: BigNumberish,
892
+ r: BytesLike,
893
+ s: BytesLike
894
+ ], [
895
+ void
896
+ ], "nonpayable">;
897
+ getFunction(nameOrSignature: "unBlacklist"): TypedContractMethod<[_account: AddressLike], [void], "nonpayable">;
898
+ getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">;
899
+ getFunction(nameOrSignature: "updateBlacklister"): TypedContractMethod<[_newBlacklister: AddressLike], [void], "nonpayable">;
900
+ getFunction(nameOrSignature: "updateMasterMinter"): TypedContractMethod<[_newMasterMinter: AddressLike], [void], "nonpayable">;
901
+ getFunction(nameOrSignature: "updatePauser"): TypedContractMethod<[_newPauser: AddressLike], [void], "nonpayable">;
902
+ getFunction(nameOrSignature: "updateRescuer"): TypedContractMethod<[newRescuer: AddressLike], [void], "nonpayable">;
903
+ getFunction(nameOrSignature: "version"): TypedContractMethod<[], [string], "view">;
904
+ getEvent(key: "Approval"): TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
905
+ getEvent(key: "AuthorizationCanceled"): TypedContractEvent<AuthorizationCanceledEvent.InputTuple, AuthorizationCanceledEvent.OutputTuple, AuthorizationCanceledEvent.OutputObject>;
906
+ getEvent(key: "AuthorizationUsed"): TypedContractEvent<AuthorizationUsedEvent.InputTuple, AuthorizationUsedEvent.OutputTuple, AuthorizationUsedEvent.OutputObject>;
907
+ getEvent(key: "Blacklisted"): TypedContractEvent<BlacklistedEvent.InputTuple, BlacklistedEvent.OutputTuple, BlacklistedEvent.OutputObject>;
908
+ getEvent(key: "BlacklisterChanged"): TypedContractEvent<BlacklisterChangedEvent.InputTuple, BlacklisterChangedEvent.OutputTuple, BlacklisterChangedEvent.OutputObject>;
909
+ getEvent(key: "Burn"): TypedContractEvent<BurnEvent.InputTuple, BurnEvent.OutputTuple, BurnEvent.OutputObject>;
910
+ getEvent(key: "MasterMinterChanged"): TypedContractEvent<MasterMinterChangedEvent.InputTuple, MasterMinterChangedEvent.OutputTuple, MasterMinterChangedEvent.OutputObject>;
911
+ getEvent(key: "Mint"): TypedContractEvent<MintEvent.InputTuple, MintEvent.OutputTuple, MintEvent.OutputObject>;
912
+ getEvent(key: "MinterConfigured"): TypedContractEvent<MinterConfiguredEvent.InputTuple, MinterConfiguredEvent.OutputTuple, MinterConfiguredEvent.OutputObject>;
913
+ getEvent(key: "MinterRemoved"): TypedContractEvent<MinterRemovedEvent.InputTuple, MinterRemovedEvent.OutputTuple, MinterRemovedEvent.OutputObject>;
914
+ getEvent(key: "OwnershipTransferred"): TypedContractEvent<OwnershipTransferredEvent.InputTuple, OwnershipTransferredEvent.OutputTuple, OwnershipTransferredEvent.OutputObject>;
915
+ getEvent(key: "Pause"): TypedContractEvent<PauseEvent.InputTuple, PauseEvent.OutputTuple, PauseEvent.OutputObject>;
916
+ getEvent(key: "PauserChanged"): TypedContractEvent<PauserChangedEvent.InputTuple, PauserChangedEvent.OutputTuple, PauserChangedEvent.OutputObject>;
917
+ getEvent(key: "RescuerChanged"): TypedContractEvent<RescuerChangedEvent.InputTuple, RescuerChangedEvent.OutputTuple, RescuerChangedEvent.OutputObject>;
918
+ getEvent(key: "Transfer"): TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
919
+ getEvent(key: "UnBlacklisted"): TypedContractEvent<UnBlacklistedEvent.InputTuple, UnBlacklistedEvent.OutputTuple, UnBlacklistedEvent.OutputObject>;
920
+ getEvent(key: "Unpause"): TypedContractEvent<UnpauseEvent.InputTuple, UnpauseEvent.OutputTuple, UnpauseEvent.OutputObject>;
921
+ filters: {
922
+ "Approval(address,address,uint256)": TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
923
+ Approval: TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
924
+ "AuthorizationCanceled(address,bytes32)": TypedContractEvent<AuthorizationCanceledEvent.InputTuple, AuthorizationCanceledEvent.OutputTuple, AuthorizationCanceledEvent.OutputObject>;
925
+ AuthorizationCanceled: TypedContractEvent<AuthorizationCanceledEvent.InputTuple, AuthorizationCanceledEvent.OutputTuple, AuthorizationCanceledEvent.OutputObject>;
926
+ "AuthorizationUsed(address,bytes32)": TypedContractEvent<AuthorizationUsedEvent.InputTuple, AuthorizationUsedEvent.OutputTuple, AuthorizationUsedEvent.OutputObject>;
927
+ AuthorizationUsed: TypedContractEvent<AuthorizationUsedEvent.InputTuple, AuthorizationUsedEvent.OutputTuple, AuthorizationUsedEvent.OutputObject>;
928
+ "Blacklisted(address)": TypedContractEvent<BlacklistedEvent.InputTuple, BlacklistedEvent.OutputTuple, BlacklistedEvent.OutputObject>;
929
+ Blacklisted: TypedContractEvent<BlacklistedEvent.InputTuple, BlacklistedEvent.OutputTuple, BlacklistedEvent.OutputObject>;
930
+ "BlacklisterChanged(address)": TypedContractEvent<BlacklisterChangedEvent.InputTuple, BlacklisterChangedEvent.OutputTuple, BlacklisterChangedEvent.OutputObject>;
931
+ BlacklisterChanged: TypedContractEvent<BlacklisterChangedEvent.InputTuple, BlacklisterChangedEvent.OutputTuple, BlacklisterChangedEvent.OutputObject>;
932
+ "Burn(address,uint256)": TypedContractEvent<BurnEvent.InputTuple, BurnEvent.OutputTuple, BurnEvent.OutputObject>;
933
+ Burn: TypedContractEvent<BurnEvent.InputTuple, BurnEvent.OutputTuple, BurnEvent.OutputObject>;
934
+ "MasterMinterChanged(address)": TypedContractEvent<MasterMinterChangedEvent.InputTuple, MasterMinterChangedEvent.OutputTuple, MasterMinterChangedEvent.OutputObject>;
935
+ MasterMinterChanged: TypedContractEvent<MasterMinterChangedEvent.InputTuple, MasterMinterChangedEvent.OutputTuple, MasterMinterChangedEvent.OutputObject>;
936
+ "Mint(address,address,uint256)": TypedContractEvent<MintEvent.InputTuple, MintEvent.OutputTuple, MintEvent.OutputObject>;
937
+ Mint: TypedContractEvent<MintEvent.InputTuple, MintEvent.OutputTuple, MintEvent.OutputObject>;
938
+ "MinterConfigured(address,uint256)": TypedContractEvent<MinterConfiguredEvent.InputTuple, MinterConfiguredEvent.OutputTuple, MinterConfiguredEvent.OutputObject>;
939
+ MinterConfigured: TypedContractEvent<MinterConfiguredEvent.InputTuple, MinterConfiguredEvent.OutputTuple, MinterConfiguredEvent.OutputObject>;
940
+ "MinterRemoved(address)": TypedContractEvent<MinterRemovedEvent.InputTuple, MinterRemovedEvent.OutputTuple, MinterRemovedEvent.OutputObject>;
941
+ MinterRemoved: TypedContractEvent<MinterRemovedEvent.InputTuple, MinterRemovedEvent.OutputTuple, MinterRemovedEvent.OutputObject>;
942
+ "OwnershipTransferred(address,address)": TypedContractEvent<OwnershipTransferredEvent.InputTuple, OwnershipTransferredEvent.OutputTuple, OwnershipTransferredEvent.OutputObject>;
943
+ OwnershipTransferred: TypedContractEvent<OwnershipTransferredEvent.InputTuple, OwnershipTransferredEvent.OutputTuple, OwnershipTransferredEvent.OutputObject>;
944
+ "Pause()": TypedContractEvent<PauseEvent.InputTuple, PauseEvent.OutputTuple, PauseEvent.OutputObject>;
945
+ Pause: TypedContractEvent<PauseEvent.InputTuple, PauseEvent.OutputTuple, PauseEvent.OutputObject>;
946
+ "PauserChanged(address)": TypedContractEvent<PauserChangedEvent.InputTuple, PauserChangedEvent.OutputTuple, PauserChangedEvent.OutputObject>;
947
+ PauserChanged: TypedContractEvent<PauserChangedEvent.InputTuple, PauserChangedEvent.OutputTuple, PauserChangedEvent.OutputObject>;
948
+ "RescuerChanged(address)": TypedContractEvent<RescuerChangedEvent.InputTuple, RescuerChangedEvent.OutputTuple, RescuerChangedEvent.OutputObject>;
949
+ RescuerChanged: TypedContractEvent<RescuerChangedEvent.InputTuple, RescuerChangedEvent.OutputTuple, RescuerChangedEvent.OutputObject>;
950
+ "Transfer(address,address,uint256)": TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
951
+ Transfer: TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
952
+ "UnBlacklisted(address)": TypedContractEvent<UnBlacklistedEvent.InputTuple, UnBlacklistedEvent.OutputTuple, UnBlacklistedEvent.OutputObject>;
953
+ UnBlacklisted: TypedContractEvent<UnBlacklistedEvent.InputTuple, UnBlacklistedEvent.OutputTuple, UnBlacklistedEvent.OutputObject>;
954
+ "Unpause()": TypedContractEvent<UnpauseEvent.InputTuple, UnpauseEvent.OutputTuple, UnpauseEvent.OutputObject>;
955
+ Unpause: TypedContractEvent<UnpauseEvent.InputTuple, UnpauseEvent.OutputTuple, UnpauseEvent.OutputObject>;
956
+ };
957
+ }
958
+
959
+ interface PaymentInterface extends Interface {
960
+ getFunction(nameOrSignature: "payment" | "protocol" | "setProtocol"): FunctionFragment;
961
+ getEvent(nameOrSignatureOrTopic: "PaymentTransferred" | "ProtocolUpdated"): EventFragment;
962
+ encodeFunctionData(functionFragment: "payment", values: [
963
+ BytesLike,
964
+ AddressLike,
965
+ AddressLike,
966
+ BigNumberish,
967
+ BigNumberish,
968
+ BigNumberish
969
+ ]): string;
970
+ encodeFunctionData(functionFragment: "protocol", values?: undefined): string;
971
+ encodeFunctionData(functionFragment: "setProtocol", values: [AddressLike]): string;
972
+ decodeFunctionResult(functionFragment: "payment", data: BytesLike): Result;
973
+ decodeFunctionResult(functionFragment: "protocol", data: BytesLike): Result;
974
+ decodeFunctionResult(functionFragment: "setProtocol", data: BytesLike): Result;
975
+ }
976
+ declare namespace PaymentTransferredEvent {
977
+ type InputTuple = [
978
+ tradeId: BytesLike,
979
+ from: AddressLike,
980
+ to: AddressLike,
981
+ pFeeAddr: AddressLike,
982
+ token: AddressLike,
983
+ payToUser: BigNumberish,
984
+ totalFee: BigNumberish
985
+ ];
986
+ type OutputTuple = [
987
+ tradeId: string,
988
+ from: string,
989
+ to: string,
990
+ pFeeAddr: string,
991
+ token: string,
992
+ payToUser: bigint,
993
+ totalFee: bigint
994
+ ];
995
+ interface OutputObject {
996
+ tradeId: string;
997
+ from: string;
998
+ to: string;
999
+ pFeeAddr: string;
1000
+ token: string;
1001
+ payToUser: bigint;
1002
+ totalFee: bigint;
1003
+ }
1004
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1005
+ type Filter = TypedDeferredTopicFilter<Event>;
1006
+ type Log = TypedEventLog<Event>;
1007
+ type LogDescription = TypedLogDescription<Event>;
1008
+ }
1009
+ declare namespace ProtocolUpdatedEvent {
1010
+ type InputTuple = [owner: AddressLike, newProtocol: AddressLike];
1011
+ type OutputTuple = [owner: string, newProtocol: string];
1012
+ interface OutputObject {
1013
+ owner: string;
1014
+ newProtocol: string;
1015
+ }
1016
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1017
+ type Filter = TypedDeferredTopicFilter<Event>;
1018
+ type Log = TypedEventLog<Event>;
1019
+ type LogDescription = TypedLogDescription<Event>;
1020
+ }
1021
+ interface Payment extends BaseContract {
1022
+ connect(runner?: ContractRunner | null): Payment;
1023
+ waitForDeployment(): Promise<this>;
1024
+ interface: PaymentInterface;
1025
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1026
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1027
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1028
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1029
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1030
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1031
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
1032
+ listeners(eventName?: string): Promise<Array<Listener>>;
1033
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
1034
+ payment: TypedContractMethod<[
1035
+ tradeId: BytesLike,
1036
+ token: AddressLike,
1037
+ toUser: AddressLike,
1038
+ amount: BigNumberish,
1039
+ totalFee: BigNumberish,
1040
+ deadline: BigNumberish
1041
+ ], [
1042
+ void
1043
+ ], "payable">;
1044
+ protocol: TypedContractMethod<[], [string], "view">;
1045
+ setProtocol: TypedContractMethod<[
1046
+ newProtocol: AddressLike
1047
+ ], [
1048
+ void
1049
+ ], "nonpayable">;
1050
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
1051
+ getFunction(nameOrSignature: "payment"): TypedContractMethod<[
1052
+ tradeId: BytesLike,
1053
+ token: AddressLike,
1054
+ toUser: AddressLike,
1055
+ amount: BigNumberish,
1056
+ totalFee: BigNumberish,
1057
+ deadline: BigNumberish
1058
+ ], [
1059
+ void
1060
+ ], "payable">;
1061
+ getFunction(nameOrSignature: "protocol"): TypedContractMethod<[], [string], "view">;
1062
+ getFunction(nameOrSignature: "setProtocol"): TypedContractMethod<[newProtocol: AddressLike], [void], "nonpayable">;
1063
+ getEvent(key: "PaymentTransferred"): TypedContractEvent<PaymentTransferredEvent.InputTuple, PaymentTransferredEvent.OutputTuple, PaymentTransferredEvent.OutputObject>;
1064
+ getEvent(key: "ProtocolUpdated"): TypedContractEvent<ProtocolUpdatedEvent.InputTuple, ProtocolUpdatedEvent.OutputTuple, ProtocolUpdatedEvent.OutputObject>;
1065
+ filters: {
1066
+ "PaymentTransferred(bytes32,address,address,address,address,uint256,uint256)": TypedContractEvent<PaymentTransferredEvent.InputTuple, PaymentTransferredEvent.OutputTuple, PaymentTransferredEvent.OutputObject>;
1067
+ PaymentTransferred: TypedContractEvent<PaymentTransferredEvent.InputTuple, PaymentTransferredEvent.OutputTuple, PaymentTransferredEvent.OutputObject>;
1068
+ "ProtocolUpdated(address,address)": TypedContractEvent<ProtocolUpdatedEvent.InputTuple, ProtocolUpdatedEvent.OutputTuple, ProtocolUpdatedEvent.OutputObject>;
1069
+ ProtocolUpdated: TypedContractEvent<ProtocolUpdatedEvent.InputTuple, ProtocolUpdatedEvent.OutputTuple, ProtocolUpdatedEvent.OutputObject>;
1070
+ };
1071
+ }
1072
+
1073
+ declare namespace ITypes {
1074
+ type BundlePaymentStruct = {
1075
+ tradeIds: BytesLike[];
1076
+ signedAt: BigNumberish;
1077
+ startIdx: BigNumberish;
1078
+ paymentTxId: BytesLike;
1079
+ signature: BytesLike;
1080
+ };
1081
+ type BundlePaymentStructOutput = [
1082
+ tradeIds: string[],
1083
+ signedAt: bigint,
1084
+ startIdx: bigint,
1085
+ paymentTxId: string,
1086
+ signature: string
1087
+ ] & {
1088
+ tradeIds: string[];
1089
+ signedAt: bigint;
1090
+ startIdx: bigint;
1091
+ paymentTxId: string;
1092
+ signature: string;
1093
+ };
1094
+ type AffiliateStruct = {
1095
+ aggregatedValue: BigNumberish;
1096
+ schema: string;
1097
+ data: BytesLike;
1098
+ };
1099
+ type AffiliateStructOutput = [
1100
+ aggregatedValue: bigint,
1101
+ schema: string,
1102
+ data: string
1103
+ ] & {
1104
+ aggregatedValue: bigint;
1105
+ schema: string;
1106
+ data: string;
1107
+ };
1108
+ type FeeDetailsStruct = {
1109
+ totalAmount: BigNumberish;
1110
+ pFeeAmount: BigNumberish;
1111
+ aFeeAmount: BigNumberish;
1112
+ pFeeRate: BigNumberish;
1113
+ aFeeRate: BigNumberish;
1114
+ };
1115
+ type FeeDetailsStructOutput = [
1116
+ totalAmount: bigint,
1117
+ pFeeAmount: bigint,
1118
+ aFeeAmount: bigint,
1119
+ pFeeRate: bigint,
1120
+ aFeeRate: bigint
1121
+ ] & {
1122
+ totalAmount: bigint;
1123
+ pFeeAmount: bigint;
1124
+ aFeeAmount: bigint;
1125
+ pFeeRate: bigint;
1126
+ aFeeRate: bigint;
1127
+ };
1128
+ type MPCInfoStruct = {
1129
+ mpcL2Address: AddressLike;
1130
+ expireTime: BigNumberish;
1131
+ mpcL2Pubkey: BytesLike;
1132
+ mpcAssetPubkey: BytesLike;
1133
+ };
1134
+ type MPCInfoStructOutput = [
1135
+ mpcL2Address: string,
1136
+ expireTime: bigint,
1137
+ mpcL2Pubkey: string,
1138
+ mpcAssetPubkey: string
1139
+ ] & {
1140
+ mpcL2Address: string;
1141
+ expireTime: bigint;
1142
+ mpcL2Pubkey: string;
1143
+ mpcAssetPubkey: string;
1144
+ };
1145
+ type RFQInfoStruct = {
1146
+ minAmountOut: BigNumberish;
1147
+ tradeTimeout: BigNumberish;
1148
+ rfqInfoSignature: BytesLike;
1149
+ };
1150
+ type RFQInfoStructOutput = [
1151
+ minAmountOut: bigint,
1152
+ tradeTimeout: bigint,
1153
+ rfqInfoSignature: string
1154
+ ] & {
1155
+ minAmountOut: bigint;
1156
+ tradeTimeout: bigint;
1157
+ rfqInfoSignature: string;
1158
+ };
1159
+ type SelectedPMMInfoStruct = {
1160
+ amountOut: BigNumberish;
1161
+ selectedPMMId: BytesLike;
1162
+ info: [BytesLike, BytesLike];
1163
+ sigExpiry: BigNumberish;
1164
+ };
1165
+ type SelectedPMMInfoStructOutput = [
1166
+ amountOut: bigint,
1167
+ selectedPMMId: string,
1168
+ info: [string, string],
1169
+ sigExpiry: bigint
1170
+ ] & {
1171
+ amountOut: bigint;
1172
+ selectedPMMId: string;
1173
+ info: [string, string];
1174
+ sigExpiry: bigint;
1175
+ };
1176
+ type PMMSelectionStruct = {
1177
+ rfqInfo: ITypes.RFQInfoStruct;
1178
+ pmmInfo: ITypes.SelectedPMMInfoStruct;
1179
+ };
1180
+ type PMMSelectionStructOutput = [
1181
+ rfqInfo: ITypes.RFQInfoStructOutput,
1182
+ pmmInfo: ITypes.SelectedPMMInfoStructOutput
1183
+ ] & {
1184
+ rfqInfo: ITypes.RFQInfoStructOutput;
1185
+ pmmInfo: ITypes.SelectedPMMInfoStructOutput;
1186
+ };
1187
+ type PresignStruct = {
1188
+ pmmId: BytesLike;
1189
+ pmmRecvAddress: BytesLike;
1190
+ presigns: BytesLike[];
1191
+ };
1192
+ type PresignStructOutput = [
1193
+ pmmId: string,
1194
+ pmmRecvAddress: string,
1195
+ presigns: string[]
1196
+ ] & {
1197
+ pmmId: string;
1198
+ pmmRecvAddress: string;
1199
+ presigns: string[];
1200
+ };
1201
+ type SettledPaymentStruct = {
1202
+ bundlerHash: BytesLike;
1203
+ paymentTxId: BytesLike;
1204
+ releaseTxId: BytesLike;
1205
+ isConfirmed: boolean;
1206
+ };
1207
+ type SettledPaymentStructOutput = [
1208
+ bundlerHash: string,
1209
+ paymentTxId: string,
1210
+ releaseTxId: string,
1211
+ isConfirmed: boolean
1212
+ ] & {
1213
+ bundlerHash: string;
1214
+ paymentTxId: string;
1215
+ releaseTxId: string;
1216
+ isConfirmed: boolean;
1217
+ };
1218
+ type TokenInfoStruct = {
1219
+ info: [BytesLike, BytesLike, BytesLike, BytesLike, BytesLike];
1220
+ decimals: BigNumberish;
1221
+ };
1222
+ type TokenInfoStructOutput = [
1223
+ info: [string, string, string, string, string],
1224
+ decimals: bigint
1225
+ ] & {
1226
+ info: [string, string, string, string, string];
1227
+ decimals: bigint;
1228
+ };
1229
+ type TradeInfoStruct = {
1230
+ amountIn: BigNumberish;
1231
+ fromChain: [BytesLike, BytesLike, BytesLike];
1232
+ toChain: [BytesLike, BytesLike, BytesLike];
1233
+ };
1234
+ type TradeInfoStructOutput = [
1235
+ amountIn: bigint,
1236
+ fromChain: [string, string, string],
1237
+ toChain: [string, string, string]
1238
+ ] & {
1239
+ amountIn: bigint;
1240
+ fromChain: [string, string, string];
1241
+ toChain: [string, string, string];
1242
+ };
1243
+ type ScriptInfoStruct = {
1244
+ depositInfo: [BytesLike, BytesLike, BytesLike, BytesLike, BytesLike];
1245
+ userEphemeralL2Address: AddressLike;
1246
+ scriptTimeout: BigNumberish;
1247
+ };
1248
+ type ScriptInfoStructOutput = [
1249
+ depositInfo: [string, string, string, string, string],
1250
+ userEphemeralL2Address: string,
1251
+ scriptTimeout: bigint
1252
+ ] & {
1253
+ depositInfo: [string, string, string, string, string];
1254
+ userEphemeralL2Address: string;
1255
+ scriptTimeout: bigint;
1256
+ };
1257
+ type TradeDataStruct = {
1258
+ sessionId: BigNumberish;
1259
+ tradeInfo: ITypes.TradeInfoStruct;
1260
+ scriptInfo: ITypes.ScriptInfoStruct;
1261
+ };
1262
+ type TradeDataStructOutput = [
1263
+ sessionId: bigint,
1264
+ tradeInfo: ITypes.TradeInfoStructOutput,
1265
+ scriptInfo: ITypes.ScriptInfoStructOutput
1266
+ ] & {
1267
+ sessionId: bigint;
1268
+ tradeInfo: ITypes.TradeInfoStructOutput;
1269
+ scriptInfo: ITypes.ScriptInfoStructOutput;
1270
+ };
1271
+ }
1272
+ interface RouterInterface extends Interface {
1273
+ getFunction(nameOrSignature: "SIGNER" | "bundlePayment" | "confirmDeposit" | "confirmPayment" | "confirmSettlement" | "getAffiliateInfo" | "getCurrentStage" | "getDepositAddressList" | "getFeeDetails" | "getHandler" | "getHandlerOf" | "getLastSignedPayment" | "getLatestMPCInfo" | "getMPCInfo" | "getManagementOwner" | "getMaxAffiliateFeeRate" | "getPFeeRate" | "getPMMAccounts" | "getPMMSelection" | "getPresigns" | "getProtocolState" | "getSettledPayment" | "getTokens" | "getTradeData" | "isMPCNode" | "isSolver" | "isSuspended" | "isValidNetwork" | "isValidPMM" | "isValidPMMAccount" | "isValidPubkey" | "isValidToken" | "management" | "numOfPMMAccounts" | "numOfSupportedTokens" | "selectPMM" | "setManagement" | "setRoute" | "submitTrade" | "version"): FunctionFragment;
1274
+ getEvent(nameOrSignatureOrTopic: "ConfirmDeposit" | "ConfirmPayment" | "ConfirmSettlement" | "MakePayment" | "SelectPMM" | "SubmitTradeInfo" | "UpdatedRoute"): EventFragment;
1275
+ encodeFunctionData(functionFragment: "SIGNER", values?: undefined): string;
1276
+ encodeFunctionData(functionFragment: "bundlePayment", values: [ITypes.BundlePaymentStruct]): string;
1277
+ encodeFunctionData(functionFragment: "confirmDeposit", values: [BytesLike, BytesLike, BytesLike[]]): string;
1278
+ encodeFunctionData(functionFragment: "confirmPayment", values: [BytesLike, BytesLike]): string;
1279
+ encodeFunctionData(functionFragment: "confirmSettlement", values: [BytesLike, BytesLike, BytesLike]): string;
1280
+ encodeFunctionData(functionFragment: "getAffiliateInfo", values: [BytesLike]): string;
1281
+ encodeFunctionData(functionFragment: "getCurrentStage", values: [BytesLike]): string;
1282
+ encodeFunctionData(functionFragment: "getDepositAddressList", values: [BytesLike]): string;
1283
+ encodeFunctionData(functionFragment: "getFeeDetails", values: [BytesLike]): string;
1284
+ encodeFunctionData(functionFragment: "getHandler", values: [BytesLike, BytesLike]): string;
1285
+ encodeFunctionData(functionFragment: "getHandlerOf", values: [BytesLike]): string;
1286
+ encodeFunctionData(functionFragment: "getLastSignedPayment", values: [BytesLike]): string;
1287
+ encodeFunctionData(functionFragment: "getLatestMPCInfo", values: [BytesLike]): string;
1288
+ encodeFunctionData(functionFragment: "getMPCInfo", values: [BytesLike, BytesLike]): string;
1289
+ encodeFunctionData(functionFragment: "getManagementOwner", values?: undefined): string;
1290
+ encodeFunctionData(functionFragment: "getMaxAffiliateFeeRate", values: [BytesLike, BytesLike]): string;
1291
+ encodeFunctionData(functionFragment: "getPFeeRate", values?: undefined): string;
1292
+ encodeFunctionData(functionFragment: "getPMMAccounts", values: [BytesLike, BigNumberish, BigNumberish]): string;
1293
+ encodeFunctionData(functionFragment: "getPMMSelection", values: [BytesLike]): string;
1294
+ encodeFunctionData(functionFragment: "getPresigns", values: [BytesLike]): string;
1295
+ encodeFunctionData(functionFragment: "getProtocolState", values?: undefined): string;
1296
+ encodeFunctionData(functionFragment: "getSettledPayment", values: [BytesLike]): string;
1297
+ encodeFunctionData(functionFragment: "getTokens", values: [BigNumberish, BigNumberish]): string;
1298
+ encodeFunctionData(functionFragment: "getTradeData", values: [BytesLike]): string;
1299
+ encodeFunctionData(functionFragment: "isMPCNode", values: [AddressLike]): string;
1300
+ encodeFunctionData(functionFragment: "isSolver", values: [AddressLike]): string;
1301
+ encodeFunctionData(functionFragment: "isSuspended", values: [BigNumberish]): string;
1302
+ encodeFunctionData(functionFragment: "isValidNetwork", values: [BytesLike]): string;
1303
+ encodeFunctionData(functionFragment: "isValidPMM", values: [BytesLike]): string;
1304
+ encodeFunctionData(functionFragment: "isValidPMMAccount", values: [BytesLike, AddressLike]): string;
1305
+ encodeFunctionData(functionFragment: "isValidPubkey", values: [BytesLike, BytesLike]): string;
1306
+ encodeFunctionData(functionFragment: "isValidToken", values: [BytesLike, BytesLike]): string;
1307
+ encodeFunctionData(functionFragment: "management", values?: undefined): string;
1308
+ encodeFunctionData(functionFragment: "numOfPMMAccounts", values: [BytesLike]): string;
1309
+ encodeFunctionData(functionFragment: "numOfSupportedTokens", values?: undefined): string;
1310
+ encodeFunctionData(functionFragment: "selectPMM", values: [BytesLike, ITypes.PMMSelectionStruct]): string;
1311
+ encodeFunctionData(functionFragment: "setManagement", values: [AddressLike]): string;
1312
+ encodeFunctionData(functionFragment: "setRoute", values: [AddressLike, BytesLike, BytesLike]): string;
1313
+ encodeFunctionData(functionFragment: "submitTrade", values: [
1314
+ BytesLike,
1315
+ ITypes.TradeDataStruct,
1316
+ ITypes.AffiliateStruct,
1317
+ ITypes.PresignStruct[]
1318
+ ]): string;
1319
+ encodeFunctionData(functionFragment: "version", values: [AddressLike]): string;
1320
+ decodeFunctionResult(functionFragment: "SIGNER", data: BytesLike): Result;
1321
+ decodeFunctionResult(functionFragment: "bundlePayment", data: BytesLike): Result;
1322
+ decodeFunctionResult(functionFragment: "confirmDeposit", data: BytesLike): Result;
1323
+ decodeFunctionResult(functionFragment: "confirmPayment", data: BytesLike): Result;
1324
+ decodeFunctionResult(functionFragment: "confirmSettlement", data: BytesLike): Result;
1325
+ decodeFunctionResult(functionFragment: "getAffiliateInfo", data: BytesLike): Result;
1326
+ decodeFunctionResult(functionFragment: "getCurrentStage", data: BytesLike): Result;
1327
+ decodeFunctionResult(functionFragment: "getDepositAddressList", data: BytesLike): Result;
1328
+ decodeFunctionResult(functionFragment: "getFeeDetails", data: BytesLike): Result;
1329
+ decodeFunctionResult(functionFragment: "getHandler", data: BytesLike): Result;
1330
+ decodeFunctionResult(functionFragment: "getHandlerOf", data: BytesLike): Result;
1331
+ decodeFunctionResult(functionFragment: "getLastSignedPayment", data: BytesLike): Result;
1332
+ decodeFunctionResult(functionFragment: "getLatestMPCInfo", data: BytesLike): Result;
1333
+ decodeFunctionResult(functionFragment: "getMPCInfo", data: BytesLike): Result;
1334
+ decodeFunctionResult(functionFragment: "getManagementOwner", data: BytesLike): Result;
1335
+ decodeFunctionResult(functionFragment: "getMaxAffiliateFeeRate", data: BytesLike): Result;
1336
+ decodeFunctionResult(functionFragment: "getPFeeRate", data: BytesLike): Result;
1337
+ decodeFunctionResult(functionFragment: "getPMMAccounts", data: BytesLike): Result;
1338
+ decodeFunctionResult(functionFragment: "getPMMSelection", data: BytesLike): Result;
1339
+ decodeFunctionResult(functionFragment: "getPresigns", data: BytesLike): Result;
1340
+ decodeFunctionResult(functionFragment: "getProtocolState", data: BytesLike): Result;
1341
+ decodeFunctionResult(functionFragment: "getSettledPayment", data: BytesLike): Result;
1342
+ decodeFunctionResult(functionFragment: "getTokens", data: BytesLike): Result;
1343
+ decodeFunctionResult(functionFragment: "getTradeData", data: BytesLike): Result;
1344
+ decodeFunctionResult(functionFragment: "isMPCNode", data: BytesLike): Result;
1345
+ decodeFunctionResult(functionFragment: "isSolver", data: BytesLike): Result;
1346
+ decodeFunctionResult(functionFragment: "isSuspended", data: BytesLike): Result;
1347
+ decodeFunctionResult(functionFragment: "isValidNetwork", data: BytesLike): Result;
1348
+ decodeFunctionResult(functionFragment: "isValidPMM", data: BytesLike): Result;
1349
+ decodeFunctionResult(functionFragment: "isValidPMMAccount", data: BytesLike): Result;
1350
+ decodeFunctionResult(functionFragment: "isValidPubkey", data: BytesLike): Result;
1351
+ decodeFunctionResult(functionFragment: "isValidToken", data: BytesLike): Result;
1352
+ decodeFunctionResult(functionFragment: "management", data: BytesLike): Result;
1353
+ decodeFunctionResult(functionFragment: "numOfPMMAccounts", data: BytesLike): Result;
1354
+ decodeFunctionResult(functionFragment: "numOfSupportedTokens", data: BytesLike): Result;
1355
+ decodeFunctionResult(functionFragment: "selectPMM", data: BytesLike): Result;
1356
+ decodeFunctionResult(functionFragment: "setManagement", data: BytesLike): Result;
1357
+ decodeFunctionResult(functionFragment: "setRoute", data: BytesLike): Result;
1358
+ decodeFunctionResult(functionFragment: "submitTrade", data: BytesLike): Result;
1359
+ decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
1360
+ }
1361
+ declare namespace ConfirmDepositEvent {
1362
+ type InputTuple = [
1363
+ mpc: AddressLike,
1364
+ tradeId: BytesLike,
1365
+ pFeeRate: BigNumberish,
1366
+ aFeeRate: BigNumberish,
1367
+ list: BytesLike[]
1368
+ ];
1369
+ type OutputTuple = [
1370
+ mpc: string,
1371
+ tradeId: string,
1372
+ pFeeRate: bigint,
1373
+ aFeeRate: bigint,
1374
+ list: string[]
1375
+ ];
1376
+ interface OutputObject {
1377
+ mpc: string;
1378
+ tradeId: string;
1379
+ pFeeRate: bigint;
1380
+ aFeeRate: bigint;
1381
+ list: string[];
1382
+ }
1383
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1384
+ type Filter = TypedDeferredTopicFilter<Event>;
1385
+ type Log = TypedEventLog<Event>;
1386
+ type LogDescription = TypedLogDescription<Event>;
1387
+ }
1388
+ declare namespace ConfirmPaymentEvent {
1389
+ type InputTuple = [mpc: AddressLike, tradeId: BytesLike];
1390
+ type OutputTuple = [mpc: string, tradeId: string];
1391
+ interface OutputObject {
1392
+ mpc: string;
1393
+ tradeId: string;
1394
+ }
1395
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1396
+ type Filter = TypedDeferredTopicFilter<Event>;
1397
+ type Log = TypedEventLog<Event>;
1398
+ type LogDescription = TypedLogDescription<Event>;
1399
+ }
1400
+ declare namespace ConfirmSettlementEvent {
1401
+ type InputTuple = [mpc: AddressLike, tradeId: BytesLike];
1402
+ type OutputTuple = [mpc: string, tradeId: string];
1403
+ interface OutputObject {
1404
+ mpc: string;
1405
+ tradeId: string;
1406
+ }
1407
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1408
+ type Filter = TypedDeferredTopicFilter<Event>;
1409
+ type Log = TypedEventLog<Event>;
1410
+ type LogDescription = TypedLogDescription<Event>;
1411
+ }
1412
+ declare namespace MakePaymentEvent {
1413
+ type InputTuple = [operator: AddressLike, tradeId: BytesLike];
1414
+ type OutputTuple = [operator: string, tradeId: string];
1415
+ interface OutputObject {
1416
+ operator: string;
1417
+ tradeId: string;
1418
+ }
1419
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1420
+ type Filter = TypedDeferredTopicFilter<Event>;
1421
+ type Log = TypedEventLog<Event>;
1422
+ type LogDescription = TypedLogDescription<Event>;
1423
+ }
1424
+ declare namespace SelectPMMEvent {
1425
+ type InputTuple = [solver: AddressLike, tradeId: BytesLike];
1426
+ type OutputTuple = [solver: string, tradeId: string];
1427
+ interface OutputObject {
1428
+ solver: string;
1429
+ tradeId: string;
1430
+ }
1431
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1432
+ type Filter = TypedDeferredTopicFilter<Event>;
1433
+ type Log = TypedEventLog<Event>;
1434
+ type LogDescription = TypedLogDescription<Event>;
1435
+ }
1436
+ declare namespace SubmitTradeInfoEvent {
1437
+ type InputTuple = [solver: AddressLike, tradeId: BytesLike];
1438
+ type OutputTuple = [solver: string, tradeId: string];
1439
+ interface OutputObject {
1440
+ solver: string;
1441
+ tradeId: string;
1442
+ }
1443
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1444
+ type Filter = TypedDeferredTopicFilter<Event>;
1445
+ type Log = TypedEventLog<Event>;
1446
+ type LogDescription = TypedLogDescription<Event>;
1447
+ }
1448
+ declare namespace UpdatedRouteEvent {
1449
+ type InputTuple = [
1450
+ core: AddressLike,
1451
+ version: BigNumberish,
1452
+ fromChain: BytesLike,
1453
+ toChain: BytesLike
1454
+ ];
1455
+ type OutputTuple = [
1456
+ core: string,
1457
+ version: bigint,
1458
+ fromChain: string,
1459
+ toChain: string
1460
+ ];
1461
+ interface OutputObject {
1462
+ core: string;
1463
+ version: bigint;
1464
+ fromChain: string;
1465
+ toChain: string;
1466
+ }
1467
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1468
+ type Filter = TypedDeferredTopicFilter<Event>;
1469
+ type Log = TypedEventLog<Event>;
1470
+ type LogDescription = TypedLogDescription<Event>;
1471
+ }
1472
+ interface Router extends BaseContract {
1473
+ connect(runner?: ContractRunner | null): Router;
1474
+ waitForDeployment(): Promise<this>;
1475
+ interface: RouterInterface;
1476
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1477
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1478
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1479
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1480
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1481
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1482
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
1483
+ listeners(eventName?: string): Promise<Array<Listener>>;
1484
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
1485
+ SIGNER: TypedContractMethod<[], [string], "view">;
1486
+ bundlePayment: TypedContractMethod<[
1487
+ bundle: ITypes.BundlePaymentStruct
1488
+ ], [
1489
+ void
1490
+ ], "nonpayable">;
1491
+ confirmDeposit: TypedContractMethod<[
1492
+ tradeId: BytesLike,
1493
+ signature: BytesLike,
1494
+ depositFromList: BytesLike[]
1495
+ ], [
1496
+ void
1497
+ ], "nonpayable">;
1498
+ confirmPayment: TypedContractMethod<[
1499
+ tradeId: BytesLike,
1500
+ signature: BytesLike
1501
+ ], [
1502
+ void
1503
+ ], "nonpayable">;
1504
+ confirmSettlement: TypedContractMethod<[
1505
+ tradeId: BytesLike,
1506
+ releaseTxId: BytesLike,
1507
+ signature: BytesLike
1508
+ ], [
1509
+ void
1510
+ ], "nonpayable">;
1511
+ getAffiliateInfo: TypedContractMethod<[
1512
+ tradeId: BytesLike
1513
+ ], [
1514
+ ITypes.AffiliateStructOutput
1515
+ ], "view">;
1516
+ getCurrentStage: TypedContractMethod<[tradeId: BytesLike], [bigint], "view">;
1517
+ getDepositAddressList: TypedContractMethod<[
1518
+ tradeId: BytesLike
1519
+ ], [
1520
+ string[]
1521
+ ], "view">;
1522
+ getFeeDetails: TypedContractMethod<[
1523
+ tradeId: BytesLike
1524
+ ], [
1525
+ ITypes.FeeDetailsStructOutput
1526
+ ], "view">;
1527
+ getHandler: TypedContractMethod<[
1528
+ fromChain: BytesLike,
1529
+ toChain: BytesLike
1530
+ ], [
1531
+ [string, string] & {
1532
+ handler: string;
1533
+ handlerType: string;
1534
+ }
1535
+ ], "view">;
1536
+ getHandlerOf: TypedContractMethod<[
1537
+ tradeId: BytesLike
1538
+ ], [
1539
+ [string, string] & {
1540
+ handler: string;
1541
+ handlerType: string;
1542
+ }
1543
+ ], "view">;
1544
+ getLastSignedPayment: TypedContractMethod<[
1545
+ tradeId: BytesLike
1546
+ ], [
1547
+ bigint
1548
+ ], "view">;
1549
+ getLatestMPCInfo: TypedContractMethod<[
1550
+ networkId: BytesLike
1551
+ ], [
1552
+ ITypes.MPCInfoStructOutput
1553
+ ], "view">;
1554
+ getMPCInfo: TypedContractMethod<[
1555
+ networkId: BytesLike,
1556
+ pubkey: BytesLike
1557
+ ], [
1558
+ ITypes.MPCInfoStructOutput
1559
+ ], "view">;
1560
+ getManagementOwner: TypedContractMethod<[], [string], "view">;
1561
+ getMaxAffiliateFeeRate: TypedContractMethod<[
1562
+ fromChain: BytesLike,
1563
+ toChain: BytesLike
1564
+ ], [
1565
+ bigint
1566
+ ], "view">;
1567
+ getPFeeRate: TypedContractMethod<[], [bigint], "view">;
1568
+ getPMMAccounts: TypedContractMethod<[
1569
+ pmmId: BytesLike,
1570
+ fromIdx: BigNumberish,
1571
+ toIdx: BigNumberish
1572
+ ], [
1573
+ string[]
1574
+ ], "view">;
1575
+ getPMMSelection: TypedContractMethod<[
1576
+ tradeId: BytesLike
1577
+ ], [
1578
+ ITypes.PMMSelectionStructOutput
1579
+ ], "view">;
1580
+ getPresigns: TypedContractMethod<[
1581
+ tradeId: BytesLike
1582
+ ], [
1583
+ ITypes.PresignStructOutput[]
1584
+ ], "view">;
1585
+ getProtocolState: TypedContractMethod<[], [bigint], "view">;
1586
+ getSettledPayment: TypedContractMethod<[
1587
+ tradeId: BytesLike
1588
+ ], [
1589
+ ITypes.SettledPaymentStructOutput
1590
+ ], "view">;
1591
+ getTokens: TypedContractMethod<[
1592
+ fromIdx: BigNumberish,
1593
+ toIdx: BigNumberish
1594
+ ], [
1595
+ ITypes.TokenInfoStructOutput[]
1596
+ ], "view">;
1597
+ getTradeData: TypedContractMethod<[
1598
+ tradeId: BytesLike
1599
+ ], [
1600
+ ITypes.TradeDataStructOutput
1601
+ ], "view">;
1602
+ isMPCNode: TypedContractMethod<[account: AddressLike], [boolean], "view">;
1603
+ isSolver: TypedContractMethod<[account: AddressLike], [boolean], "view">;
1604
+ isSuspended: TypedContractMethod<[stage: BigNumberish], [boolean], "view">;
1605
+ isValidNetwork: TypedContractMethod<[
1606
+ networkId: BytesLike
1607
+ ], [
1608
+ boolean
1609
+ ], "view">;
1610
+ isValidPMM: TypedContractMethod<[pmmId: BytesLike], [boolean], "view">;
1611
+ isValidPMMAccount: TypedContractMethod<[
1612
+ pmmId: BytesLike,
1613
+ account: AddressLike
1614
+ ], [
1615
+ boolean
1616
+ ], "view">;
1617
+ isValidPubkey: TypedContractMethod<[
1618
+ networkId: BytesLike,
1619
+ pubkey: BytesLike
1620
+ ], [
1621
+ boolean
1622
+ ], "view">;
1623
+ isValidToken: TypedContractMethod<[
1624
+ networkId: BytesLike,
1625
+ tokenId: BytesLike
1626
+ ], [
1627
+ boolean
1628
+ ], "view">;
1629
+ management: TypedContractMethod<[], [string], "view">;
1630
+ numOfPMMAccounts: TypedContractMethod<[pmmId: BytesLike], [bigint], "view">;
1631
+ numOfSupportedTokens: TypedContractMethod<[], [bigint], "view">;
1632
+ selectPMM: TypedContractMethod<[
1633
+ tradeId: BytesLike,
1634
+ info: ITypes.PMMSelectionStruct
1635
+ ], [
1636
+ void
1637
+ ], "nonpayable">;
1638
+ setManagement: TypedContractMethod<[
1639
+ newManagement: AddressLike
1640
+ ], [
1641
+ void
1642
+ ], "nonpayable">;
1643
+ setRoute: TypedContractMethod<[
1644
+ core: AddressLike,
1645
+ fromChain: BytesLike,
1646
+ toChain: BytesLike
1647
+ ], [
1648
+ void
1649
+ ], "nonpayable">;
1650
+ submitTrade: TypedContractMethod<[
1651
+ tradeId: BytesLike,
1652
+ tradeData: ITypes.TradeDataStruct,
1653
+ affiliateInfo: ITypes.AffiliateStruct,
1654
+ presignList: ITypes.PresignStruct[]
1655
+ ], [
1656
+ void
1657
+ ], "nonpayable">;
1658
+ version: TypedContractMethod<[arg0: AddressLike], [bigint], "view">;
1659
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
1660
+ getFunction(nameOrSignature: "SIGNER"): TypedContractMethod<[], [string], "view">;
1661
+ getFunction(nameOrSignature: "bundlePayment"): TypedContractMethod<[
1662
+ bundle: ITypes.BundlePaymentStruct
1663
+ ], [
1664
+ void
1665
+ ], "nonpayable">;
1666
+ getFunction(nameOrSignature: "confirmDeposit"): TypedContractMethod<[
1667
+ tradeId: BytesLike,
1668
+ signature: BytesLike,
1669
+ depositFromList: BytesLike[]
1670
+ ], [
1671
+ void
1672
+ ], "nonpayable">;
1673
+ getFunction(nameOrSignature: "confirmPayment"): TypedContractMethod<[
1674
+ tradeId: BytesLike,
1675
+ signature: BytesLike
1676
+ ], [
1677
+ void
1678
+ ], "nonpayable">;
1679
+ getFunction(nameOrSignature: "confirmSettlement"): TypedContractMethod<[
1680
+ tradeId: BytesLike,
1681
+ releaseTxId: BytesLike,
1682
+ signature: BytesLike
1683
+ ], [
1684
+ void
1685
+ ], "nonpayable">;
1686
+ getFunction(nameOrSignature: "getAffiliateInfo"): TypedContractMethod<[
1687
+ tradeId: BytesLike
1688
+ ], [
1689
+ ITypes.AffiliateStructOutput
1690
+ ], "view">;
1691
+ getFunction(nameOrSignature: "getCurrentStage"): TypedContractMethod<[tradeId: BytesLike], [bigint], "view">;
1692
+ getFunction(nameOrSignature: "getDepositAddressList"): TypedContractMethod<[tradeId: BytesLike], [string[]], "view">;
1693
+ getFunction(nameOrSignature: "getFeeDetails"): TypedContractMethod<[
1694
+ tradeId: BytesLike
1695
+ ], [
1696
+ ITypes.FeeDetailsStructOutput
1697
+ ], "view">;
1698
+ getFunction(nameOrSignature: "getHandler"): TypedContractMethod<[
1699
+ fromChain: BytesLike,
1700
+ toChain: BytesLike
1701
+ ], [
1702
+ [string, string] & {
1703
+ handler: string;
1704
+ handlerType: string;
1705
+ }
1706
+ ], "view">;
1707
+ getFunction(nameOrSignature: "getHandlerOf"): TypedContractMethod<[
1708
+ tradeId: BytesLike
1709
+ ], [
1710
+ [string, string] & {
1711
+ handler: string;
1712
+ handlerType: string;
1713
+ }
1714
+ ], "view">;
1715
+ getFunction(nameOrSignature: "getLastSignedPayment"): TypedContractMethod<[tradeId: BytesLike], [bigint], "view">;
1716
+ getFunction(nameOrSignature: "getLatestMPCInfo"): TypedContractMethod<[
1717
+ networkId: BytesLike
1718
+ ], [
1719
+ ITypes.MPCInfoStructOutput
1720
+ ], "view">;
1721
+ getFunction(nameOrSignature: "getMPCInfo"): TypedContractMethod<[
1722
+ networkId: BytesLike,
1723
+ pubkey: BytesLike
1724
+ ], [
1725
+ ITypes.MPCInfoStructOutput
1726
+ ], "view">;
1727
+ getFunction(nameOrSignature: "getManagementOwner"): TypedContractMethod<[], [string], "view">;
1728
+ getFunction(nameOrSignature: "getMaxAffiliateFeeRate"): TypedContractMethod<[
1729
+ fromChain: BytesLike,
1730
+ toChain: BytesLike
1731
+ ], [
1732
+ bigint
1733
+ ], "view">;
1734
+ getFunction(nameOrSignature: "getPFeeRate"): TypedContractMethod<[], [bigint], "view">;
1735
+ getFunction(nameOrSignature: "getPMMAccounts"): TypedContractMethod<[
1736
+ pmmId: BytesLike,
1737
+ fromIdx: BigNumberish,
1738
+ toIdx: BigNumberish
1739
+ ], [
1740
+ string[]
1741
+ ], "view">;
1742
+ getFunction(nameOrSignature: "getPMMSelection"): TypedContractMethod<[
1743
+ tradeId: BytesLike
1744
+ ], [
1745
+ ITypes.PMMSelectionStructOutput
1746
+ ], "view">;
1747
+ getFunction(nameOrSignature: "getPresigns"): TypedContractMethod<[
1748
+ tradeId: BytesLike
1749
+ ], [
1750
+ ITypes.PresignStructOutput[]
1751
+ ], "view">;
1752
+ getFunction(nameOrSignature: "getProtocolState"): TypedContractMethod<[], [bigint], "view">;
1753
+ getFunction(nameOrSignature: "getSettledPayment"): TypedContractMethod<[
1754
+ tradeId: BytesLike
1755
+ ], [
1756
+ ITypes.SettledPaymentStructOutput
1757
+ ], "view">;
1758
+ getFunction(nameOrSignature: "getTokens"): TypedContractMethod<[
1759
+ fromIdx: BigNumberish,
1760
+ toIdx: BigNumberish
1761
+ ], [
1762
+ ITypes.TokenInfoStructOutput[]
1763
+ ], "view">;
1764
+ getFunction(nameOrSignature: "getTradeData"): TypedContractMethod<[
1765
+ tradeId: BytesLike
1766
+ ], [
1767
+ ITypes.TradeDataStructOutput
1768
+ ], "view">;
1769
+ getFunction(nameOrSignature: "isMPCNode"): TypedContractMethod<[account: AddressLike], [boolean], "view">;
1770
+ getFunction(nameOrSignature: "isSolver"): TypedContractMethod<[account: AddressLike], [boolean], "view">;
1771
+ getFunction(nameOrSignature: "isSuspended"): TypedContractMethod<[stage: BigNumberish], [boolean], "view">;
1772
+ getFunction(nameOrSignature: "isValidNetwork"): TypedContractMethod<[networkId: BytesLike], [boolean], "view">;
1773
+ getFunction(nameOrSignature: "isValidPMM"): TypedContractMethod<[pmmId: BytesLike], [boolean], "view">;
1774
+ getFunction(nameOrSignature: "isValidPMMAccount"): TypedContractMethod<[
1775
+ pmmId: BytesLike,
1776
+ account: AddressLike
1777
+ ], [
1778
+ boolean
1779
+ ], "view">;
1780
+ getFunction(nameOrSignature: "isValidPubkey"): TypedContractMethod<[
1781
+ networkId: BytesLike,
1782
+ pubkey: BytesLike
1783
+ ], [
1784
+ boolean
1785
+ ], "view">;
1786
+ getFunction(nameOrSignature: "isValidToken"): TypedContractMethod<[
1787
+ networkId: BytesLike,
1788
+ tokenId: BytesLike
1789
+ ], [
1790
+ boolean
1791
+ ], "view">;
1792
+ getFunction(nameOrSignature: "management"): TypedContractMethod<[], [string], "view">;
1793
+ getFunction(nameOrSignature: "numOfPMMAccounts"): TypedContractMethod<[pmmId: BytesLike], [bigint], "view">;
1794
+ getFunction(nameOrSignature: "numOfSupportedTokens"): TypedContractMethod<[], [bigint], "view">;
1795
+ getFunction(nameOrSignature: "selectPMM"): TypedContractMethod<[
1796
+ tradeId: BytesLike,
1797
+ info: ITypes.PMMSelectionStruct
1798
+ ], [
1799
+ void
1800
+ ], "nonpayable">;
1801
+ getFunction(nameOrSignature: "setManagement"): TypedContractMethod<[newManagement: AddressLike], [void], "nonpayable">;
1802
+ getFunction(nameOrSignature: "setRoute"): TypedContractMethod<[
1803
+ core: AddressLike,
1804
+ fromChain: BytesLike,
1805
+ toChain: BytesLike
1806
+ ], [
1807
+ void
1808
+ ], "nonpayable">;
1809
+ getFunction(nameOrSignature: "submitTrade"): TypedContractMethod<[
1810
+ tradeId: BytesLike,
1811
+ tradeData: ITypes.TradeDataStruct,
1812
+ affiliateInfo: ITypes.AffiliateStruct,
1813
+ presignList: ITypes.PresignStruct[]
1814
+ ], [
1815
+ void
1816
+ ], "nonpayable">;
1817
+ getFunction(nameOrSignature: "version"): TypedContractMethod<[arg0: AddressLike], [bigint], "view">;
1818
+ getEvent(key: "ConfirmDeposit"): TypedContractEvent<ConfirmDepositEvent.InputTuple, ConfirmDepositEvent.OutputTuple, ConfirmDepositEvent.OutputObject>;
1819
+ getEvent(key: "ConfirmPayment"): TypedContractEvent<ConfirmPaymentEvent.InputTuple, ConfirmPaymentEvent.OutputTuple, ConfirmPaymentEvent.OutputObject>;
1820
+ getEvent(key: "ConfirmSettlement"): TypedContractEvent<ConfirmSettlementEvent.InputTuple, ConfirmSettlementEvent.OutputTuple, ConfirmSettlementEvent.OutputObject>;
1821
+ getEvent(key: "MakePayment"): TypedContractEvent<MakePaymentEvent.InputTuple, MakePaymentEvent.OutputTuple, MakePaymentEvent.OutputObject>;
1822
+ getEvent(key: "SelectPMM"): TypedContractEvent<SelectPMMEvent.InputTuple, SelectPMMEvent.OutputTuple, SelectPMMEvent.OutputObject>;
1823
+ getEvent(key: "SubmitTradeInfo"): TypedContractEvent<SubmitTradeInfoEvent.InputTuple, SubmitTradeInfoEvent.OutputTuple, SubmitTradeInfoEvent.OutputObject>;
1824
+ getEvent(key: "UpdatedRoute"): TypedContractEvent<UpdatedRouteEvent.InputTuple, UpdatedRouteEvent.OutputTuple, UpdatedRouteEvent.OutputObject>;
1825
+ filters: {
1826
+ "ConfirmDeposit(address,bytes32,uint256,uint256,bytes[])": TypedContractEvent<ConfirmDepositEvent.InputTuple, ConfirmDepositEvent.OutputTuple, ConfirmDepositEvent.OutputObject>;
1827
+ ConfirmDeposit: TypedContractEvent<ConfirmDepositEvent.InputTuple, ConfirmDepositEvent.OutputTuple, ConfirmDepositEvent.OutputObject>;
1828
+ "ConfirmPayment(address,bytes32)": TypedContractEvent<ConfirmPaymentEvent.InputTuple, ConfirmPaymentEvent.OutputTuple, ConfirmPaymentEvent.OutputObject>;
1829
+ ConfirmPayment: TypedContractEvent<ConfirmPaymentEvent.InputTuple, ConfirmPaymentEvent.OutputTuple, ConfirmPaymentEvent.OutputObject>;
1830
+ "ConfirmSettlement(address,bytes32)": TypedContractEvent<ConfirmSettlementEvent.InputTuple, ConfirmSettlementEvent.OutputTuple, ConfirmSettlementEvent.OutputObject>;
1831
+ ConfirmSettlement: TypedContractEvent<ConfirmSettlementEvent.InputTuple, ConfirmSettlementEvent.OutputTuple, ConfirmSettlementEvent.OutputObject>;
1832
+ "MakePayment(address,bytes32)": TypedContractEvent<MakePaymentEvent.InputTuple, MakePaymentEvent.OutputTuple, MakePaymentEvent.OutputObject>;
1833
+ MakePayment: TypedContractEvent<MakePaymentEvent.InputTuple, MakePaymentEvent.OutputTuple, MakePaymentEvent.OutputObject>;
1834
+ "SelectPMM(address,bytes32)": TypedContractEvent<SelectPMMEvent.InputTuple, SelectPMMEvent.OutputTuple, SelectPMMEvent.OutputObject>;
1835
+ SelectPMM: TypedContractEvent<SelectPMMEvent.InputTuple, SelectPMMEvent.OutputTuple, SelectPMMEvent.OutputObject>;
1836
+ "SubmitTradeInfo(address,bytes32)": TypedContractEvent<SubmitTradeInfoEvent.InputTuple, SubmitTradeInfoEvent.OutputTuple, SubmitTradeInfoEvent.OutputObject>;
1837
+ SubmitTradeInfo: TypedContractEvent<SubmitTradeInfoEvent.InputTuple, SubmitTradeInfoEvent.OutputTuple, SubmitTradeInfoEvent.OutputObject>;
1838
+ "UpdatedRoute(address,uint256,bytes,bytes)": TypedContractEvent<UpdatedRouteEvent.InputTuple, UpdatedRouteEvent.OutputTuple, UpdatedRouteEvent.OutputObject>;
1839
+ UpdatedRoute: TypedContractEvent<UpdatedRouteEvent.InputTuple, UpdatedRouteEvent.OutputTuple, UpdatedRouteEvent.OutputObject>;
1840
+ };
1841
+ }
1842
+
1843
+ interface SignerInterface extends Interface {
1844
+ getFunction(nameOrSignature: "eip712Domain" | "getDepositConfirmationSigner" | "getMakePaymentSigner" | "getPMMSelectionSigner" | "getPaymentConfirmationSigner" | "getRFQSigner" | "getSettlementConfirmationSigner"): FunctionFragment;
1845
+ getEvent(nameOrSignatureOrTopic: "EIP712DomainChanged"): EventFragment;
1846
+ encodeFunctionData(functionFragment: "eip712Domain", values?: undefined): string;
1847
+ encodeFunctionData(functionFragment: "getDepositConfirmationSigner", values: [BytesLike, BytesLike, BytesLike]): string;
1848
+ encodeFunctionData(functionFragment: "getMakePaymentSigner", values: [BytesLike, BytesLike]): string;
1849
+ encodeFunctionData(functionFragment: "getPMMSelectionSigner", values: [BytesLike, BytesLike, BytesLike]): string;
1850
+ encodeFunctionData(functionFragment: "getPaymentConfirmationSigner", values: [BytesLike, BytesLike, BytesLike]): string;
1851
+ encodeFunctionData(functionFragment: "getRFQSigner", values: [BytesLike, BytesLike, BytesLike]): string;
1852
+ encodeFunctionData(functionFragment: "getSettlementConfirmationSigner", values: [BytesLike, BytesLike, BytesLike]): string;
1853
+ decodeFunctionResult(functionFragment: "eip712Domain", data: BytesLike): Result;
1854
+ decodeFunctionResult(functionFragment: "getDepositConfirmationSigner", data: BytesLike): Result;
1855
+ decodeFunctionResult(functionFragment: "getMakePaymentSigner", data: BytesLike): Result;
1856
+ decodeFunctionResult(functionFragment: "getPMMSelectionSigner", data: BytesLike): Result;
1857
+ decodeFunctionResult(functionFragment: "getPaymentConfirmationSigner", data: BytesLike): Result;
1858
+ decodeFunctionResult(functionFragment: "getRFQSigner", data: BytesLike): Result;
1859
+ decodeFunctionResult(functionFragment: "getSettlementConfirmationSigner", data: BytesLike): Result;
1860
+ }
1861
+ declare namespace EIP712DomainChangedEvent {
1862
+ type InputTuple = [];
1863
+ type OutputTuple = [];
1864
+ interface OutputObject {
1865
+ }
1866
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
1867
+ type Filter = TypedDeferredTopicFilter<Event>;
1868
+ type Log = TypedEventLog<Event>;
1869
+ type LogDescription = TypedLogDescription<Event>;
1870
+ }
1871
+ interface Signer extends BaseContract {
1872
+ connect(runner?: ContractRunner | null): Signer;
1873
+ waitForDeployment(): Promise<this>;
1874
+ interface: SignerInterface;
1875
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1876
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
1877
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1878
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1879
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
1880
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
1881
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
1882
+ listeners(eventName?: string): Promise<Array<Listener>>;
1883
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
1884
+ eip712Domain: TypedContractMethod<[
1885
+ ], [
1886
+ [
1887
+ string,
1888
+ string,
1889
+ string,
1890
+ bigint,
1891
+ string,
1892
+ string,
1893
+ bigint[]
1894
+ ] & {
1895
+ fields: string;
1896
+ name: string;
1897
+ version: string;
1898
+ chainId: bigint;
1899
+ verifyingContract: string;
1900
+ salt: string;
1901
+ extensions: bigint[];
1902
+ }
1903
+ ], "view">;
1904
+ getDepositConfirmationSigner: TypedContractMethod<[
1905
+ tradeId: BytesLike,
1906
+ infoHash: BytesLike,
1907
+ signature: BytesLike
1908
+ ], [
1909
+ string
1910
+ ], "view">;
1911
+ getMakePaymentSigner: TypedContractMethod<[
1912
+ infoHash: BytesLike,
1913
+ signature: BytesLike
1914
+ ], [
1915
+ string
1916
+ ], "view">;
1917
+ getPMMSelectionSigner: TypedContractMethod<[
1918
+ tradeId: BytesLike,
1919
+ infoHash: BytesLike,
1920
+ signature: BytesLike
1921
+ ], [
1922
+ string
1923
+ ], "view">;
1924
+ getPaymentConfirmationSigner: TypedContractMethod<[
1925
+ tradeId: BytesLike,
1926
+ infoHash: BytesLike,
1927
+ signature: BytesLike
1928
+ ], [
1929
+ string
1930
+ ], "view">;
1931
+ getRFQSigner: TypedContractMethod<[
1932
+ tradeId: BytesLike,
1933
+ infoHash: BytesLike,
1934
+ signature: BytesLike
1935
+ ], [
1936
+ string
1937
+ ], "view">;
1938
+ getSettlementConfirmationSigner: TypedContractMethod<[
1939
+ tradeId: BytesLike,
1940
+ infoHash: BytesLike,
1941
+ signature: BytesLike
1942
+ ], [
1943
+ string
1944
+ ], "view">;
1945
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
1946
+ getFunction(nameOrSignature: "eip712Domain"): TypedContractMethod<[
1947
+ ], [
1948
+ [
1949
+ string,
1950
+ string,
1951
+ string,
1952
+ bigint,
1953
+ string,
1954
+ string,
1955
+ bigint[]
1956
+ ] & {
1957
+ fields: string;
1958
+ name: string;
1959
+ version: string;
1960
+ chainId: bigint;
1961
+ verifyingContract: string;
1962
+ salt: string;
1963
+ extensions: bigint[];
1964
+ }
1965
+ ], "view">;
1966
+ getFunction(nameOrSignature: "getDepositConfirmationSigner"): TypedContractMethod<[
1967
+ tradeId: BytesLike,
1968
+ infoHash: BytesLike,
1969
+ signature: BytesLike
1970
+ ], [
1971
+ string
1972
+ ], "view">;
1973
+ getFunction(nameOrSignature: "getMakePaymentSigner"): TypedContractMethod<[
1974
+ infoHash: BytesLike,
1975
+ signature: BytesLike
1976
+ ], [
1977
+ string
1978
+ ], "view">;
1979
+ getFunction(nameOrSignature: "getPMMSelectionSigner"): TypedContractMethod<[
1980
+ tradeId: BytesLike,
1981
+ infoHash: BytesLike,
1982
+ signature: BytesLike
1983
+ ], [
1984
+ string
1985
+ ], "view">;
1986
+ getFunction(nameOrSignature: "getPaymentConfirmationSigner"): TypedContractMethod<[
1987
+ tradeId: BytesLike,
1988
+ infoHash: BytesLike,
1989
+ signature: BytesLike
1990
+ ], [
1991
+ string
1992
+ ], "view">;
1993
+ getFunction(nameOrSignature: "getRFQSigner"): TypedContractMethod<[
1994
+ tradeId: BytesLike,
1995
+ infoHash: BytesLike,
1996
+ signature: BytesLike
1997
+ ], [
1998
+ string
1999
+ ], "view">;
2000
+ getFunction(nameOrSignature: "getSettlementConfirmationSigner"): TypedContractMethod<[
2001
+ tradeId: BytesLike,
2002
+ infoHash: BytesLike,
2003
+ signature: BytesLike
2004
+ ], [
2005
+ string
2006
+ ], "view">;
2007
+ getEvent(key: "EIP712DomainChanged"): TypedContractEvent<EIP712DomainChangedEvent.InputTuple, EIP712DomainChangedEvent.OutputTuple, EIP712DomainChangedEvent.OutputObject>;
2008
+ filters: {
2009
+ "EIP712DomainChanged()": TypedContractEvent<EIP712DomainChangedEvent.InputTuple, EIP712DomainChangedEvent.OutputTuple, EIP712DomainChangedEvent.OutputObject>;
2010
+ EIP712DomainChanged: TypedContractEvent<EIP712DomainChangedEvent.InputTuple, EIP712DomainChangedEvent.OutputTuple, EIP712DomainChangedEvent.OutputObject>;
2011
+ };
2012
+ }
2013
+
2014
+ declare class ERC20__factory {
2015
+ static readonly abi: readonly [{
2016
+ readonly anonymous: false;
2017
+ readonly inputs: readonly [{
2018
+ readonly indexed: true;
2019
+ readonly internalType: "address";
2020
+ readonly name: "owner";
2021
+ readonly type: "address";
2022
+ }, {
2023
+ readonly indexed: true;
2024
+ readonly internalType: "address";
2025
+ readonly name: "spender";
2026
+ readonly type: "address";
2027
+ }, {
2028
+ readonly indexed: false;
2029
+ readonly internalType: "uint256";
2030
+ readonly name: "value";
2031
+ readonly type: "uint256";
2032
+ }];
2033
+ readonly name: "Approval";
2034
+ readonly type: "event";
2035
+ }, {
2036
+ readonly anonymous: false;
2037
+ readonly inputs: readonly [{
2038
+ readonly indexed: true;
2039
+ readonly internalType: "address";
2040
+ readonly name: "authorizer";
2041
+ readonly type: "address";
2042
+ }, {
2043
+ readonly indexed: true;
2044
+ readonly internalType: "bytes32";
2045
+ readonly name: "nonce";
2046
+ readonly type: "bytes32";
2047
+ }];
2048
+ readonly name: "AuthorizationCanceled";
2049
+ readonly type: "event";
2050
+ }, {
2051
+ readonly anonymous: false;
2052
+ readonly inputs: readonly [{
2053
+ readonly indexed: true;
2054
+ readonly internalType: "address";
2055
+ readonly name: "authorizer";
2056
+ readonly type: "address";
2057
+ }, {
2058
+ readonly indexed: true;
2059
+ readonly internalType: "bytes32";
2060
+ readonly name: "nonce";
2061
+ readonly type: "bytes32";
2062
+ }];
2063
+ readonly name: "AuthorizationUsed";
2064
+ readonly type: "event";
2065
+ }, {
2066
+ readonly anonymous: false;
2067
+ readonly inputs: readonly [{
2068
+ readonly indexed: true;
2069
+ readonly internalType: "address";
2070
+ readonly name: "_account";
2071
+ readonly type: "address";
2072
+ }];
2073
+ readonly name: "Blacklisted";
2074
+ readonly type: "event";
2075
+ }, {
2076
+ readonly anonymous: false;
2077
+ readonly inputs: readonly [{
2078
+ readonly indexed: true;
2079
+ readonly internalType: "address";
2080
+ readonly name: "newBlacklister";
2081
+ readonly type: "address";
2082
+ }];
2083
+ readonly name: "BlacklisterChanged";
2084
+ readonly type: "event";
2085
+ }, {
2086
+ readonly anonymous: false;
2087
+ readonly inputs: readonly [{
2088
+ readonly indexed: true;
2089
+ readonly internalType: "address";
2090
+ readonly name: "burner";
2091
+ readonly type: "address";
2092
+ }, {
2093
+ readonly indexed: false;
2094
+ readonly internalType: "uint256";
2095
+ readonly name: "amount";
2096
+ readonly type: "uint256";
2097
+ }];
2098
+ readonly name: "Burn";
2099
+ readonly type: "event";
2100
+ }, {
2101
+ readonly anonymous: false;
2102
+ readonly inputs: readonly [{
2103
+ readonly indexed: true;
2104
+ readonly internalType: "address";
2105
+ readonly name: "newMasterMinter";
2106
+ readonly type: "address";
2107
+ }];
2108
+ readonly name: "MasterMinterChanged";
2109
+ readonly type: "event";
2110
+ }, {
2111
+ readonly anonymous: false;
2112
+ readonly inputs: readonly [{
2113
+ readonly indexed: true;
2114
+ readonly internalType: "address";
2115
+ readonly name: "minter";
2116
+ readonly type: "address";
2117
+ }, {
2118
+ readonly indexed: true;
2119
+ readonly internalType: "address";
2120
+ readonly name: "to";
2121
+ readonly type: "address";
2122
+ }, {
2123
+ readonly indexed: false;
2124
+ readonly internalType: "uint256";
2125
+ readonly name: "amount";
2126
+ readonly type: "uint256";
2127
+ }];
2128
+ readonly name: "Mint";
2129
+ readonly type: "event";
2130
+ }, {
2131
+ readonly anonymous: false;
2132
+ readonly inputs: readonly [{
2133
+ readonly indexed: true;
2134
+ readonly internalType: "address";
2135
+ readonly name: "minter";
2136
+ readonly type: "address";
2137
+ }, {
2138
+ readonly indexed: false;
2139
+ readonly internalType: "uint256";
2140
+ readonly name: "minterAllowedAmount";
2141
+ readonly type: "uint256";
2142
+ }];
2143
+ readonly name: "MinterConfigured";
2144
+ readonly type: "event";
2145
+ }, {
2146
+ readonly anonymous: false;
2147
+ readonly inputs: readonly [{
2148
+ readonly indexed: true;
2149
+ readonly internalType: "address";
2150
+ readonly name: "oldMinter";
2151
+ readonly type: "address";
2152
+ }];
2153
+ readonly name: "MinterRemoved";
2154
+ readonly type: "event";
2155
+ }, {
2156
+ readonly anonymous: false;
2157
+ readonly inputs: readonly [{
2158
+ readonly indexed: false;
2159
+ readonly internalType: "address";
2160
+ readonly name: "previousOwner";
2161
+ readonly type: "address";
2162
+ }, {
2163
+ readonly indexed: false;
2164
+ readonly internalType: "address";
2165
+ readonly name: "newOwner";
2166
+ readonly type: "address";
2167
+ }];
2168
+ readonly name: "OwnershipTransferred";
2169
+ readonly type: "event";
2170
+ }, {
2171
+ readonly anonymous: false;
2172
+ readonly inputs: readonly [];
2173
+ readonly name: "Pause";
2174
+ readonly type: "event";
2175
+ }, {
2176
+ readonly anonymous: false;
2177
+ readonly inputs: readonly [{
2178
+ readonly indexed: true;
2179
+ readonly internalType: "address";
2180
+ readonly name: "newAddress";
2181
+ readonly type: "address";
2182
+ }];
2183
+ readonly name: "PauserChanged";
2184
+ readonly type: "event";
2185
+ }, {
2186
+ readonly anonymous: false;
2187
+ readonly inputs: readonly [{
2188
+ readonly indexed: true;
2189
+ readonly internalType: "address";
2190
+ readonly name: "newRescuer";
2191
+ readonly type: "address";
2192
+ }];
2193
+ readonly name: "RescuerChanged";
2194
+ readonly type: "event";
2195
+ }, {
2196
+ readonly anonymous: false;
2197
+ readonly inputs: readonly [{
2198
+ readonly indexed: true;
2199
+ readonly internalType: "address";
2200
+ readonly name: "from";
2201
+ readonly type: "address";
2202
+ }, {
2203
+ readonly indexed: true;
2204
+ readonly internalType: "address";
2205
+ readonly name: "to";
2206
+ readonly type: "address";
2207
+ }, {
2208
+ readonly indexed: false;
2209
+ readonly internalType: "uint256";
2210
+ readonly name: "value";
2211
+ readonly type: "uint256";
2212
+ }];
2213
+ readonly name: "Transfer";
2214
+ readonly type: "event";
2215
+ }, {
2216
+ readonly anonymous: false;
2217
+ readonly inputs: readonly [{
2218
+ readonly indexed: true;
2219
+ readonly internalType: "address";
2220
+ readonly name: "_account";
2221
+ readonly type: "address";
2222
+ }];
2223
+ readonly name: "UnBlacklisted";
2224
+ readonly type: "event";
2225
+ }, {
2226
+ readonly anonymous: false;
2227
+ readonly inputs: readonly [];
2228
+ readonly name: "Unpause";
2229
+ readonly type: "event";
2230
+ }, {
2231
+ readonly inputs: readonly [];
2232
+ readonly name: "CANCEL_AUTHORIZATION_TYPEHASH";
2233
+ readonly outputs: readonly [{
2234
+ readonly internalType: "bytes32";
2235
+ readonly name: "";
2236
+ readonly type: "bytes32";
2237
+ }];
2238
+ readonly stateMutability: "view";
2239
+ readonly type: "function";
2240
+ }, {
2241
+ readonly inputs: readonly [];
2242
+ readonly name: "DOMAIN_SEPARATOR";
2243
+ readonly outputs: readonly [{
2244
+ readonly internalType: "bytes32";
2245
+ readonly name: "";
2246
+ readonly type: "bytes32";
2247
+ }];
2248
+ readonly stateMutability: "view";
2249
+ readonly type: "function";
2250
+ }, {
2251
+ readonly inputs: readonly [];
2252
+ readonly name: "PERMIT_TYPEHASH";
2253
+ readonly outputs: readonly [{
2254
+ readonly internalType: "bytes32";
2255
+ readonly name: "";
2256
+ readonly type: "bytes32";
2257
+ }];
2258
+ readonly stateMutability: "view";
2259
+ readonly type: "function";
2260
+ }, {
2261
+ readonly inputs: readonly [];
2262
+ readonly name: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH";
2263
+ readonly outputs: readonly [{
2264
+ readonly internalType: "bytes32";
2265
+ readonly name: "";
2266
+ readonly type: "bytes32";
2267
+ }];
2268
+ readonly stateMutability: "view";
2269
+ readonly type: "function";
2270
+ }, {
2271
+ readonly inputs: readonly [];
2272
+ readonly name: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH";
2273
+ readonly outputs: readonly [{
2274
+ readonly internalType: "bytes32";
2275
+ readonly name: "";
2276
+ readonly type: "bytes32";
2277
+ }];
2278
+ readonly stateMutability: "view";
2279
+ readonly type: "function";
2280
+ }, {
2281
+ readonly inputs: readonly [{
2282
+ readonly internalType: "address";
2283
+ readonly name: "owner";
2284
+ readonly type: "address";
2285
+ }, {
2286
+ readonly internalType: "address";
2287
+ readonly name: "spender";
2288
+ readonly type: "address";
2289
+ }];
2290
+ readonly name: "allowance";
2291
+ readonly outputs: readonly [{
2292
+ readonly internalType: "uint256";
2293
+ readonly name: "";
2294
+ readonly type: "uint256";
2295
+ }];
2296
+ readonly stateMutability: "view";
2297
+ readonly type: "function";
2298
+ }, {
2299
+ readonly inputs: readonly [{
2300
+ readonly internalType: "address";
2301
+ readonly name: "spender";
2302
+ readonly type: "address";
2303
+ }, {
2304
+ readonly internalType: "uint256";
2305
+ readonly name: "value";
2306
+ readonly type: "uint256";
2307
+ }];
2308
+ readonly name: "approve";
2309
+ readonly outputs: readonly [{
2310
+ readonly internalType: "bool";
2311
+ readonly name: "";
2312
+ readonly type: "bool";
2313
+ }];
2314
+ readonly stateMutability: "nonpayable";
2315
+ readonly type: "function";
2316
+ }, {
2317
+ readonly inputs: readonly [{
2318
+ readonly internalType: "address";
2319
+ readonly name: "authorizer";
2320
+ readonly type: "address";
2321
+ }, {
2322
+ readonly internalType: "bytes32";
2323
+ readonly name: "nonce";
2324
+ readonly type: "bytes32";
2325
+ }];
2326
+ readonly name: "authorizationState";
2327
+ readonly outputs: readonly [{
2328
+ readonly internalType: "bool";
2329
+ readonly name: "";
2330
+ readonly type: "bool";
2331
+ }];
2332
+ readonly stateMutability: "view";
2333
+ readonly type: "function";
2334
+ }, {
2335
+ readonly inputs: readonly [{
2336
+ readonly internalType: "address";
2337
+ readonly name: "account";
2338
+ readonly type: "address";
2339
+ }];
2340
+ readonly name: "balanceOf";
2341
+ readonly outputs: readonly [{
2342
+ readonly internalType: "uint256";
2343
+ readonly name: "";
2344
+ readonly type: "uint256";
2345
+ }];
2346
+ readonly stateMutability: "view";
2347
+ readonly type: "function";
2348
+ }, {
2349
+ readonly inputs: readonly [{
2350
+ readonly internalType: "address";
2351
+ readonly name: "_account";
2352
+ readonly type: "address";
2353
+ }];
2354
+ readonly name: "blacklist";
2355
+ readonly outputs: readonly [];
2356
+ readonly stateMutability: "nonpayable";
2357
+ readonly type: "function";
2358
+ }, {
2359
+ readonly inputs: readonly [];
2360
+ readonly name: "blacklister";
2361
+ readonly outputs: readonly [{
2362
+ readonly internalType: "address";
2363
+ readonly name: "";
2364
+ readonly type: "address";
2365
+ }];
2366
+ readonly stateMutability: "view";
2367
+ readonly type: "function";
2368
+ }, {
2369
+ readonly inputs: readonly [{
2370
+ readonly internalType: "uint256";
2371
+ readonly name: "_amount";
2372
+ readonly type: "uint256";
2373
+ }];
2374
+ readonly name: "burn";
2375
+ readonly outputs: readonly [];
2376
+ readonly stateMutability: "nonpayable";
2377
+ readonly type: "function";
2378
+ }, {
2379
+ readonly inputs: readonly [{
2380
+ readonly internalType: "address";
2381
+ readonly name: "authorizer";
2382
+ readonly type: "address";
2383
+ }, {
2384
+ readonly internalType: "bytes32";
2385
+ readonly name: "nonce";
2386
+ readonly type: "bytes32";
2387
+ }, {
2388
+ readonly internalType: "uint8";
2389
+ readonly name: "v";
2390
+ readonly type: "uint8";
2391
+ }, {
2392
+ readonly internalType: "bytes32";
2393
+ readonly name: "r";
2394
+ readonly type: "bytes32";
2395
+ }, {
2396
+ readonly internalType: "bytes32";
2397
+ readonly name: "s";
2398
+ readonly type: "bytes32";
2399
+ }];
2400
+ readonly name: "cancelAuthorization";
2401
+ readonly outputs: readonly [];
2402
+ readonly stateMutability: "nonpayable";
2403
+ readonly type: "function";
2404
+ }, {
2405
+ readonly inputs: readonly [{
2406
+ readonly internalType: "address";
2407
+ readonly name: "authorizer";
2408
+ readonly type: "address";
2409
+ }, {
2410
+ readonly internalType: "bytes32";
2411
+ readonly name: "nonce";
2412
+ readonly type: "bytes32";
2413
+ }, {
2414
+ readonly internalType: "bytes";
2415
+ readonly name: "signature";
2416
+ readonly type: "bytes";
2417
+ }];
2418
+ readonly name: "cancelAuthorization";
2419
+ readonly outputs: readonly [];
2420
+ readonly stateMutability: "nonpayable";
2421
+ readonly type: "function";
2422
+ }, {
2423
+ readonly inputs: readonly [{
2424
+ readonly internalType: "address";
2425
+ readonly name: "minter";
2426
+ readonly type: "address";
2427
+ }, {
2428
+ readonly internalType: "uint256";
2429
+ readonly name: "minterAllowedAmount";
2430
+ readonly type: "uint256";
2431
+ }];
2432
+ readonly name: "configureMinter";
2433
+ readonly outputs: readonly [{
2434
+ readonly internalType: "bool";
2435
+ readonly name: "";
2436
+ readonly type: "bool";
2437
+ }];
2438
+ readonly stateMutability: "nonpayable";
2439
+ readonly type: "function";
2440
+ }, {
2441
+ readonly inputs: readonly [];
2442
+ readonly name: "currency";
2443
+ readonly outputs: readonly [{
2444
+ readonly internalType: "string";
2445
+ readonly name: "";
2446
+ readonly type: "string";
2447
+ }];
2448
+ readonly stateMutability: "view";
2449
+ readonly type: "function";
2450
+ }, {
2451
+ readonly inputs: readonly [];
2452
+ readonly name: "decimals";
2453
+ readonly outputs: readonly [{
2454
+ readonly internalType: "uint8";
2455
+ readonly name: "";
2456
+ readonly type: "uint8";
2457
+ }];
2458
+ readonly stateMutability: "view";
2459
+ readonly type: "function";
2460
+ }, {
2461
+ readonly inputs: readonly [{
2462
+ readonly internalType: "address";
2463
+ readonly name: "spender";
2464
+ readonly type: "address";
2465
+ }, {
2466
+ readonly internalType: "uint256";
2467
+ readonly name: "decrement";
2468
+ readonly type: "uint256";
2469
+ }];
2470
+ readonly name: "decreaseAllowance";
2471
+ readonly outputs: readonly [{
2472
+ readonly internalType: "bool";
2473
+ readonly name: "";
2474
+ readonly type: "bool";
2475
+ }];
2476
+ readonly stateMutability: "nonpayable";
2477
+ readonly type: "function";
2478
+ }, {
2479
+ readonly inputs: readonly [{
2480
+ readonly internalType: "address";
2481
+ readonly name: "spender";
2482
+ readonly type: "address";
2483
+ }, {
2484
+ readonly internalType: "uint256";
2485
+ readonly name: "increment";
2486
+ readonly type: "uint256";
2487
+ }];
2488
+ readonly name: "increaseAllowance";
2489
+ readonly outputs: readonly [{
2490
+ readonly internalType: "bool";
2491
+ readonly name: "";
2492
+ readonly type: "bool";
2493
+ }];
2494
+ readonly stateMutability: "nonpayable";
2495
+ readonly type: "function";
2496
+ }, {
2497
+ readonly inputs: readonly [{
2498
+ readonly internalType: "string";
2499
+ readonly name: "tokenName";
2500
+ readonly type: "string";
2501
+ }, {
2502
+ readonly internalType: "string";
2503
+ readonly name: "tokenSymbol";
2504
+ readonly type: "string";
2505
+ }, {
2506
+ readonly internalType: "string";
2507
+ readonly name: "tokenCurrency";
2508
+ readonly type: "string";
2509
+ }, {
2510
+ readonly internalType: "uint8";
2511
+ readonly name: "tokenDecimals";
2512
+ readonly type: "uint8";
2513
+ }, {
2514
+ readonly internalType: "address";
2515
+ readonly name: "newMasterMinter";
2516
+ readonly type: "address";
2517
+ }, {
2518
+ readonly internalType: "address";
2519
+ readonly name: "newPauser";
2520
+ readonly type: "address";
2521
+ }, {
2522
+ readonly internalType: "address";
2523
+ readonly name: "newBlacklister";
2524
+ readonly type: "address";
2525
+ }, {
2526
+ readonly internalType: "address";
2527
+ readonly name: "newOwner";
2528
+ readonly type: "address";
2529
+ }];
2530
+ readonly name: "initialize";
2531
+ readonly outputs: readonly [];
2532
+ readonly stateMutability: "nonpayable";
2533
+ readonly type: "function";
2534
+ }, {
2535
+ readonly inputs: readonly [{
2536
+ readonly internalType: "string";
2537
+ readonly name: "newName";
2538
+ readonly type: "string";
2539
+ }];
2540
+ readonly name: "initializeV2";
2541
+ readonly outputs: readonly [];
2542
+ readonly stateMutability: "nonpayable";
2543
+ readonly type: "function";
2544
+ }, {
2545
+ readonly inputs: readonly [{
2546
+ readonly internalType: "address";
2547
+ readonly name: "lostAndFound";
2548
+ readonly type: "address";
2549
+ }];
2550
+ readonly name: "initializeV2_1";
2551
+ readonly outputs: readonly [];
2552
+ readonly stateMutability: "nonpayable";
2553
+ readonly type: "function";
2554
+ }, {
2555
+ readonly inputs: readonly [{
2556
+ readonly internalType: "address[]";
2557
+ readonly name: "accountsToBlacklist";
2558
+ readonly type: "address[]";
2559
+ }, {
2560
+ readonly internalType: "string";
2561
+ readonly name: "newSymbol";
2562
+ readonly type: "string";
2563
+ }];
2564
+ readonly name: "initializeV2_2";
2565
+ readonly outputs: readonly [];
2566
+ readonly stateMutability: "nonpayable";
2567
+ readonly type: "function";
2568
+ }, {
2569
+ readonly inputs: readonly [{
2570
+ readonly internalType: "address";
2571
+ readonly name: "_account";
2572
+ readonly type: "address";
2573
+ }];
2574
+ readonly name: "isBlacklisted";
2575
+ readonly outputs: readonly [{
2576
+ readonly internalType: "bool";
2577
+ readonly name: "";
2578
+ readonly type: "bool";
2579
+ }];
2580
+ readonly stateMutability: "view";
2581
+ readonly type: "function";
2582
+ }, {
2583
+ readonly inputs: readonly [{
2584
+ readonly internalType: "address";
2585
+ readonly name: "account";
2586
+ readonly type: "address";
2587
+ }];
2588
+ readonly name: "isMinter";
2589
+ readonly outputs: readonly [{
2590
+ readonly internalType: "bool";
2591
+ readonly name: "";
2592
+ readonly type: "bool";
2593
+ }];
2594
+ readonly stateMutability: "view";
2595
+ readonly type: "function";
2596
+ }, {
2597
+ readonly inputs: readonly [];
2598
+ readonly name: "masterMinter";
2599
+ readonly outputs: readonly [{
2600
+ readonly internalType: "address";
2601
+ readonly name: "";
2602
+ readonly type: "address";
2603
+ }];
2604
+ readonly stateMutability: "view";
2605
+ readonly type: "function";
2606
+ }, {
2607
+ readonly inputs: readonly [{
2608
+ readonly internalType: "address";
2609
+ readonly name: "_to";
2610
+ readonly type: "address";
2611
+ }, {
2612
+ readonly internalType: "uint256";
2613
+ readonly name: "_amount";
2614
+ readonly type: "uint256";
2615
+ }];
2616
+ readonly name: "mint";
2617
+ readonly outputs: readonly [{
2618
+ readonly internalType: "bool";
2619
+ readonly name: "";
2620
+ readonly type: "bool";
2621
+ }];
2622
+ readonly stateMutability: "nonpayable";
2623
+ readonly type: "function";
2624
+ }, {
2625
+ readonly inputs: readonly [{
2626
+ readonly internalType: "address";
2627
+ readonly name: "minter";
2628
+ readonly type: "address";
2629
+ }];
2630
+ readonly name: "minterAllowance";
2631
+ readonly outputs: readonly [{
2632
+ readonly internalType: "uint256";
2633
+ readonly name: "";
2634
+ readonly type: "uint256";
2635
+ }];
2636
+ readonly stateMutability: "view";
2637
+ readonly type: "function";
2638
+ }, {
2639
+ readonly inputs: readonly [];
2640
+ readonly name: "name";
2641
+ readonly outputs: readonly [{
2642
+ readonly internalType: "string";
2643
+ readonly name: "";
2644
+ readonly type: "string";
2645
+ }];
2646
+ readonly stateMutability: "view";
2647
+ readonly type: "function";
2648
+ }, {
2649
+ readonly inputs: readonly [{
2650
+ readonly internalType: "address";
2651
+ readonly name: "owner";
2652
+ readonly type: "address";
2653
+ }];
2654
+ readonly name: "nonces";
2655
+ readonly outputs: readonly [{
2656
+ readonly internalType: "uint256";
2657
+ readonly name: "";
2658
+ readonly type: "uint256";
2659
+ }];
2660
+ readonly stateMutability: "view";
2661
+ readonly type: "function";
2662
+ }, {
2663
+ readonly inputs: readonly [];
2664
+ readonly name: "owner";
2665
+ readonly outputs: readonly [{
2666
+ readonly internalType: "address";
2667
+ readonly name: "";
2668
+ readonly type: "address";
2669
+ }];
2670
+ readonly stateMutability: "view";
2671
+ readonly type: "function";
2672
+ }, {
2673
+ readonly inputs: readonly [];
2674
+ readonly name: "pause";
2675
+ readonly outputs: readonly [];
2676
+ readonly stateMutability: "nonpayable";
2677
+ readonly type: "function";
2678
+ }, {
2679
+ readonly inputs: readonly [];
2680
+ readonly name: "paused";
2681
+ readonly outputs: readonly [{
2682
+ readonly internalType: "bool";
2683
+ readonly name: "";
2684
+ readonly type: "bool";
2685
+ }];
2686
+ readonly stateMutability: "view";
2687
+ readonly type: "function";
2688
+ }, {
2689
+ readonly inputs: readonly [];
2690
+ readonly name: "pauser";
2691
+ readonly outputs: readonly [{
2692
+ readonly internalType: "address";
2693
+ readonly name: "";
2694
+ readonly type: "address";
2695
+ }];
2696
+ readonly stateMutability: "view";
2697
+ readonly type: "function";
2698
+ }, {
2699
+ readonly inputs: readonly [{
2700
+ readonly internalType: "address";
2701
+ readonly name: "owner";
2702
+ readonly type: "address";
2703
+ }, {
2704
+ readonly internalType: "address";
2705
+ readonly name: "spender";
2706
+ readonly type: "address";
2707
+ }, {
2708
+ readonly internalType: "uint256";
2709
+ readonly name: "value";
2710
+ readonly type: "uint256";
2711
+ }, {
2712
+ readonly internalType: "uint256";
2713
+ readonly name: "deadline";
2714
+ readonly type: "uint256";
2715
+ }, {
2716
+ readonly internalType: "bytes";
2717
+ readonly name: "signature";
2718
+ readonly type: "bytes";
2719
+ }];
2720
+ readonly name: "permit";
2721
+ readonly outputs: readonly [];
2722
+ readonly stateMutability: "nonpayable";
2723
+ readonly type: "function";
2724
+ }, {
2725
+ readonly inputs: readonly [{
2726
+ readonly internalType: "address";
2727
+ readonly name: "owner";
2728
+ readonly type: "address";
2729
+ }, {
2730
+ readonly internalType: "address";
2731
+ readonly name: "spender";
2732
+ readonly type: "address";
2733
+ }, {
2734
+ readonly internalType: "uint256";
2735
+ readonly name: "value";
2736
+ readonly type: "uint256";
2737
+ }, {
2738
+ readonly internalType: "uint256";
2739
+ readonly name: "deadline";
2740
+ readonly type: "uint256";
2741
+ }, {
2742
+ readonly internalType: "uint8";
2743
+ readonly name: "v";
2744
+ readonly type: "uint8";
2745
+ }, {
2746
+ readonly internalType: "bytes32";
2747
+ readonly name: "r";
2748
+ readonly type: "bytes32";
2749
+ }, {
2750
+ readonly internalType: "bytes32";
2751
+ readonly name: "s";
2752
+ readonly type: "bytes32";
2753
+ }];
2754
+ readonly name: "permit";
2755
+ readonly outputs: readonly [];
2756
+ readonly stateMutability: "nonpayable";
2757
+ readonly type: "function";
2758
+ }, {
2759
+ readonly inputs: readonly [{
2760
+ readonly internalType: "address";
2761
+ readonly name: "from";
2762
+ readonly type: "address";
2763
+ }, {
2764
+ readonly internalType: "address";
2765
+ readonly name: "to";
2766
+ readonly type: "address";
2767
+ }, {
2768
+ readonly internalType: "uint256";
2769
+ readonly name: "value";
2770
+ readonly type: "uint256";
2771
+ }, {
2772
+ readonly internalType: "uint256";
2773
+ readonly name: "validAfter";
2774
+ readonly type: "uint256";
2775
+ }, {
2776
+ readonly internalType: "uint256";
2777
+ readonly name: "validBefore";
2778
+ readonly type: "uint256";
2779
+ }, {
2780
+ readonly internalType: "bytes32";
2781
+ readonly name: "nonce";
2782
+ readonly type: "bytes32";
2783
+ }, {
2784
+ readonly internalType: "bytes";
2785
+ readonly name: "signature";
2786
+ readonly type: "bytes";
2787
+ }];
2788
+ readonly name: "receiveWithAuthorization";
2789
+ readonly outputs: readonly [];
2790
+ readonly stateMutability: "nonpayable";
2791
+ readonly type: "function";
2792
+ }, {
2793
+ readonly inputs: readonly [{
2794
+ readonly internalType: "address";
2795
+ readonly name: "from";
2796
+ readonly type: "address";
2797
+ }, {
2798
+ readonly internalType: "address";
2799
+ readonly name: "to";
2800
+ readonly type: "address";
2801
+ }, {
2802
+ readonly internalType: "uint256";
2803
+ readonly name: "value";
2804
+ readonly type: "uint256";
2805
+ }, {
2806
+ readonly internalType: "uint256";
2807
+ readonly name: "validAfter";
2808
+ readonly type: "uint256";
2809
+ }, {
2810
+ readonly internalType: "uint256";
2811
+ readonly name: "validBefore";
2812
+ readonly type: "uint256";
2813
+ }, {
2814
+ readonly internalType: "bytes32";
2815
+ readonly name: "nonce";
2816
+ readonly type: "bytes32";
2817
+ }, {
2818
+ readonly internalType: "uint8";
2819
+ readonly name: "v";
2820
+ readonly type: "uint8";
2821
+ }, {
2822
+ readonly internalType: "bytes32";
2823
+ readonly name: "r";
2824
+ readonly type: "bytes32";
2825
+ }, {
2826
+ readonly internalType: "bytes32";
2827
+ readonly name: "s";
2828
+ readonly type: "bytes32";
2829
+ }];
2830
+ readonly name: "receiveWithAuthorization";
2831
+ readonly outputs: readonly [];
2832
+ readonly stateMutability: "nonpayable";
2833
+ readonly type: "function";
2834
+ }, {
2835
+ readonly inputs: readonly [{
2836
+ readonly internalType: "address";
2837
+ readonly name: "minter";
2838
+ readonly type: "address";
2839
+ }];
2840
+ readonly name: "removeMinter";
2841
+ readonly outputs: readonly [{
2842
+ readonly internalType: "bool";
2843
+ readonly name: "";
2844
+ readonly type: "bool";
2845
+ }];
2846
+ readonly stateMutability: "nonpayable";
2847
+ readonly type: "function";
2848
+ }, {
2849
+ readonly inputs: readonly [{
2850
+ readonly internalType: "contract IERC20";
2851
+ readonly name: "tokenContract";
2852
+ readonly type: "address";
2853
+ }, {
2854
+ readonly internalType: "address";
2855
+ readonly name: "to";
2856
+ readonly type: "address";
2857
+ }, {
2858
+ readonly internalType: "uint256";
2859
+ readonly name: "amount";
2860
+ readonly type: "uint256";
2861
+ }];
2862
+ readonly name: "rescueERC20";
2863
+ readonly outputs: readonly [];
2864
+ readonly stateMutability: "nonpayable";
2865
+ readonly type: "function";
2866
+ }, {
2867
+ readonly inputs: readonly [];
2868
+ readonly name: "rescuer";
2869
+ readonly outputs: readonly [{
2870
+ readonly internalType: "address";
2871
+ readonly name: "";
2872
+ readonly type: "address";
2873
+ }];
2874
+ readonly stateMutability: "view";
2875
+ readonly type: "function";
2876
+ }, {
2877
+ readonly inputs: readonly [];
2878
+ readonly name: "symbol";
2879
+ readonly outputs: readonly [{
2880
+ readonly internalType: "string";
2881
+ readonly name: "";
2882
+ readonly type: "string";
2883
+ }];
2884
+ readonly stateMutability: "view";
2885
+ readonly type: "function";
2886
+ }, {
2887
+ readonly inputs: readonly [];
2888
+ readonly name: "totalSupply";
2889
+ readonly outputs: readonly [{
2890
+ readonly internalType: "uint256";
2891
+ readonly name: "";
2892
+ readonly type: "uint256";
2893
+ }];
2894
+ readonly stateMutability: "view";
2895
+ readonly type: "function";
2896
+ }, {
2897
+ readonly inputs: readonly [{
2898
+ readonly internalType: "address";
2899
+ readonly name: "to";
2900
+ readonly type: "address";
2901
+ }, {
2902
+ readonly internalType: "uint256";
2903
+ readonly name: "value";
2904
+ readonly type: "uint256";
2905
+ }];
2906
+ readonly name: "transfer";
2907
+ readonly outputs: readonly [{
2908
+ readonly internalType: "bool";
2909
+ readonly name: "";
2910
+ readonly type: "bool";
2911
+ }];
2912
+ readonly stateMutability: "nonpayable";
2913
+ readonly type: "function";
2914
+ }, {
2915
+ readonly inputs: readonly [{
2916
+ readonly internalType: "address";
2917
+ readonly name: "from";
2918
+ readonly type: "address";
2919
+ }, {
2920
+ readonly internalType: "address";
2921
+ readonly name: "to";
2922
+ readonly type: "address";
2923
+ }, {
2924
+ readonly internalType: "uint256";
2925
+ readonly name: "value";
2926
+ readonly type: "uint256";
2927
+ }];
2928
+ readonly name: "transferFrom";
2929
+ readonly outputs: readonly [{
2930
+ readonly internalType: "bool";
2931
+ readonly name: "";
2932
+ readonly type: "bool";
2933
+ }];
2934
+ readonly stateMutability: "nonpayable";
2935
+ readonly type: "function";
2936
+ }, {
2937
+ readonly inputs: readonly [{
2938
+ readonly internalType: "address";
2939
+ readonly name: "newOwner";
2940
+ readonly type: "address";
2941
+ }];
2942
+ readonly name: "transferOwnership";
2943
+ readonly outputs: readonly [];
2944
+ readonly stateMutability: "nonpayable";
2945
+ readonly type: "function";
2946
+ }, {
2947
+ readonly inputs: readonly [{
2948
+ readonly internalType: "address";
2949
+ readonly name: "from";
2950
+ readonly type: "address";
2951
+ }, {
2952
+ readonly internalType: "address";
2953
+ readonly name: "to";
2954
+ readonly type: "address";
2955
+ }, {
2956
+ readonly internalType: "uint256";
2957
+ readonly name: "value";
2958
+ readonly type: "uint256";
2959
+ }, {
2960
+ readonly internalType: "uint256";
2961
+ readonly name: "validAfter";
2962
+ readonly type: "uint256";
2963
+ }, {
2964
+ readonly internalType: "uint256";
2965
+ readonly name: "validBefore";
2966
+ readonly type: "uint256";
2967
+ }, {
2968
+ readonly internalType: "bytes32";
2969
+ readonly name: "nonce";
2970
+ readonly type: "bytes32";
2971
+ }, {
2972
+ readonly internalType: "bytes";
2973
+ readonly name: "signature";
2974
+ readonly type: "bytes";
2975
+ }];
2976
+ readonly name: "transferWithAuthorization";
2977
+ readonly outputs: readonly [];
2978
+ readonly stateMutability: "nonpayable";
2979
+ readonly type: "function";
2980
+ }, {
2981
+ readonly inputs: readonly [{
2982
+ readonly internalType: "address";
2983
+ readonly name: "from";
2984
+ readonly type: "address";
2985
+ }, {
2986
+ readonly internalType: "address";
2987
+ readonly name: "to";
2988
+ readonly type: "address";
2989
+ }, {
2990
+ readonly internalType: "uint256";
2991
+ readonly name: "value";
2992
+ readonly type: "uint256";
2993
+ }, {
2994
+ readonly internalType: "uint256";
2995
+ readonly name: "validAfter";
2996
+ readonly type: "uint256";
2997
+ }, {
2998
+ readonly internalType: "uint256";
2999
+ readonly name: "validBefore";
3000
+ readonly type: "uint256";
3001
+ }, {
3002
+ readonly internalType: "bytes32";
3003
+ readonly name: "nonce";
3004
+ readonly type: "bytes32";
3005
+ }, {
3006
+ readonly internalType: "uint8";
3007
+ readonly name: "v";
3008
+ readonly type: "uint8";
3009
+ }, {
3010
+ readonly internalType: "bytes32";
3011
+ readonly name: "r";
3012
+ readonly type: "bytes32";
3013
+ }, {
3014
+ readonly internalType: "bytes32";
3015
+ readonly name: "s";
3016
+ readonly type: "bytes32";
3017
+ }];
3018
+ readonly name: "transferWithAuthorization";
3019
+ readonly outputs: readonly [];
3020
+ readonly stateMutability: "nonpayable";
3021
+ readonly type: "function";
3022
+ }, {
3023
+ readonly inputs: readonly [{
3024
+ readonly internalType: "address";
3025
+ readonly name: "_account";
3026
+ readonly type: "address";
3027
+ }];
3028
+ readonly name: "unBlacklist";
3029
+ readonly outputs: readonly [];
3030
+ readonly stateMutability: "nonpayable";
3031
+ readonly type: "function";
3032
+ }, {
3033
+ readonly inputs: readonly [];
3034
+ readonly name: "unpause";
3035
+ readonly outputs: readonly [];
3036
+ readonly stateMutability: "nonpayable";
3037
+ readonly type: "function";
3038
+ }, {
3039
+ readonly inputs: readonly [{
3040
+ readonly internalType: "address";
3041
+ readonly name: "_newBlacklister";
3042
+ readonly type: "address";
3043
+ }];
3044
+ readonly name: "updateBlacklister";
3045
+ readonly outputs: readonly [];
3046
+ readonly stateMutability: "nonpayable";
3047
+ readonly type: "function";
3048
+ }, {
3049
+ readonly inputs: readonly [{
3050
+ readonly internalType: "address";
3051
+ readonly name: "_newMasterMinter";
3052
+ readonly type: "address";
3053
+ }];
3054
+ readonly name: "updateMasterMinter";
3055
+ readonly outputs: readonly [];
3056
+ readonly stateMutability: "nonpayable";
3057
+ readonly type: "function";
3058
+ }, {
3059
+ readonly inputs: readonly [{
3060
+ readonly internalType: "address";
3061
+ readonly name: "_newPauser";
3062
+ readonly type: "address";
3063
+ }];
3064
+ readonly name: "updatePauser";
3065
+ readonly outputs: readonly [];
3066
+ readonly stateMutability: "nonpayable";
3067
+ readonly type: "function";
3068
+ }, {
3069
+ readonly inputs: readonly [{
3070
+ readonly internalType: "address";
3071
+ readonly name: "newRescuer";
3072
+ readonly type: "address";
3073
+ }];
3074
+ readonly name: "updateRescuer";
3075
+ readonly outputs: readonly [];
3076
+ readonly stateMutability: "nonpayable";
3077
+ readonly type: "function";
3078
+ }, {
3079
+ readonly inputs: readonly [];
3080
+ readonly name: "version";
3081
+ readonly outputs: readonly [{
3082
+ readonly internalType: "string";
3083
+ readonly name: "";
3084
+ readonly type: "string";
3085
+ }];
3086
+ readonly stateMutability: "pure";
3087
+ readonly type: "function";
3088
+ }];
3089
+ static createInterface(): ERC20Interface;
3090
+ static connect(address: string, runner?: ContractRunner | null): ERC20;
3091
+ }
3092
+
3093
+ declare class Payment__factory {
3094
+ static readonly abi: readonly [{
3095
+ readonly inputs: readonly [{
3096
+ readonly internalType: "address";
3097
+ readonly name: "pAddress";
3098
+ readonly type: "address";
3099
+ }];
3100
+ readonly stateMutability: "nonpayable";
3101
+ readonly type: "constructor";
3102
+ }, {
3103
+ readonly inputs: readonly [];
3104
+ readonly name: "AddressZero";
3105
+ readonly type: "error";
3106
+ }, {
3107
+ readonly inputs: readonly [];
3108
+ readonly name: "DeadlineExceeded";
3109
+ readonly type: "error";
3110
+ }, {
3111
+ readonly inputs: readonly [];
3112
+ readonly name: "FailedCall";
3113
+ readonly type: "error";
3114
+ }, {
3115
+ readonly inputs: readonly [{
3116
+ readonly internalType: "uint256";
3117
+ readonly name: "balance";
3118
+ readonly type: "uint256";
3119
+ }, {
3120
+ readonly internalType: "uint256";
3121
+ readonly name: "needed";
3122
+ readonly type: "uint256";
3123
+ }];
3124
+ readonly name: "InsufficientBalance";
3125
+ readonly type: "error";
3126
+ }, {
3127
+ readonly inputs: readonly [];
3128
+ readonly name: "InvalidPaymentAmount";
3129
+ readonly type: "error";
3130
+ }, {
3131
+ readonly inputs: readonly [];
3132
+ readonly name: "NativeCoinNotMatched";
3133
+ readonly type: "error";
3134
+ }, {
3135
+ readonly inputs: readonly [];
3136
+ readonly name: "ReentrancyGuardReentrantCall";
3137
+ readonly type: "error";
3138
+ }, {
3139
+ readonly inputs: readonly [{
3140
+ readonly internalType: "address";
3141
+ readonly name: "token";
3142
+ readonly type: "address";
3143
+ }];
3144
+ readonly name: "SafeERC20FailedOperation";
3145
+ readonly type: "error";
3146
+ }, {
3147
+ readonly inputs: readonly [];
3148
+ readonly name: "Unauthorized";
3149
+ readonly type: "error";
3150
+ }, {
3151
+ readonly anonymous: false;
3152
+ readonly inputs: readonly [{
3153
+ readonly indexed: true;
3154
+ readonly internalType: "bytes32";
3155
+ readonly name: "tradeId";
3156
+ readonly type: "bytes32";
3157
+ }, {
3158
+ readonly indexed: true;
3159
+ readonly internalType: "address";
3160
+ readonly name: "from";
3161
+ readonly type: "address";
3162
+ }, {
3163
+ readonly indexed: true;
3164
+ readonly internalType: "address";
3165
+ readonly name: "to";
3166
+ readonly type: "address";
3167
+ }, {
3168
+ readonly indexed: false;
3169
+ readonly internalType: "address";
3170
+ readonly name: "pFeeAddr";
3171
+ readonly type: "address";
3172
+ }, {
3173
+ readonly indexed: false;
3174
+ readonly internalType: "address";
3175
+ readonly name: "token";
3176
+ readonly type: "address";
3177
+ }, {
3178
+ readonly indexed: false;
3179
+ readonly internalType: "uint256";
3180
+ readonly name: "payToUser";
3181
+ readonly type: "uint256";
3182
+ }, {
3183
+ readonly indexed: false;
3184
+ readonly internalType: "uint256";
3185
+ readonly name: "totalFee";
3186
+ readonly type: "uint256";
3187
+ }];
3188
+ readonly name: "PaymentTransferred";
3189
+ readonly type: "event";
3190
+ }, {
3191
+ readonly anonymous: false;
3192
+ readonly inputs: readonly [{
3193
+ readonly indexed: true;
3194
+ readonly internalType: "address";
3195
+ readonly name: "owner";
3196
+ readonly type: "address";
3197
+ }, {
3198
+ readonly indexed: true;
3199
+ readonly internalType: "address";
3200
+ readonly name: "newProtocol";
3201
+ readonly type: "address";
3202
+ }];
3203
+ readonly name: "ProtocolUpdated";
3204
+ readonly type: "event";
3205
+ }, {
3206
+ readonly inputs: readonly [{
3207
+ readonly internalType: "bytes32";
3208
+ readonly name: "tradeId";
3209
+ readonly type: "bytes32";
3210
+ }, {
3211
+ readonly internalType: "address";
3212
+ readonly name: "token";
3213
+ readonly type: "address";
3214
+ }, {
3215
+ readonly internalType: "address";
3216
+ readonly name: "toUser";
3217
+ readonly type: "address";
3218
+ }, {
3219
+ readonly internalType: "uint256";
3220
+ readonly name: "amount";
3221
+ readonly type: "uint256";
3222
+ }, {
3223
+ readonly internalType: "uint256";
3224
+ readonly name: "totalFee";
3225
+ readonly type: "uint256";
3226
+ }, {
3227
+ readonly internalType: "uint256";
3228
+ readonly name: "deadline";
3229
+ readonly type: "uint256";
3230
+ }];
3231
+ readonly name: "payment";
3232
+ readonly outputs: readonly [];
3233
+ readonly stateMutability: "payable";
3234
+ readonly type: "function";
3235
+ }, {
3236
+ readonly inputs: readonly [];
3237
+ readonly name: "protocol";
3238
+ readonly outputs: readonly [{
3239
+ readonly internalType: "contract IProtocol";
3240
+ readonly name: "";
3241
+ readonly type: "address";
3242
+ }];
3243
+ readonly stateMutability: "view";
3244
+ readonly type: "function";
3245
+ }, {
3246
+ readonly inputs: readonly [{
3247
+ readonly internalType: "address";
3248
+ readonly name: "newProtocol";
3249
+ readonly type: "address";
3250
+ }];
3251
+ readonly name: "setProtocol";
3252
+ readonly outputs: readonly [];
3253
+ readonly stateMutability: "nonpayable";
3254
+ readonly type: "function";
3255
+ }];
3256
+ static createInterface(): PaymentInterface;
3257
+ static connect(address: string, runner?: ContractRunner | null): Payment;
3258
+ }
3259
+
3260
+ declare class Router__factory {
3261
+ static readonly abi: readonly [{
3262
+ readonly inputs: readonly [{
3263
+ readonly internalType: "contract IManagement";
3264
+ readonly name: "management_";
3265
+ readonly type: "address";
3266
+ }, {
3267
+ readonly internalType: "address";
3268
+ readonly name: "signer";
3269
+ readonly type: "address";
3270
+ }];
3271
+ readonly stateMutability: "nonpayable";
3272
+ readonly type: "constructor";
3273
+ }, {
3274
+ readonly inputs: readonly [];
3275
+ readonly name: "AddressZero";
3276
+ readonly type: "error";
3277
+ }, {
3278
+ readonly inputs: readonly [];
3279
+ readonly name: "BundlePaymentEmpty";
3280
+ readonly type: "error";
3281
+ }, {
3282
+ readonly inputs: readonly [];
3283
+ readonly name: "InconsistentCoreType";
3284
+ readonly type: "error";
3285
+ }, {
3286
+ readonly inputs: readonly [];
3287
+ readonly name: "InconsistentPMM";
3288
+ readonly type: "error";
3289
+ }, {
3290
+ readonly inputs: readonly [];
3291
+ readonly name: "RegisteredAlready";
3292
+ readonly type: "error";
3293
+ }, {
3294
+ readonly inputs: readonly [];
3295
+ readonly name: "RouteNotFound";
3296
+ readonly type: "error";
3297
+ }, {
3298
+ readonly inputs: readonly [];
3299
+ readonly name: "RouteNotSupported";
3300
+ readonly type: "error";
3301
+ }, {
3302
+ readonly inputs: readonly [];
3303
+ readonly name: "Unauthorized";
3304
+ readonly type: "error";
3305
+ }, {
3306
+ readonly anonymous: false;
3307
+ readonly inputs: readonly [{
3308
+ readonly indexed: true;
3309
+ readonly internalType: "address";
3310
+ readonly name: "mpc";
3311
+ readonly type: "address";
3312
+ }, {
3313
+ readonly indexed: true;
3314
+ readonly internalType: "bytes32";
3315
+ readonly name: "tradeId";
3316
+ readonly type: "bytes32";
3317
+ }, {
3318
+ readonly indexed: false;
3319
+ readonly internalType: "uint256";
3320
+ readonly name: "pFeeRate";
3321
+ readonly type: "uint256";
3322
+ }, {
3323
+ readonly indexed: false;
3324
+ readonly internalType: "uint256";
3325
+ readonly name: "aFeeRate";
3326
+ readonly type: "uint256";
3327
+ }, {
3328
+ readonly indexed: false;
3329
+ readonly internalType: "bytes[]";
3330
+ readonly name: "list";
3331
+ readonly type: "bytes[]";
3332
+ }];
3333
+ readonly name: "ConfirmDeposit";
3334
+ readonly type: "event";
3335
+ }, {
3336
+ readonly anonymous: false;
3337
+ readonly inputs: readonly [{
3338
+ readonly indexed: true;
3339
+ readonly internalType: "address";
3340
+ readonly name: "mpc";
3341
+ readonly type: "address";
3342
+ }, {
3343
+ readonly indexed: true;
3344
+ readonly internalType: "bytes32";
3345
+ readonly name: "tradeId";
3346
+ readonly type: "bytes32";
3347
+ }];
3348
+ readonly name: "ConfirmPayment";
3349
+ readonly type: "event";
3350
+ }, {
3351
+ readonly anonymous: false;
3352
+ readonly inputs: readonly [{
3353
+ readonly indexed: true;
3354
+ readonly internalType: "address";
3355
+ readonly name: "mpc";
3356
+ readonly type: "address";
3357
+ }, {
3358
+ readonly indexed: true;
3359
+ readonly internalType: "bytes32";
3360
+ readonly name: "tradeId";
3361
+ readonly type: "bytes32";
3362
+ }];
3363
+ readonly name: "ConfirmSettlement";
3364
+ readonly type: "event";
3365
+ }, {
3366
+ readonly anonymous: false;
3367
+ readonly inputs: readonly [{
3368
+ readonly indexed: true;
3369
+ readonly internalType: "address";
3370
+ readonly name: "operator";
3371
+ readonly type: "address";
3372
+ }, {
3373
+ readonly indexed: true;
3374
+ readonly internalType: "bytes32";
3375
+ readonly name: "tradeId";
3376
+ readonly type: "bytes32";
3377
+ }];
3378
+ readonly name: "MakePayment";
3379
+ readonly type: "event";
3380
+ }, {
3381
+ readonly anonymous: false;
3382
+ readonly inputs: readonly [{
3383
+ readonly indexed: true;
3384
+ readonly internalType: "address";
3385
+ readonly name: "solver";
3386
+ readonly type: "address";
3387
+ }, {
3388
+ readonly indexed: true;
3389
+ readonly internalType: "bytes32";
3390
+ readonly name: "tradeId";
3391
+ readonly type: "bytes32";
3392
+ }];
3393
+ readonly name: "SelectPMM";
3394
+ readonly type: "event";
3395
+ }, {
3396
+ readonly anonymous: false;
3397
+ readonly inputs: readonly [{
3398
+ readonly indexed: true;
3399
+ readonly internalType: "address";
3400
+ readonly name: "solver";
3401
+ readonly type: "address";
3402
+ }, {
3403
+ readonly indexed: true;
3404
+ readonly internalType: "bytes32";
3405
+ readonly name: "tradeId";
3406
+ readonly type: "bytes32";
3407
+ }];
3408
+ readonly name: "SubmitTradeInfo";
3409
+ readonly type: "event";
3410
+ }, {
3411
+ readonly anonymous: false;
3412
+ readonly inputs: readonly [{
3413
+ readonly indexed: true;
3414
+ readonly internalType: "address";
3415
+ readonly name: "core";
3416
+ readonly type: "address";
3417
+ }, {
3418
+ readonly indexed: true;
3419
+ readonly internalType: "uint256";
3420
+ readonly name: "version";
3421
+ readonly type: "uint256";
3422
+ }, {
3423
+ readonly indexed: false;
3424
+ readonly internalType: "bytes";
3425
+ readonly name: "fromChain";
3426
+ readonly type: "bytes";
3427
+ }, {
3428
+ readonly indexed: false;
3429
+ readonly internalType: "bytes";
3430
+ readonly name: "toChain";
3431
+ readonly type: "bytes";
3432
+ }];
3433
+ readonly name: "UpdatedRoute";
3434
+ readonly type: "event";
3435
+ }, {
3436
+ readonly inputs: readonly [];
3437
+ readonly name: "SIGNER";
3438
+ readonly outputs: readonly [{
3439
+ readonly internalType: "address";
3440
+ readonly name: "";
3441
+ readonly type: "address";
3442
+ }];
3443
+ readonly stateMutability: "view";
3444
+ readonly type: "function";
3445
+ }, {
3446
+ readonly inputs: readonly [{
3447
+ readonly components: readonly [{
3448
+ readonly internalType: "bytes32[]";
3449
+ readonly name: "tradeIds";
3450
+ readonly type: "bytes32[]";
3451
+ }, {
3452
+ readonly internalType: "uint64";
3453
+ readonly name: "signedAt";
3454
+ readonly type: "uint64";
3455
+ }, {
3456
+ readonly internalType: "uint64";
3457
+ readonly name: "startIdx";
3458
+ readonly type: "uint64";
3459
+ }, {
3460
+ readonly internalType: "bytes";
3461
+ readonly name: "paymentTxId";
3462
+ readonly type: "bytes";
3463
+ }, {
3464
+ readonly internalType: "bytes";
3465
+ readonly name: "signature";
3466
+ readonly type: "bytes";
3467
+ }];
3468
+ readonly internalType: "struct ITypes.BundlePayment";
3469
+ readonly name: "bundle";
3470
+ readonly type: "tuple";
3471
+ }];
3472
+ readonly name: "bundlePayment";
3473
+ readonly outputs: readonly [];
3474
+ readonly stateMutability: "nonpayable";
3475
+ readonly type: "function";
3476
+ }, {
3477
+ readonly inputs: readonly [{
3478
+ readonly internalType: "bytes32";
3479
+ readonly name: "tradeId";
3480
+ readonly type: "bytes32";
3481
+ }, {
3482
+ readonly internalType: "bytes";
3483
+ readonly name: "signature";
3484
+ readonly type: "bytes";
3485
+ }, {
3486
+ readonly internalType: "bytes[]";
3487
+ readonly name: "depositFromList";
3488
+ readonly type: "bytes[]";
3489
+ }];
3490
+ readonly name: "confirmDeposit";
3491
+ readonly outputs: readonly [];
3492
+ readonly stateMutability: "nonpayable";
3493
+ readonly type: "function";
3494
+ }, {
3495
+ readonly inputs: readonly [{
3496
+ readonly internalType: "bytes32";
3497
+ readonly name: "tradeId";
3498
+ readonly type: "bytes32";
3499
+ }, {
3500
+ readonly internalType: "bytes";
3501
+ readonly name: "signature";
3502
+ readonly type: "bytes";
3503
+ }];
3504
+ readonly name: "confirmPayment";
3505
+ readonly outputs: readonly [];
3506
+ readonly stateMutability: "nonpayable";
3507
+ readonly type: "function";
3508
+ }, {
3509
+ readonly inputs: readonly [{
3510
+ readonly internalType: "bytes32";
3511
+ readonly name: "tradeId";
3512
+ readonly type: "bytes32";
3513
+ }, {
3514
+ readonly internalType: "bytes";
3515
+ readonly name: "releaseTxId";
3516
+ readonly type: "bytes";
3517
+ }, {
3518
+ readonly internalType: "bytes";
3519
+ readonly name: "signature";
3520
+ readonly type: "bytes";
3521
+ }];
3522
+ readonly name: "confirmSettlement";
3523
+ readonly outputs: readonly [];
3524
+ readonly stateMutability: "nonpayable";
3525
+ readonly type: "function";
3526
+ }, {
3527
+ readonly inputs: readonly [{
3528
+ readonly internalType: "bytes32";
3529
+ readonly name: "tradeId";
3530
+ readonly type: "bytes32";
3531
+ }];
3532
+ readonly name: "getAffiliateInfo";
3533
+ readonly outputs: readonly [{
3534
+ readonly components: readonly [{
3535
+ readonly internalType: "uint256";
3536
+ readonly name: "aggregatedValue";
3537
+ readonly type: "uint256";
3538
+ }, {
3539
+ readonly internalType: "string";
3540
+ readonly name: "schema";
3541
+ readonly type: "string";
3542
+ }, {
3543
+ readonly internalType: "bytes";
3544
+ readonly name: "data";
3545
+ readonly type: "bytes";
3546
+ }];
3547
+ readonly internalType: "struct ITypes.Affiliate";
3548
+ readonly name: "";
3549
+ readonly type: "tuple";
3550
+ }];
3551
+ readonly stateMutability: "view";
3552
+ readonly type: "function";
3553
+ }, {
3554
+ readonly inputs: readonly [{
3555
+ readonly internalType: "bytes32";
3556
+ readonly name: "tradeId";
3557
+ readonly type: "bytes32";
3558
+ }];
3559
+ readonly name: "getCurrentStage";
3560
+ readonly outputs: readonly [{
3561
+ readonly internalType: "uint256";
3562
+ readonly name: "";
3563
+ readonly type: "uint256";
3564
+ }];
3565
+ readonly stateMutability: "view";
3566
+ readonly type: "function";
3567
+ }, {
3568
+ readonly inputs: readonly [{
3569
+ readonly internalType: "bytes32";
3570
+ readonly name: "tradeId";
3571
+ readonly type: "bytes32";
3572
+ }];
3573
+ readonly name: "getDepositAddressList";
3574
+ readonly outputs: readonly [{
3575
+ readonly internalType: "bytes[]";
3576
+ readonly name: "";
3577
+ readonly type: "bytes[]";
3578
+ }];
3579
+ readonly stateMutability: "view";
3580
+ readonly type: "function";
3581
+ }, {
3582
+ readonly inputs: readonly [{
3583
+ readonly internalType: "bytes32";
3584
+ readonly name: "tradeId";
3585
+ readonly type: "bytes32";
3586
+ }];
3587
+ readonly name: "getFeeDetails";
3588
+ readonly outputs: readonly [{
3589
+ readonly components: readonly [{
3590
+ readonly internalType: "uint256";
3591
+ readonly name: "totalAmount";
3592
+ readonly type: "uint256";
3593
+ }, {
3594
+ readonly internalType: "uint256";
3595
+ readonly name: "pFeeAmount";
3596
+ readonly type: "uint256";
3597
+ }, {
3598
+ readonly internalType: "uint256";
3599
+ readonly name: "aFeeAmount";
3600
+ readonly type: "uint256";
3601
+ }, {
3602
+ readonly internalType: "uint128";
3603
+ readonly name: "pFeeRate";
3604
+ readonly type: "uint128";
3605
+ }, {
3606
+ readonly internalType: "uint128";
3607
+ readonly name: "aFeeRate";
3608
+ readonly type: "uint128";
3609
+ }];
3610
+ readonly internalType: "struct ITypes.FeeDetails";
3611
+ readonly name: "";
3612
+ readonly type: "tuple";
3613
+ }];
3614
+ readonly stateMutability: "view";
3615
+ readonly type: "function";
3616
+ }, {
3617
+ readonly inputs: readonly [{
3618
+ readonly internalType: "bytes";
3619
+ readonly name: "fromChain";
3620
+ readonly type: "bytes";
3621
+ }, {
3622
+ readonly internalType: "bytes";
3623
+ readonly name: "toChain";
3624
+ readonly type: "bytes";
3625
+ }];
3626
+ readonly name: "getHandler";
3627
+ readonly outputs: readonly [{
3628
+ readonly internalType: "address";
3629
+ readonly name: "handler";
3630
+ readonly type: "address";
3631
+ }, {
3632
+ readonly internalType: "string";
3633
+ readonly name: "handlerType";
3634
+ readonly type: "string";
3635
+ }];
3636
+ readonly stateMutability: "view";
3637
+ readonly type: "function";
3638
+ }, {
3639
+ readonly inputs: readonly [{
3640
+ readonly internalType: "bytes32";
3641
+ readonly name: "tradeId";
3642
+ readonly type: "bytes32";
3643
+ }];
3644
+ readonly name: "getHandlerOf";
3645
+ readonly outputs: readonly [{
3646
+ readonly internalType: "address";
3647
+ readonly name: "handler";
3648
+ readonly type: "address";
3649
+ }, {
3650
+ readonly internalType: "string";
3651
+ readonly name: "handlerType";
3652
+ readonly type: "string";
3653
+ }];
3654
+ readonly stateMutability: "view";
3655
+ readonly type: "function";
3656
+ }, {
3657
+ readonly inputs: readonly [{
3658
+ readonly internalType: "bytes32";
3659
+ readonly name: "tradeId";
3660
+ readonly type: "bytes32";
3661
+ }];
3662
+ readonly name: "getLastSignedPayment";
3663
+ readonly outputs: readonly [{
3664
+ readonly internalType: "uint64";
3665
+ readonly name: "";
3666
+ readonly type: "uint64";
3667
+ }];
3668
+ readonly stateMutability: "view";
3669
+ readonly type: "function";
3670
+ }, {
3671
+ readonly inputs: readonly [{
3672
+ readonly internalType: "bytes";
3673
+ readonly name: "networkId";
3674
+ readonly type: "bytes";
3675
+ }];
3676
+ readonly name: "getLatestMPCInfo";
3677
+ readonly outputs: readonly [{
3678
+ readonly components: readonly [{
3679
+ readonly internalType: "address";
3680
+ readonly name: "mpcL2Address";
3681
+ readonly type: "address";
3682
+ }, {
3683
+ readonly internalType: "uint64";
3684
+ readonly name: "expireTime";
3685
+ readonly type: "uint64";
3686
+ }, {
3687
+ readonly internalType: "bytes";
3688
+ readonly name: "mpcL2Pubkey";
3689
+ readonly type: "bytes";
3690
+ }, {
3691
+ readonly internalType: "bytes";
3692
+ readonly name: "mpcAssetPubkey";
3693
+ readonly type: "bytes";
3694
+ }];
3695
+ readonly internalType: "struct ITypes.MPCInfo";
3696
+ readonly name: "";
3697
+ readonly type: "tuple";
3698
+ }];
3699
+ readonly stateMutability: "view";
3700
+ readonly type: "function";
3701
+ }, {
3702
+ readonly inputs: readonly [{
3703
+ readonly internalType: "bytes";
3704
+ readonly name: "networkId";
3705
+ readonly type: "bytes";
3706
+ }, {
3707
+ readonly internalType: "bytes";
3708
+ readonly name: "pubkey";
3709
+ readonly type: "bytes";
3710
+ }];
3711
+ readonly name: "getMPCInfo";
3712
+ readonly outputs: readonly [{
3713
+ readonly components: readonly [{
3714
+ readonly internalType: "address";
3715
+ readonly name: "mpcL2Address";
3716
+ readonly type: "address";
3717
+ }, {
3718
+ readonly internalType: "uint64";
3719
+ readonly name: "expireTime";
3720
+ readonly type: "uint64";
3721
+ }, {
3722
+ readonly internalType: "bytes";
3723
+ readonly name: "mpcL2Pubkey";
3724
+ readonly type: "bytes";
3725
+ }, {
3726
+ readonly internalType: "bytes";
3727
+ readonly name: "mpcAssetPubkey";
3728
+ readonly type: "bytes";
3729
+ }];
3730
+ readonly internalType: "struct ITypes.MPCInfo";
3731
+ readonly name: "info";
3732
+ readonly type: "tuple";
3733
+ }];
3734
+ readonly stateMutability: "view";
3735
+ readonly type: "function";
3736
+ }, {
3737
+ readonly inputs: readonly [];
3738
+ readonly name: "getManagementOwner";
3739
+ readonly outputs: readonly [{
3740
+ readonly internalType: "address";
3741
+ readonly name: "";
3742
+ readonly type: "address";
3743
+ }];
3744
+ readonly stateMutability: "view";
3745
+ readonly type: "function";
3746
+ }, {
3747
+ readonly inputs: readonly [{
3748
+ readonly internalType: "bytes";
3749
+ readonly name: "fromChain";
3750
+ readonly type: "bytes";
3751
+ }, {
3752
+ readonly internalType: "bytes";
3753
+ readonly name: "toChain";
3754
+ readonly type: "bytes";
3755
+ }];
3756
+ readonly name: "getMaxAffiliateFeeRate";
3757
+ readonly outputs: readonly [{
3758
+ readonly internalType: "uint256";
3759
+ readonly name: "";
3760
+ readonly type: "uint256";
3761
+ }];
3762
+ readonly stateMutability: "view";
3763
+ readonly type: "function";
3764
+ }, {
3765
+ readonly inputs: readonly [];
3766
+ readonly name: "getPFeeRate";
3767
+ readonly outputs: readonly [{
3768
+ readonly internalType: "uint256";
3769
+ readonly name: "";
3770
+ readonly type: "uint256";
3771
+ }];
3772
+ readonly stateMutability: "view";
3773
+ readonly type: "function";
3774
+ }, {
3775
+ readonly inputs: readonly [{
3776
+ readonly internalType: "bytes32";
3777
+ readonly name: "pmmId";
3778
+ readonly type: "bytes32";
3779
+ }, {
3780
+ readonly internalType: "uint256";
3781
+ readonly name: "fromIdx";
3782
+ readonly type: "uint256";
3783
+ }, {
3784
+ readonly internalType: "uint256";
3785
+ readonly name: "toIdx";
3786
+ readonly type: "uint256";
3787
+ }];
3788
+ readonly name: "getPMMAccounts";
3789
+ readonly outputs: readonly [{
3790
+ readonly internalType: "address[]";
3791
+ readonly name: "list";
3792
+ readonly type: "address[]";
3793
+ }];
3794
+ readonly stateMutability: "view";
3795
+ readonly type: "function";
3796
+ }, {
3797
+ readonly inputs: readonly [{
3798
+ readonly internalType: "bytes32";
3799
+ readonly name: "tradeId";
3800
+ readonly type: "bytes32";
3801
+ }];
3802
+ readonly name: "getPMMSelection";
3803
+ readonly outputs: readonly [{
3804
+ readonly components: readonly [{
3805
+ readonly components: readonly [{
3806
+ readonly internalType: "uint256";
3807
+ readonly name: "minAmountOut";
3808
+ readonly type: "uint256";
3809
+ }, {
3810
+ readonly internalType: "uint64";
3811
+ readonly name: "tradeTimeout";
3812
+ readonly type: "uint64";
3813
+ }, {
3814
+ readonly internalType: "bytes";
3815
+ readonly name: "rfqInfoSignature";
3816
+ readonly type: "bytes";
3817
+ }];
3818
+ readonly internalType: "struct ITypes.RFQInfo";
3819
+ readonly name: "rfqInfo";
3820
+ readonly type: "tuple";
3821
+ }, {
3822
+ readonly components: readonly [{
3823
+ readonly internalType: "uint256";
3824
+ readonly name: "amountOut";
3825
+ readonly type: "uint256";
3826
+ }, {
3827
+ readonly internalType: "bytes32";
3828
+ readonly name: "selectedPMMId";
3829
+ readonly type: "bytes32";
3830
+ }, {
3831
+ readonly internalType: "bytes[2]";
3832
+ readonly name: "info";
3833
+ readonly type: "bytes[2]";
3834
+ }, {
3835
+ readonly internalType: "uint64";
3836
+ readonly name: "sigExpiry";
3837
+ readonly type: "uint64";
3838
+ }];
3839
+ readonly internalType: "struct ITypes.SelectedPMMInfo";
3840
+ readonly name: "pmmInfo";
3841
+ readonly type: "tuple";
3842
+ }];
3843
+ readonly internalType: "struct ITypes.PMMSelection";
3844
+ readonly name: "";
3845
+ readonly type: "tuple";
3846
+ }];
3847
+ readonly stateMutability: "view";
3848
+ readonly type: "function";
3849
+ }, {
3850
+ readonly inputs: readonly [{
3851
+ readonly internalType: "bytes32";
3852
+ readonly name: "tradeId";
3853
+ readonly type: "bytes32";
3854
+ }];
3855
+ readonly name: "getPresigns";
3856
+ readonly outputs: readonly [{
3857
+ readonly components: readonly [{
3858
+ readonly internalType: "bytes32";
3859
+ readonly name: "pmmId";
3860
+ readonly type: "bytes32";
3861
+ }, {
3862
+ readonly internalType: "bytes";
3863
+ readonly name: "pmmRecvAddress";
3864
+ readonly type: "bytes";
3865
+ }, {
3866
+ readonly internalType: "bytes[]";
3867
+ readonly name: "presigns";
3868
+ readonly type: "bytes[]";
3869
+ }];
3870
+ readonly internalType: "struct ITypes.Presign[]";
3871
+ readonly name: "";
3872
+ readonly type: "tuple[]";
3873
+ }];
3874
+ readonly stateMutability: "view";
3875
+ readonly type: "function";
3876
+ }, {
3877
+ readonly inputs: readonly [];
3878
+ readonly name: "getProtocolState";
3879
+ readonly outputs: readonly [{
3880
+ readonly internalType: "uint256";
3881
+ readonly name: "";
3882
+ readonly type: "uint256";
3883
+ }];
3884
+ readonly stateMutability: "view";
3885
+ readonly type: "function";
3886
+ }, {
3887
+ readonly inputs: readonly [{
3888
+ readonly internalType: "bytes32";
3889
+ readonly name: "tradeId";
3890
+ readonly type: "bytes32";
3891
+ }];
3892
+ readonly name: "getSettledPayment";
3893
+ readonly outputs: readonly [{
3894
+ readonly components: readonly [{
3895
+ readonly internalType: "bytes32";
3896
+ readonly name: "bundlerHash";
3897
+ readonly type: "bytes32";
3898
+ }, {
3899
+ readonly internalType: "bytes";
3900
+ readonly name: "paymentTxId";
3901
+ readonly type: "bytes";
3902
+ }, {
3903
+ readonly internalType: "bytes";
3904
+ readonly name: "releaseTxId";
3905
+ readonly type: "bytes";
3906
+ }, {
3907
+ readonly internalType: "bool";
3908
+ readonly name: "isConfirmed";
3909
+ readonly type: "bool";
3910
+ }];
3911
+ readonly internalType: "struct ITypes.SettledPayment";
3912
+ readonly name: "";
3913
+ readonly type: "tuple";
3914
+ }];
3915
+ readonly stateMutability: "view";
3916
+ readonly type: "function";
3917
+ }, {
3918
+ readonly inputs: readonly [{
3919
+ readonly internalType: "uint256";
3920
+ readonly name: "fromIdx";
3921
+ readonly type: "uint256";
3922
+ }, {
3923
+ readonly internalType: "uint256";
3924
+ readonly name: "toIdx";
3925
+ readonly type: "uint256";
3926
+ }];
3927
+ readonly name: "getTokens";
3928
+ readonly outputs: readonly [{
3929
+ readonly components: readonly [{
3930
+ readonly internalType: "bytes[5]";
3931
+ readonly name: "info";
3932
+ readonly type: "bytes[5]";
3933
+ }, {
3934
+ readonly internalType: "uint256";
3935
+ readonly name: "decimals";
3936
+ readonly type: "uint256";
3937
+ }];
3938
+ readonly internalType: "struct ITypes.TokenInfo[]";
3939
+ readonly name: "list";
3940
+ readonly type: "tuple[]";
3941
+ }];
3942
+ readonly stateMutability: "view";
3943
+ readonly type: "function";
3944
+ }, {
3945
+ readonly inputs: readonly [{
3946
+ readonly internalType: "bytes32";
3947
+ readonly name: "tradeId";
3948
+ readonly type: "bytes32";
3949
+ }];
3950
+ readonly name: "getTradeData";
3951
+ readonly outputs: readonly [{
3952
+ readonly components: readonly [{
3953
+ readonly internalType: "uint256";
3954
+ readonly name: "sessionId";
3955
+ readonly type: "uint256";
3956
+ }, {
3957
+ readonly components: readonly [{
3958
+ readonly internalType: "uint256";
3959
+ readonly name: "amountIn";
3960
+ readonly type: "uint256";
3961
+ }, {
3962
+ readonly internalType: "bytes[3]";
3963
+ readonly name: "fromChain";
3964
+ readonly type: "bytes[3]";
3965
+ }, {
3966
+ readonly internalType: "bytes[3]";
3967
+ readonly name: "toChain";
3968
+ readonly type: "bytes[3]";
3969
+ }];
3970
+ readonly internalType: "struct ITypes.TradeInfo";
3971
+ readonly name: "tradeInfo";
3972
+ readonly type: "tuple";
3973
+ }, {
3974
+ readonly components: readonly [{
3975
+ readonly internalType: "bytes[5]";
3976
+ readonly name: "depositInfo";
3977
+ readonly type: "bytes[5]";
3978
+ }, {
3979
+ readonly internalType: "address";
3980
+ readonly name: "userEphemeralL2Address";
3981
+ readonly type: "address";
3982
+ }, {
3983
+ readonly internalType: "uint64";
3984
+ readonly name: "scriptTimeout";
3985
+ readonly type: "uint64";
3986
+ }];
3987
+ readonly internalType: "struct ITypes.ScriptInfo";
3988
+ readonly name: "scriptInfo";
3989
+ readonly type: "tuple";
3990
+ }];
3991
+ readonly internalType: "struct ITypes.TradeData";
3992
+ readonly name: "";
3993
+ readonly type: "tuple";
3994
+ }];
3995
+ readonly stateMutability: "view";
3996
+ readonly type: "function";
3997
+ }, {
3998
+ readonly inputs: readonly [{
3999
+ readonly internalType: "address";
4000
+ readonly name: "account";
4001
+ readonly type: "address";
4002
+ }];
4003
+ readonly name: "isMPCNode";
4004
+ readonly outputs: readonly [{
4005
+ readonly internalType: "bool";
4006
+ readonly name: "";
4007
+ readonly type: "bool";
4008
+ }];
4009
+ readonly stateMutability: "view";
4010
+ readonly type: "function";
4011
+ }, {
4012
+ readonly inputs: readonly [{
4013
+ readonly internalType: "address";
4014
+ readonly name: "account";
4015
+ readonly type: "address";
4016
+ }];
4017
+ readonly name: "isSolver";
4018
+ readonly outputs: readonly [{
4019
+ readonly internalType: "bool";
4020
+ readonly name: "";
4021
+ readonly type: "bool";
4022
+ }];
4023
+ readonly stateMutability: "view";
4024
+ readonly type: "function";
4025
+ }, {
4026
+ readonly inputs: readonly [{
4027
+ readonly internalType: "enum ITypes.STAGE";
4028
+ readonly name: "stage";
4029
+ readonly type: "uint8";
4030
+ }];
4031
+ readonly name: "isSuspended";
4032
+ readonly outputs: readonly [{
4033
+ readonly internalType: "bool";
4034
+ readonly name: "";
4035
+ readonly type: "bool";
4036
+ }];
4037
+ readonly stateMutability: "view";
4038
+ readonly type: "function";
4039
+ }, {
4040
+ readonly inputs: readonly [{
4041
+ readonly internalType: "bytes";
4042
+ readonly name: "networkId";
4043
+ readonly type: "bytes";
4044
+ }];
4045
+ readonly name: "isValidNetwork";
4046
+ readonly outputs: readonly [{
4047
+ readonly internalType: "bool";
4048
+ readonly name: "";
4049
+ readonly type: "bool";
4050
+ }];
4051
+ readonly stateMutability: "view";
4052
+ readonly type: "function";
4053
+ }, {
4054
+ readonly inputs: readonly [{
4055
+ readonly internalType: "bytes32";
4056
+ readonly name: "pmmId";
4057
+ readonly type: "bytes32";
4058
+ }];
4059
+ readonly name: "isValidPMM";
4060
+ readonly outputs: readonly [{
4061
+ readonly internalType: "bool";
4062
+ readonly name: "";
4063
+ readonly type: "bool";
4064
+ }];
4065
+ readonly stateMutability: "view";
4066
+ readonly type: "function";
4067
+ }, {
4068
+ readonly inputs: readonly [{
4069
+ readonly internalType: "bytes32";
4070
+ readonly name: "pmmId";
4071
+ readonly type: "bytes32";
4072
+ }, {
4073
+ readonly internalType: "address";
4074
+ readonly name: "account";
4075
+ readonly type: "address";
4076
+ }];
4077
+ readonly name: "isValidPMMAccount";
4078
+ readonly outputs: readonly [{
4079
+ readonly internalType: "bool";
4080
+ readonly name: "";
4081
+ readonly type: "bool";
4082
+ }];
4083
+ readonly stateMutability: "view";
4084
+ readonly type: "function";
4085
+ }, {
4086
+ readonly inputs: readonly [{
4087
+ readonly internalType: "bytes";
4088
+ readonly name: "networkId";
4089
+ readonly type: "bytes";
4090
+ }, {
4091
+ readonly internalType: "bytes";
4092
+ readonly name: "pubkey";
4093
+ readonly type: "bytes";
4094
+ }];
4095
+ readonly name: "isValidPubkey";
4096
+ readonly outputs: readonly [{
4097
+ readonly internalType: "bool";
4098
+ readonly name: "";
4099
+ readonly type: "bool";
4100
+ }];
4101
+ readonly stateMutability: "view";
4102
+ readonly type: "function";
4103
+ }, {
4104
+ readonly inputs: readonly [{
4105
+ readonly internalType: "bytes";
4106
+ readonly name: "networkId";
4107
+ readonly type: "bytes";
4108
+ }, {
4109
+ readonly internalType: "bytes";
4110
+ readonly name: "tokenId";
4111
+ readonly type: "bytes";
4112
+ }];
4113
+ readonly name: "isValidToken";
4114
+ readonly outputs: readonly [{
4115
+ readonly internalType: "bool";
4116
+ readonly name: "";
4117
+ readonly type: "bool";
4118
+ }];
4119
+ readonly stateMutability: "view";
4120
+ readonly type: "function";
4121
+ }, {
4122
+ readonly inputs: readonly [];
4123
+ readonly name: "management";
4124
+ readonly outputs: readonly [{
4125
+ readonly internalType: "contract IManagement";
4126
+ readonly name: "";
4127
+ readonly type: "address";
4128
+ }];
4129
+ readonly stateMutability: "view";
4130
+ readonly type: "function";
4131
+ }, {
4132
+ readonly inputs: readonly [{
4133
+ readonly internalType: "bytes32";
4134
+ readonly name: "pmmId";
4135
+ readonly type: "bytes32";
4136
+ }];
4137
+ readonly name: "numOfPMMAccounts";
4138
+ readonly outputs: readonly [{
4139
+ readonly internalType: "uint256";
4140
+ readonly name: "";
4141
+ readonly type: "uint256";
4142
+ }];
4143
+ readonly stateMutability: "view";
4144
+ readonly type: "function";
4145
+ }, {
4146
+ readonly inputs: readonly [];
4147
+ readonly name: "numOfSupportedTokens";
4148
+ readonly outputs: readonly [{
4149
+ readonly internalType: "uint256";
4150
+ readonly name: "";
4151
+ readonly type: "uint256";
4152
+ }];
4153
+ readonly stateMutability: "view";
4154
+ readonly type: "function";
4155
+ }, {
4156
+ readonly inputs: readonly [{
4157
+ readonly internalType: "bytes32";
4158
+ readonly name: "tradeId";
4159
+ readonly type: "bytes32";
4160
+ }, {
4161
+ readonly components: readonly [{
4162
+ readonly components: readonly [{
4163
+ readonly internalType: "uint256";
4164
+ readonly name: "minAmountOut";
4165
+ readonly type: "uint256";
4166
+ }, {
4167
+ readonly internalType: "uint64";
4168
+ readonly name: "tradeTimeout";
4169
+ readonly type: "uint64";
4170
+ }, {
4171
+ readonly internalType: "bytes";
4172
+ readonly name: "rfqInfoSignature";
4173
+ readonly type: "bytes";
4174
+ }];
4175
+ readonly internalType: "struct ITypes.RFQInfo";
4176
+ readonly name: "rfqInfo";
4177
+ readonly type: "tuple";
4178
+ }, {
4179
+ readonly components: readonly [{
4180
+ readonly internalType: "uint256";
4181
+ readonly name: "amountOut";
4182
+ readonly type: "uint256";
4183
+ }, {
4184
+ readonly internalType: "bytes32";
4185
+ readonly name: "selectedPMMId";
4186
+ readonly type: "bytes32";
4187
+ }, {
4188
+ readonly internalType: "bytes[2]";
4189
+ readonly name: "info";
4190
+ readonly type: "bytes[2]";
4191
+ }, {
4192
+ readonly internalType: "uint64";
4193
+ readonly name: "sigExpiry";
4194
+ readonly type: "uint64";
4195
+ }];
4196
+ readonly internalType: "struct ITypes.SelectedPMMInfo";
4197
+ readonly name: "pmmInfo";
4198
+ readonly type: "tuple";
4199
+ }];
4200
+ readonly internalType: "struct ITypes.PMMSelection";
4201
+ readonly name: "info";
4202
+ readonly type: "tuple";
4203
+ }];
4204
+ readonly name: "selectPMM";
4205
+ readonly outputs: readonly [];
4206
+ readonly stateMutability: "nonpayable";
4207
+ readonly type: "function";
4208
+ }, {
4209
+ readonly inputs: readonly [{
4210
+ readonly internalType: "address";
4211
+ readonly name: "newManagement";
4212
+ readonly type: "address";
4213
+ }];
4214
+ readonly name: "setManagement";
4215
+ readonly outputs: readonly [];
4216
+ readonly stateMutability: "nonpayable";
4217
+ readonly type: "function";
4218
+ }, {
4219
+ readonly inputs: readonly [{
4220
+ readonly internalType: "address";
4221
+ readonly name: "core";
4222
+ readonly type: "address";
4223
+ }, {
4224
+ readonly internalType: "bytes";
4225
+ readonly name: "fromChain";
4226
+ readonly type: "bytes";
4227
+ }, {
4228
+ readonly internalType: "bytes";
4229
+ readonly name: "toChain";
4230
+ readonly type: "bytes";
4231
+ }];
4232
+ readonly name: "setRoute";
4233
+ readonly outputs: readonly [];
4234
+ readonly stateMutability: "nonpayable";
4235
+ readonly type: "function";
4236
+ }, {
4237
+ readonly inputs: readonly [{
4238
+ readonly internalType: "bytes32";
4239
+ readonly name: "tradeId";
4240
+ readonly type: "bytes32";
4241
+ }, {
4242
+ readonly components: readonly [{
4243
+ readonly internalType: "uint256";
4244
+ readonly name: "sessionId";
4245
+ readonly type: "uint256";
4246
+ }, {
4247
+ readonly components: readonly [{
4248
+ readonly internalType: "uint256";
4249
+ readonly name: "amountIn";
4250
+ readonly type: "uint256";
4251
+ }, {
4252
+ readonly internalType: "bytes[3]";
4253
+ readonly name: "fromChain";
4254
+ readonly type: "bytes[3]";
4255
+ }, {
4256
+ readonly internalType: "bytes[3]";
4257
+ readonly name: "toChain";
4258
+ readonly type: "bytes[3]";
4259
+ }];
4260
+ readonly internalType: "struct ITypes.TradeInfo";
4261
+ readonly name: "tradeInfo";
4262
+ readonly type: "tuple";
4263
+ }, {
4264
+ readonly components: readonly [{
4265
+ readonly internalType: "bytes[5]";
4266
+ readonly name: "depositInfo";
4267
+ readonly type: "bytes[5]";
4268
+ }, {
4269
+ readonly internalType: "address";
4270
+ readonly name: "userEphemeralL2Address";
4271
+ readonly type: "address";
4272
+ }, {
4273
+ readonly internalType: "uint64";
4274
+ readonly name: "scriptTimeout";
4275
+ readonly type: "uint64";
4276
+ }];
4277
+ readonly internalType: "struct ITypes.ScriptInfo";
4278
+ readonly name: "scriptInfo";
4279
+ readonly type: "tuple";
4280
+ }];
4281
+ readonly internalType: "struct ITypes.TradeData";
4282
+ readonly name: "tradeData";
4283
+ readonly type: "tuple";
4284
+ }, {
4285
+ readonly components: readonly [{
4286
+ readonly internalType: "uint256";
4287
+ readonly name: "aggregatedValue";
4288
+ readonly type: "uint256";
4289
+ }, {
4290
+ readonly internalType: "string";
4291
+ readonly name: "schema";
4292
+ readonly type: "string";
4293
+ }, {
4294
+ readonly internalType: "bytes";
4295
+ readonly name: "data";
4296
+ readonly type: "bytes";
4297
+ }];
4298
+ readonly internalType: "struct ITypes.Affiliate";
4299
+ readonly name: "affiliateInfo";
4300
+ readonly type: "tuple";
4301
+ }, {
4302
+ readonly components: readonly [{
4303
+ readonly internalType: "bytes32";
4304
+ readonly name: "pmmId";
4305
+ readonly type: "bytes32";
4306
+ }, {
4307
+ readonly internalType: "bytes";
4308
+ readonly name: "pmmRecvAddress";
4309
+ readonly type: "bytes";
4310
+ }, {
4311
+ readonly internalType: "bytes[]";
4312
+ readonly name: "presigns";
4313
+ readonly type: "bytes[]";
4314
+ }];
4315
+ readonly internalType: "struct ITypes.Presign[]";
4316
+ readonly name: "presignList";
4317
+ readonly type: "tuple[]";
4318
+ }];
4319
+ readonly name: "submitTrade";
4320
+ readonly outputs: readonly [];
4321
+ readonly stateMutability: "nonpayable";
4322
+ readonly type: "function";
4323
+ }, {
4324
+ readonly inputs: readonly [{
4325
+ readonly internalType: "address";
4326
+ readonly name: "";
4327
+ readonly type: "address";
4328
+ }];
4329
+ readonly name: "version";
4330
+ readonly outputs: readonly [{
4331
+ readonly internalType: "uint256";
4332
+ readonly name: "";
4333
+ readonly type: "uint256";
4334
+ }];
4335
+ readonly stateMutability: "view";
4336
+ readonly type: "function";
4337
+ }];
4338
+ static createInterface(): RouterInterface;
4339
+ static connect(address: string, runner?: ContractRunner | null): Router;
4340
+ }
4341
+
4342
+ declare class Signer__factory {
4343
+ static readonly abi: readonly [{
4344
+ readonly inputs: readonly [];
4345
+ readonly stateMutability: "nonpayable";
4346
+ readonly type: "constructor";
4347
+ }, {
4348
+ readonly inputs: readonly [];
4349
+ readonly name: "ECDSAInvalidSignature";
4350
+ readonly type: "error";
4351
+ }, {
4352
+ readonly inputs: readonly [{
4353
+ readonly internalType: "uint256";
4354
+ readonly name: "length";
4355
+ readonly type: "uint256";
4356
+ }];
4357
+ readonly name: "ECDSAInvalidSignatureLength";
4358
+ readonly type: "error";
4359
+ }, {
4360
+ readonly inputs: readonly [{
4361
+ readonly internalType: "bytes32";
4362
+ readonly name: "s";
4363
+ readonly type: "bytes32";
4364
+ }];
4365
+ readonly name: "ECDSAInvalidSignatureS";
4366
+ readonly type: "error";
4367
+ }, {
4368
+ readonly inputs: readonly [];
4369
+ readonly name: "InvalidShortString";
4370
+ readonly type: "error";
4371
+ }, {
4372
+ readonly inputs: readonly [{
4373
+ readonly internalType: "string";
4374
+ readonly name: "str";
4375
+ readonly type: "string";
4376
+ }];
4377
+ readonly name: "StringTooLong";
4378
+ readonly type: "error";
4379
+ }, {
4380
+ readonly anonymous: false;
4381
+ readonly inputs: readonly [];
4382
+ readonly name: "EIP712DomainChanged";
4383
+ readonly type: "event";
4384
+ }, {
4385
+ readonly inputs: readonly [];
4386
+ readonly name: "eip712Domain";
4387
+ readonly outputs: readonly [{
4388
+ readonly internalType: "bytes1";
4389
+ readonly name: "fields";
4390
+ readonly type: "bytes1";
4391
+ }, {
4392
+ readonly internalType: "string";
4393
+ readonly name: "name";
4394
+ readonly type: "string";
4395
+ }, {
4396
+ readonly internalType: "string";
4397
+ readonly name: "version";
4398
+ readonly type: "string";
4399
+ }, {
4400
+ readonly internalType: "uint256";
4401
+ readonly name: "chainId";
4402
+ readonly type: "uint256";
4403
+ }, {
4404
+ readonly internalType: "address";
4405
+ readonly name: "verifyingContract";
4406
+ readonly type: "address";
4407
+ }, {
4408
+ readonly internalType: "bytes32";
4409
+ readonly name: "salt";
4410
+ readonly type: "bytes32";
4411
+ }, {
4412
+ readonly internalType: "uint256[]";
4413
+ readonly name: "extensions";
4414
+ readonly type: "uint256[]";
4415
+ }];
4416
+ readonly stateMutability: "view";
4417
+ readonly type: "function";
4418
+ }, {
4419
+ readonly inputs: readonly [{
4420
+ readonly internalType: "bytes32";
4421
+ readonly name: "tradeId";
4422
+ readonly type: "bytes32";
4423
+ }, {
4424
+ readonly internalType: "bytes32";
4425
+ readonly name: "infoHash";
4426
+ readonly type: "bytes32";
4427
+ }, {
4428
+ readonly internalType: "bytes";
4429
+ readonly name: "signature";
4430
+ readonly type: "bytes";
4431
+ }];
4432
+ readonly name: "getDepositConfirmationSigner";
4433
+ readonly outputs: readonly [{
4434
+ readonly internalType: "address";
4435
+ readonly name: "signer";
4436
+ readonly type: "address";
4437
+ }];
4438
+ readonly stateMutability: "view";
4439
+ readonly type: "function";
4440
+ }, {
4441
+ readonly inputs: readonly [{
4442
+ readonly internalType: "bytes32";
4443
+ readonly name: "infoHash";
4444
+ readonly type: "bytes32";
4445
+ }, {
4446
+ readonly internalType: "bytes";
4447
+ readonly name: "signature";
4448
+ readonly type: "bytes";
4449
+ }];
4450
+ readonly name: "getMakePaymentSigner";
4451
+ readonly outputs: readonly [{
4452
+ readonly internalType: "address";
4453
+ readonly name: "signer";
4454
+ readonly type: "address";
4455
+ }];
4456
+ readonly stateMutability: "view";
4457
+ readonly type: "function";
4458
+ }, {
4459
+ readonly inputs: readonly [{
4460
+ readonly internalType: "bytes32";
4461
+ readonly name: "tradeId";
4462
+ readonly type: "bytes32";
4463
+ }, {
4464
+ readonly internalType: "bytes32";
4465
+ readonly name: "infoHash";
4466
+ readonly type: "bytes32";
4467
+ }, {
4468
+ readonly internalType: "bytes";
4469
+ readonly name: "signature";
4470
+ readonly type: "bytes";
4471
+ }];
4472
+ readonly name: "getPMMSelectionSigner";
4473
+ readonly outputs: readonly [{
4474
+ readonly internalType: "address";
4475
+ readonly name: "signer";
4476
+ readonly type: "address";
4477
+ }];
4478
+ readonly stateMutability: "view";
4479
+ readonly type: "function";
4480
+ }, {
4481
+ readonly inputs: readonly [{
4482
+ readonly internalType: "bytes32";
4483
+ readonly name: "tradeId";
4484
+ readonly type: "bytes32";
4485
+ }, {
4486
+ readonly internalType: "bytes32";
4487
+ readonly name: "infoHash";
4488
+ readonly type: "bytes32";
4489
+ }, {
4490
+ readonly internalType: "bytes";
4491
+ readonly name: "signature";
4492
+ readonly type: "bytes";
4493
+ }];
4494
+ readonly name: "getPaymentConfirmationSigner";
4495
+ readonly outputs: readonly [{
4496
+ readonly internalType: "address";
4497
+ readonly name: "signer";
4498
+ readonly type: "address";
4499
+ }];
4500
+ readonly stateMutability: "view";
4501
+ readonly type: "function";
4502
+ }, {
4503
+ readonly inputs: readonly [{
4504
+ readonly internalType: "bytes32";
4505
+ readonly name: "tradeId";
4506
+ readonly type: "bytes32";
4507
+ }, {
4508
+ readonly internalType: "bytes32";
4509
+ readonly name: "infoHash";
4510
+ readonly type: "bytes32";
4511
+ }, {
4512
+ readonly internalType: "bytes";
4513
+ readonly name: "signature";
4514
+ readonly type: "bytes";
4515
+ }];
4516
+ readonly name: "getRFQSigner";
4517
+ readonly outputs: readonly [{
4518
+ readonly internalType: "address";
4519
+ readonly name: "signer";
4520
+ readonly type: "address";
4521
+ }];
4522
+ readonly stateMutability: "view";
4523
+ readonly type: "function";
4524
+ }, {
4525
+ readonly inputs: readonly [{
4526
+ readonly internalType: "bytes32";
4527
+ readonly name: "tradeId";
4528
+ readonly type: "bytes32";
4529
+ }, {
4530
+ readonly internalType: "bytes32";
4531
+ readonly name: "infoHash";
4532
+ readonly type: "bytes32";
4533
+ }, {
4534
+ readonly internalType: "bytes";
4535
+ readonly name: "signature";
4536
+ readonly type: "bytes";
4537
+ }];
4538
+ readonly name: "getSettlementConfirmationSigner";
4539
+ readonly outputs: readonly [{
4540
+ readonly internalType: "address";
4541
+ readonly name: "signer";
4542
+ readonly type: "address";
4543
+ }];
4544
+ readonly stateMutability: "view";
4545
+ readonly type: "function";
4546
+ }];
4547
+ static createInterface(): SignerInterface;
4548
+ static connect(address: string, runner?: ContractRunner | null): Signer;
4549
+ }
4550
+
4551
+ type index_ERC20__factory = ERC20__factory;
4552
+ declare const index_ERC20__factory: typeof ERC20__factory;
4553
+ type index_Payment__factory = Payment__factory;
4554
+ declare const index_Payment__factory: typeof Payment__factory;
4555
+ type index_Router__factory = Router__factory;
4556
+ declare const index_Router__factory: typeof Router__factory;
4557
+ type index_Signer__factory = Signer__factory;
4558
+ declare const index_Signer__factory: typeof Signer__factory;
4559
+ declare namespace index {
4560
+ export { index_ERC20__factory as ERC20__factory, index_Payment__factory as Payment__factory, index_Router__factory as Router__factory, index_Signer__factory as Signer__factory };
4561
+ }
4562
+
4563
+ declare class RouterService {
4564
+ private readonly provider;
4565
+ private readonly contract;
4566
+ constructor();
4567
+ getSigner(): Promise<string>;
4568
+ getCurrentPubkey(network: string): Promise<ITypes.MPCInfoStructOutput>;
4569
+ getCurrentStage(tradeId: BytesLike): Promise<bigint>;
4570
+ getDepositAddressList(tradeId: BytesLike): Promise<BytesLike[]>;
4571
+ getHandler(fromChain: BytesLike, toChain: BytesLike): Promise<[string, string]>;
4572
+ getPFeeRate(): Promise<bigint>;
4573
+ getPMMSelection(tradeId: BytesLike): Promise<ITypes.PMMSelectionStructOutput>;
4574
+ getPresigns(tradeId: BytesLike): Promise<ITypes.PresignStructOutput[]>;
4575
+ getProtocolState(): Promise<bigint>;
4576
+ getFeeDetails(tradeId: BytesLike): Promise<ITypes.FeeDetailsStructOutput>;
4577
+ getSettledPayment(tradeId: BytesLike): Promise<ITypes.SettledPaymentStructOutput>;
4578
+ getTokens(fromIdx: bigint, toIdx: bigint): Promise<ITypes.TokenInfoStructOutput[]>;
4579
+ getTradeData(tradeId: BytesLike): Promise<ITypes.TradeDataStructOutput>;
4580
+ isMPCNode(account: string): Promise<boolean>;
4581
+ isSolver(account: string): Promise<boolean>;
4582
+ isSuspended(stage: bigint): Promise<boolean>;
4583
+ isValidNetwork(networkId: BytesLike): Promise<boolean>;
4584
+ isValidPMM(pmmId: BytesLike): Promise<boolean>;
4585
+ isValidPMMAccount(pmmId: BytesLike, account: string): Promise<boolean>;
4586
+ isValidToken(networkId: BytesLike, tokenId: BytesLike): Promise<boolean>;
4587
+ getManagement(): Promise<string>;
4588
+ getNumOfSupportedTokens(): Promise<bigint>;
4589
+ getVersion(address: string): Promise<bigint>;
4590
+ }
4591
+ declare const routerService: RouterService;
4592
+
4593
+ declare class SignerService {
4594
+ private readonly provider;
4595
+ private readonly routerService;
4596
+ constructor();
4597
+ getDomain(): Promise<{
4598
+ name: string;
4599
+ version: string;
4600
+ chainId: bigint;
4601
+ verifyingContract: string;
4602
+ }>;
4603
+ }
4604
+ declare const signerService: SignerService;
4605
+
4606
+ declare const SubmitSettlementRequestSchema: z.ZodObject<{
4607
+ tradeIds: z.ZodArray<z.ZodString, "many">;
4608
+ pmmId: z.ZodString;
4609
+ settlementTx: z.ZodString;
4610
+ signature: z.ZodString;
4611
+ startIndex: z.ZodNumber;
4612
+ signedAt: z.ZodNumber;
4613
+ }, "strip", z.ZodTypeAny, {
4614
+ signature: string;
4615
+ tradeIds: string[];
4616
+ signedAt: number;
4617
+ pmmId: string;
4618
+ settlementTx: string;
4619
+ startIndex: number;
4620
+ }, {
4621
+ signature: string;
4622
+ tradeIds: string[];
4623
+ signedAt: number;
4624
+ pmmId: string;
4625
+ settlementTx: string;
4626
+ startIndex: number;
4627
+ }>;
4628
+ declare const SubmitSettlementResponseSchema: z.ZodObject<{
4629
+ message: z.ZodString;
4630
+ }, "strip", z.ZodTypeAny, {
4631
+ message: string;
4632
+ }, {
4633
+ message: string;
4634
+ }>;
4635
+ type SubmitSettlementRequest = z.infer<typeof SubmitSettlementRequestSchema>;
4636
+ type SubmitSettlementResponse = z.infer<typeof SubmitSettlementResponseSchema>;
4637
+ declare class SolverService {
4638
+ private readonly baseURL;
4639
+ constructor();
4640
+ /**
4641
+ * Submits a settlement transaction to the solver backend
4642
+ * @param params Settlement transaction parameters
4643
+ * @returns Promise with the response message
4644
+ * @throws Error if the request fails or validation fails
4645
+ */
4646
+ submitSettlementTx(params: SubmitSettlementRequest): Promise<SubmitSettlementResponse>;
4647
+ /**
4648
+ * Helper function to format and submit a single trade settlement
4649
+ * @param tradeId The ID of the trade to settle
4650
+ * @param pmmId The PMM's identifier
4651
+ * @param settlementTx The settlement transaction data
4652
+ * @param signature The PMM's signature
4653
+ */
4654
+ submitSingleSettlement(tradeId: string, pmmId: string, settlementTx: string, signature: string, signedAt: number): Promise<SubmitSettlementResponse>;
4655
+ /**
4656
+ * Helper function to submit multiple trade settlements in one transaction
4657
+ * @param tradeIds Array of trade IDs to settle
4658
+ * @param pmmId The PMM's identifier
4659
+ * @param settlementTx The settlement transaction data
4660
+ * @param signature The PMM's signature
4661
+ * @param startIndex Starting index for batch processing
4662
+ */
4663
+ submitBatchSettlement(tradeIds: string[], pmmId: string, settlementTx: string, signature: string, signedAt: number, startIndex?: number): Promise<SubmitSettlementResponse>;
4664
+ }
4665
+ declare const solverService: SolverService;
4666
+
4667
+ declare const TokenSchema: z.ZodObject<{
4668
+ networkId: z.ZodString;
4669
+ tokenId: z.ZodString;
4670
+ networkName: z.ZodString;
4671
+ networkSymbol: z.ZodString;
4672
+ networkType: z.ZodString;
4673
+ tokenName: z.ZodString;
4674
+ tokenSymbol: z.ZodString;
4675
+ tokenAddress: z.ZodString;
4676
+ tokenDecimals: z.ZodNumber;
4677
+ tokenLogoUri: z.ZodString;
4678
+ networkLogoUri: z.ZodString;
4679
+ }, "strip", z.ZodTypeAny, {
4680
+ tokenName: string;
4681
+ tokenSymbol: string;
4682
+ tokenDecimals: number;
4683
+ networkId: string;
4684
+ tokenId: string;
4685
+ networkName: string;
4686
+ networkSymbol: string;
4687
+ networkType: string;
4688
+ tokenAddress: string;
4689
+ tokenLogoUri: string;
4690
+ networkLogoUri: string;
4691
+ }, {
4692
+ tokenName: string;
4693
+ tokenSymbol: string;
4694
+ tokenDecimals: number;
4695
+ networkId: string;
4696
+ tokenId: string;
4697
+ networkName: string;
4698
+ networkSymbol: string;
4699
+ networkType: string;
4700
+ tokenAddress: string;
4701
+ tokenLogoUri: string;
4702
+ networkLogoUri: string;
4703
+ }>;
4704
+ type Token = z.infer<typeof TokenSchema>;
4705
+
4706
+ declare class TokenService {
4707
+ private readonly baseURL;
4708
+ constructor();
4709
+ /**
4710
+ * Fetches all available tokens from the API
4711
+ * @returns Promise<Token[]> Array of tokens
4712
+ * @throws Error if the API request fails or response validation fails
4713
+ */
4714
+ getTokens(): Promise<Token[]>;
4715
+ /**
4716
+ * Fetches a specific token by its token ID
4717
+ * @param tokenId Token ID to fetch
4718
+ * @returns Promise<Token> Token if found, null otherwise
4719
+ */
4720
+ getTokenByTokenId(tokenId: string): Promise<Token>;
4721
+ /**
4722
+ * Fetches tokens by network ID
4723
+ * @param networkId Network ID to filter by
4724
+ * @returns Promise<Token[]> Array of tokens for the specified network
4725
+ */
4726
+ getTokensByNetwork(networkId: string): Promise<Token[]>;
4727
+ /**
4728
+ * Finds a specific token by network ID and token address
4729
+ * @param networkId Network ID to search for
4730
+ * @param tokenAddress Token address to search for (use 'native' for native tokens)
4731
+ * @returns Promise<Token> Token if found
4732
+ * @throws Error if token is not found
4733
+ */
4734
+ getToken(networkId: string, tokenAddress: string): Promise<Token>;
4735
+ }
4736
+ declare const tokenService: TokenService;
4737
+
4738
+ declare function getPresignHash(pmmRecvAddress: AddressLike, amountIn: bigint): string;
4739
+ declare function getDepositConfirmationHash(amountIn: bigint, fromChain: [BytesLike, BytesLike, BytesLike], depositTxId: BytesLike, depositFromList: BytesLike[]): string;
4740
+ declare function getSelectPMMHash(pmmId: BytesLike, pmmRecvAddress: BytesLike, toChain: BytesLike, toToken: BytesLike, amountOut: bigint, expiry: bigint): string;
4741
+ declare function getRFQHash(minAmountOut: bigint, tradeTimeout: bigint): string;
4742
+ declare function getTradeIdsHash(tradeIds: BytesLike[]): string;
4743
+ declare function getMakePaymentHash(tradeIds: BytesLike[], signedAt: bigint, startIdx: bigint, paymentTxId: BytesLike): string;
4744
+ declare function getBTCEVMConfirmPaymentHash(protocolFee: bigint, paymentAmount: bigint, toChain: [BytesLike, BytesLike, BytesLike], paymentTxId: BytesLike): string;
4745
+ declare function getEVMBTCConfirmPaymentHash(paymentAmount: bigint, toChain: [BytesLike, BytesLike, BytesLike], paymentTxId: BytesLike): string;
4746
+ declare function getBTCEVMConfirmSettlementHash(releaseTxId: BytesLike): string;
4747
+ declare function getEVMBTCConfirmSettlementHash(protocolFee: bigint, releaseTxId: BytesLike): string;
4748
+ declare function getCommitInfoHash(pmmId: BytesLike, pmmRecvAddr: BytesLike, toChain: BytesLike, toToken: BytesLike, amountOut: bigint, expiry: bigint): string;
4749
+
4750
+ declare enum SignatureType {
4751
+ ConfirmDeposit = 0,
4752
+ SelectPMM = 1,
4753
+ RFQ = 2,
4754
+ MakePayment = 3,
4755
+ ConfirmPayment = 4,
4756
+ ConfirmSettlement = 5,
4757
+ VerifyingContract = 6
4758
+ }
4759
+ declare function getSigner(provider: Provider, signerHelper: AddressLike, tradeId: BytesLike, infoHash: BytesLike, type: SignatureType, signature: string): Promise<string>;
4760
+ declare function getSignature(Signer: Signer$1 | Wallet, provider: Provider, signerHelper: AddressLike, tradeId: BytesLike, infoHash: BytesLike, type: SignatureType, domain?: TypedDataDomain): Promise<string>;
4761
+
4762
+ declare const presignType: {
4763
+ Presign: {
4764
+ name: string;
4765
+ type: string;
4766
+ }[];
4767
+ };
4768
+ declare const confirmDepositType: {
4769
+ ConfirmDeposit: {
4770
+ name: string;
4771
+ type: string;
4772
+ }[];
4773
+ };
4774
+ declare const selectionType: {
4775
+ Selection: {
4776
+ name: string;
4777
+ type: string;
4778
+ }[];
4779
+ };
4780
+ declare const rfqAuthenticationTypes: {
4781
+ Authentication: {
4782
+ name: string;
4783
+ type: string;
4784
+ }[];
4785
+ };
4786
+ declare const makePaymentType: {
4787
+ MakePayment: {
4788
+ name: string;
4789
+ type: string;
4790
+ }[];
4791
+ };
4792
+ declare const confirmPaymentType: {
4793
+ ConfirmPayment: {
4794
+ name: string;
4795
+ type: string;
4796
+ }[];
4797
+ };
4798
+ declare const confirmSettlementType: {
4799
+ ConfirmSettlement: {
4800
+ name: string;
4801
+ type: string;
4802
+ }[];
4803
+ };
4804
+
4805
+ declare function convertToCamelCase(obj: any): any;
4806
+ declare function convertToSnakeCase(obj: any): any;
4807
+ declare function snakeToCamelCase(str: string): string;
4808
+ declare function camelToSnakeCase(str: string): string;
4809
+
4810
+ declare const ensureHexPrefix: (value: string) => string;
4811
+ declare const removeHexPrefix: (value: string) => string;
4812
+
4813
+ export { type AppConfig, type ERC20, ERC20__factory, type Environment, type EnvironmentConfig, ITypes, type Payment, Payment__factory, type Router, RouterService, Router__factory, SignatureType, type Signer, SignerService, Signer__factory, SolverService, type Token, TokenSchema, TokenService, camelToSnakeCase, config, confirmDepositType, confirmPaymentType, confirmSettlementType, convertToCamelCase, convertToSnakeCase, ensureHexPrefix, index as factories, getBTCEVMConfirmPaymentHash, getBTCEVMConfirmSettlementHash, getCommitInfoHash, getDepositConfirmationHash, getEVMBTCConfirmPaymentHash, getEVMBTCConfirmSettlementHash, getMakePaymentHash, getPresignHash, getRFQHash, getSelectPMMHash, getSignature, getSigner, getTradeIdsHash, makePaymentType, presignType, removeHexPrefix, rfqAuthenticationTypes, routerService, selectionType, signerService, snakeToCamelCase, solverService, tokenService };