@instadapp/interop-x 0.0.0-dev.fabee70 → 0.0.0-dev.fded533

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. package/dist/package.json +2 -2
  2. package/dist/src/abi/interopBridgeToken.json +21 -9
  3. package/dist/src/abi/interopXGateway.json +11 -11
  4. package/dist/src/config/index.js +10 -1
  5. package/dist/src/constants/addresses.js +1 -1
  6. package/dist/src/constants/itokens.js +1 -1
  7. package/dist/src/index.js +28 -5
  8. package/dist/src/net/protocol/dial/{SignatureDialProtocol.1.js → TransactionStatusDialProtocol.js} +0 -0
  9. package/dist/src/net/protocol/index.js +6 -6
  10. package/dist/src/tasks/AutoUpdateTask.js +20 -7
  11. package/dist/src/tasks/BaseTask.js +4 -0
  12. package/dist/src/tasks/InteropBridge/{SyncWithdrawEvents.js → SyncBurnEvents.js} +10 -8
  13. package/dist/src/tasks/InteropBridge/SyncMintEvents.js +67 -0
  14. package/dist/src/tasks/InteropXGateway/ProcessDepositEvents.js +14 -1
  15. package/dist/src/tasks/InteropXGateway/SyncDepositEvents.js +2 -2
  16. package/dist/src/tasks/InteropXGateway/SyncWithdrawtEvents.js +72 -0
  17. package/dist/src/tasks/index.js +16 -5
  18. package/dist/src/typechain/factories/InteropBridgeToken__factory.js +23 -11
  19. package/dist/src/typechain/factories/InteropXGateway__factory.js +14 -14
  20. package/dist/src/utils/index.js +6 -6
  21. package/package.json +2 -2
  22. package/src/abi/interopBridgeToken.json +21 -9
  23. package/src/abi/interopXGateway.json +11 -11
  24. package/src/config/index.ts +9 -1
  25. package/src/constants/addresses.ts +1 -1
  26. package/src/constants/itokens.ts +1 -1
  27. package/src/index.ts +41 -9
  28. package/src/net/protocol/dial/{SignatureDialProtocol.1.ts → TransactionStatusDialProtocol.ts} +0 -0
  29. package/src/net/protocol/index.ts +5 -5
  30. package/src/tasks/AutoUpdateTask.ts +24 -15
  31. package/src/tasks/BaseTask.ts +5 -0
  32. package/src/tasks/InteropBridge/{SyncWithdrawEvents.ts → SyncBurnEvents.ts} +10 -8
  33. package/src/tasks/InteropBridge/SyncMintEvents.ts +99 -0
  34. package/src/tasks/InteropXGateway/ProcessDepositEvents.ts +18 -4
  35. package/src/tasks/InteropXGateway/SyncDepositEvents.ts +2 -2
  36. package/src/tasks/InteropXGateway/SyncWithdrawtEvents.ts +105 -0
  37. package/src/tasks/index.ts +24 -5
  38. package/src/typechain/InteropBridgeToken.ts +23 -17
  39. package/src/typechain/InteropXGateway.ts +13 -13
  40. package/src/typechain/factories/InteropBridgeToken__factory.ts +23 -11
  41. package/src/typechain/factories/InteropXGateway__factory.ts +14 -14
  42. package/src/utils/index.ts +6 -6
@@ -8,7 +8,7 @@ import { ChainId } from "@/types";
8
8
  import config from "@/config";
9
9
  import { InteropBridgeToken } from "@/typechain";
10
10
 
11
- class SyncWithdrawEvents extends BaseTask {
11
+ class SyncBurnEvents extends BaseTask {
12
12
  contractAddress: string;
13
13
  provider: ethers.providers.JsonRpcProvider;
14
14
  contract: InteropBridgeToken;
@@ -17,7 +17,7 @@ class SyncWithdrawEvents extends BaseTask {
17
17
 
18
18
  constructor({ chainId, itokenAddress }: { chainId: ChainId, itokenAddress: string }) {
19
19
  super({
20
- logger: new Logger("InteropBridgeToken::SyncWithdrawEvents"),
20
+ logger: new Logger("InteropBridgeToken::SyncBurnEvents"),
21
21
  })
22
22
  this.chainId = chainId;
23
23
  this.itokenAddress = itokenAddress;
@@ -41,13 +41,13 @@ class SyncWithdrawEvents extends BaseTask {
41
41
  continue;
42
42
  }
43
43
 
44
- const { to, amount, chainId } = event.args;
44
+ const { to, amount, sourceChainId, targetChainId } = event.args;
45
45
 
46
46
  const uniqueIdentifier = {
47
47
  action: 'withdraw',
48
48
  submitTransactionHash: event.transactionHash,
49
- sourceChainId:this.chainId,
50
- targetChainId: chainId.toNumber(),
49
+ sourceChainId: sourceChainId,
50
+ targetChainId: targetChainId,
51
51
  }
52
52
 
53
53
  if (await Transaction.findOne({ where: uniqueIdentifier })) {
@@ -77,14 +77,16 @@ class SyncWithdrawEvents extends BaseTask {
77
77
  to,
78
78
  amount: amount.toString(),
79
79
  itoken: this.itokenAddress,
80
- chainId: chainId.toString()
80
+ sourceChainId: sourceChainId,
81
+ targetChainId: targetChainId,
81
82
  },
82
83
 
83
84
  sourceEvent: {
84
85
  to,
85
86
  amount: amount.toString(),
86
87
  itoken: this.itokenAddress,
87
- chainId: chainId.toString(),
88
+ sourceChainId: sourceChainId,
89
+ targetChainId: targetChainId,
88
90
  },
89
91
  status: "pending",
90
92
  })
@@ -116,4 +118,4 @@ class SyncWithdrawEvents extends BaseTask {
116
118
  }
117
119
  }
118
120
 
119
- export default SyncWithdrawEvents;
121
+ export default SyncBurnEvents;
@@ -0,0 +1,99 @@
1
+ import { BaseTask } from "../BaseTask";
2
+ import Logger from '@/logger';
3
+ import { ethers } from "ethers";
4
+ import abi from "@/abi";
5
+ import { Transaction } from "@/db";
6
+ import { getContract, getRpcProviderUrl } from "@/utils";
7
+ import { ChainId } from "@/types";
8
+ import config from "@/config";
9
+ import { InteropBridgeToken } from "@/typechain";
10
+
11
+ class SyncMintEvents extends BaseTask {
12
+ contractAddress: string;
13
+ provider: ethers.providers.JsonRpcProvider;
14
+ contract: InteropBridgeToken;
15
+ chainId: ChainId;
16
+ itokenAddress: string;
17
+
18
+ constructor({ chainId, itokenAddress }: { chainId: ChainId, itokenAddress: string }) {
19
+ super({
20
+ logger: new Logger("InteropBridgeToken::SyncMintEvents"),
21
+ })
22
+ this.chainId = chainId;
23
+ this.itokenAddress = itokenAddress;
24
+ }
25
+
26
+ async pollHandler() {
27
+ const currentBlock = await this.provider.getBlockNumber();
28
+
29
+ const events = await this.contract.queryFilter(
30
+ this.contract.filters.Mint(),
31
+ currentBlock - 500,
32
+ currentBlock,
33
+ );
34
+
35
+ for (const event of events) {
36
+
37
+ try {
38
+ if (!event.args) {
39
+ continue;
40
+ }
41
+
42
+ const { sourceChainId, targetChainId, amount, to, submitTransactionHash } = event.args;
43
+
44
+ const uniqueIdentifier = {
45
+ action: 'deposit',
46
+ submitTransactionHash: submitTransactionHash,
47
+ sourceChainId: sourceChainId,
48
+ targetChainId: targetChainId,
49
+
50
+ targetEvent: null
51
+ }
52
+
53
+ const transaction = await Transaction.findOne({ where: uniqueIdentifier });
54
+
55
+ if(! transaction){
56
+ return;
57
+ }
58
+
59
+ const tx = await event.getTransaction()
60
+
61
+ transaction.targetStatus = 'success'
62
+ transaction.targetErrors = []
63
+ transaction.targetTransactionHash = tx.hash
64
+ transaction.targetEvent = {
65
+ sourceChainId,
66
+ targetChainId,
67
+ amount: amount.toString(),
68
+ to,
69
+ submitTransactionHash
70
+ }
71
+ transaction.status = 'success'
72
+
73
+ await transaction.save()
74
+
75
+ this.logger.info(
76
+ `Mint confirmation received: ${transaction.transactionHash} `
77
+ );
78
+ } catch (error) {
79
+ this.logger.error(error);
80
+ }
81
+ }
82
+ }
83
+
84
+ async start(): Promise<void> {
85
+ this.provider = new ethers.providers.JsonRpcProvider(
86
+ getRpcProviderUrl(this.chainId)
87
+ );
88
+
89
+ this.contract = getContract<InteropBridgeToken>(
90
+ this.itokenAddress,
91
+ abi.interopBridgeToken,
92
+ new ethers.Wallet(config.privateKey!, this.provider)
93
+ );
94
+
95
+ await super.start()
96
+ }
97
+ }
98
+
99
+ export default SyncMintEvents;
@@ -15,7 +15,7 @@ import { LogDescription } from "ethers/lib/utils";
15
15
 
16
16
  const generateGnosisTransaction = async (transactionData: any, safeContract: GnosisSafe) => {
17
17
  console.log(transactionData);
18
-
18
+
19
19
  let isExecuted = await safeContract.dataHashes(
20
20
  await safeContract.getTransactionHash(
21
21
  transactionData.to,
@@ -97,7 +97,7 @@ class ProcessDepositEvents extends BaseTask {
97
97
  }
98
98
 
99
99
  console.log(`Processing transaction ${transaction.transactionHash}`);
100
-
100
+
101
101
  transaction.targetStatus = 'pending';
102
102
  await transaction.save();
103
103
 
@@ -121,9 +121,23 @@ class ProcessDepositEvents extends BaseTask {
121
121
  const ownersThreshold = await safeContract.getThreshold();
122
122
  await wait(10000);
123
123
 
124
+ let data;
125
+
126
+ try {
127
+ data = await buildDataForTransaction(transaction);
128
+ } catch (error) {
129
+ console.log(error);
130
+ transaction.targetStatus = 'failed';
131
+ transaction.targetErrors = [error.message];
132
+ transaction.status = 'failed'
133
+ await transaction.save();
134
+ protocol.sendTransaction(transaction)
135
+ return;
136
+ }
137
+
124
138
  let gnosisTx = await generateGnosisTransaction({
125
139
  baseGas: "0",
126
- data: await buildDataForTransaction(transaction),
140
+ data,
127
141
  gasPrice: "0",
128
142
  gasToken: "0x0000000000000000000000000000000000000000",
129
143
  nonce: '0',
@@ -142,7 +156,7 @@ class ProcessDepositEvents extends BaseTask {
142
156
  console.log(`Collecting signatures for execution ${transaction.transactionHash}`)
143
157
 
144
158
  console.log(ownerPeerIds);
145
-
159
+
146
160
  const signatures = await protocol.requestSignatures({
147
161
  type: 'source',
148
162
  transactionHash: transaction.transactionHash,
@@ -45,8 +45,8 @@ class SyncDepositEvents extends BaseTask {
45
45
  const uniqueIdentifier = {
46
46
  action: 'deposit',
47
47
  submitTransactionHash: event.transactionHash,
48
- sourceChainId: sourceChainId.toNumber(),
49
- targetChainId: targetChainId.toNumber(),
48
+ sourceChainId: sourceChainId,
49
+ targetChainId: targetChainId,
50
50
  }
51
51
 
52
52
  if (await Transaction.findOne({ where: uniqueIdentifier })) {
@@ -0,0 +1,105 @@
1
+ import { BaseTask } from "../BaseTask";
2
+ import Logger from '@/logger';
3
+ import { ethers } from "ethers";
4
+ import abi from "@/abi";
5
+ import { Transaction } from "@/db";
6
+ import { getContract, getRpcProviderUrl } from "@/utils";
7
+ import { addresses } from "@/constants";
8
+ import { ChainId } from "@/types";
9
+ import config from "@/config";
10
+ import { InteropXGateway } from "@/typechain";
11
+
12
+ class SyncWithdrawEvents extends BaseTask {
13
+ contractAddress: string;
14
+ provider: ethers.providers.JsonRpcProvider;
15
+ contract: InteropXGateway;
16
+ chainId: ChainId;
17
+
18
+ constructor({ chainId }: { chainId: ChainId }) {
19
+ super({
20
+ logger: new Logger("InteropXGateway::SyncWithdrawEvents"),
21
+ })
22
+ this.chainId = chainId;
23
+ }
24
+
25
+ async pollHandler() {
26
+ const currentBlock = await this.provider.getBlockNumber();
27
+
28
+ const events = await this.contract.queryFilter(
29
+ this.contract.filters.LogGatewayWithdraw(),
30
+ currentBlock - 500,
31
+ currentBlock,
32
+ );
33
+
34
+ let processedEvents = 0;
35
+
36
+ for (const event of events) {
37
+
38
+ try {
39
+ if (!event.args) {
40
+ continue;
41
+ }
42
+
43
+ const { user, token, amount, sourceChainId, targetChainId, transactionHash } = event.args;
44
+
45
+ const uniqueIdentifier = {
46
+ action: 'withdraw',
47
+ submitTransactionHash: transactionHash,
48
+ sourceChainId: sourceChainId,
49
+ targetChainId: targetChainId,
50
+
51
+ targetEvent: null
52
+ }
53
+ const transaction = await Transaction.findOne({ where: uniqueIdentifier });
54
+
55
+ if (!transaction) {
56
+ return;
57
+ }
58
+
59
+ const tx = await event.getTransaction()
60
+
61
+ transaction.targetStatus = 'success'
62
+ transaction.targetErrors = []
63
+ transaction.targetTransactionHash = tx.hash
64
+ transaction.targetEvent = {
65
+ user,
66
+ token,
67
+ amount: amount.toString(),
68
+ sourceChainId,
69
+ targetChainId,
70
+ transactionHash,
71
+ }
72
+ transaction.status = 'success'
73
+
74
+ await transaction.save()
75
+
76
+ this.logger.info(
77
+ `Witdraw confirmation received: ${transaction.transactionHash} `
78
+ );
79
+ } catch (error) {
80
+ this.logger.error(error);
81
+ }
82
+ }
83
+
84
+ if (processedEvents > 0)
85
+ this.logger.info(`${processedEvents} events processed`);
86
+ }
87
+
88
+ async start(): Promise<void> {
89
+ this.contractAddress = addresses[this.chainId].interopXGateway;
90
+
91
+ this.provider = new ethers.providers.JsonRpcProvider(
92
+ getRpcProviderUrl(this.chainId)
93
+ );
94
+
95
+ this.contract = getContract<InteropXGateway>(
96
+ this.contractAddress,
97
+ abi.interopXGateway,
98
+ new ethers.Wallet(config.privateKey!, this.provider)
99
+ );
100
+
101
+ await super.start()
102
+ }
103
+ }
104
+
105
+ export default SyncWithdrawEvents;
@@ -1,18 +1,24 @@
1
1
  import { BaseTask } from "./BaseTask";
2
2
  import InteropXGatewayProcessDepositEvents from "./InteropXGateway/ProcessDepositEvents";
3
3
  import InteropXGatewaySyncDepositEvents from "./InteropXGateway/SyncDepositEvents";
4
+ import InteropXGatewaySyncWithdrawEvents from "./InteropXGateway/SyncWithdrawtEvents";
4
5
 
5
- import InteropBridgeSyncWithdrawEvents from "./InteropBridge/SyncWithdrawEvents";
6
6
  import InteropBridgeProcessWithdrawEvents from "./InteropBridge/ProcessWithdrawEvents";
7
- import AutoUpdateTask from "./AutoUpdateTask";
7
+ import InteropBridgeSyncBurnEvents from "./InteropBridge/SyncBurnEvents";
8
+ import InteropBridgeSyncMintEvents from "./InteropBridge/SyncMintEvents";
9
+
8
10
  import SyncTransactionStatusTask from "./Transactions/SyncTransactionStatusTask";
9
11
 
12
+ import AutoUpdateTask from "./AutoUpdateTask";
13
+
10
14
  export class Tasks {
11
15
 
12
16
  tasks: BaseTask[] = [
13
17
  new SyncTransactionStatusTask(),
14
18
  new AutoUpdateTask(),
15
19
 
20
+ // InteropXGateway
21
+
16
22
  new InteropXGatewaySyncDepositEvents({
17
23
  chainId: 43114
18
24
  }),
@@ -21,13 +27,26 @@ export class Tasks {
21
27
  chainId: 43114
22
28
  }),
23
29
 
24
- new InteropBridgeSyncWithdrawEvents({
25
- chainId: 137,
26
- itokenAddress: '0xEab02fe1F016eE3e4106c1C6aad35FeEe657268E',
30
+
31
+ new InteropXGatewaySyncWithdrawEvents({
32
+ chainId: 43114
27
33
  }),
28
34
 
35
+
36
+ // InteropBridge
37
+
29
38
  new InteropBridgeProcessWithdrawEvents({
30
39
  chainId: 137,
40
+ }),
41
+
42
+ new InteropBridgeSyncMintEvents({
43
+ chainId: 137,
44
+ itokenAddress: '0x62c0045f3277e7067cacad3c8038eeabb1bd92d1',
45
+ }),
46
+
47
+ new InteropBridgeSyncBurnEvents({
48
+ chainId: 137,
49
+ itokenAddress: '0x62c0045f3277e7067cacad3c8038eeabb1bd92d1',
31
50
  })
32
51
  ];
33
52
 
@@ -31,11 +31,11 @@ export interface InteropBridgeTokenInterface extends utils.Interface {
31
31
  "allowance(address,address)": FunctionFragment;
32
32
  "approve(address,uint256)": FunctionFragment;
33
33
  "balanceOf(address)": FunctionFragment;
34
- "burn(address,uint256,uint256)": FunctionFragment;
34
+ "burn(address,uint256,uint32)": FunctionFragment;
35
35
  "decimals()": FunctionFragment;
36
36
  "decreaseAllowance(address,uint256)": FunctionFragment;
37
37
  "increaseAllowance(address,uint256)": FunctionFragment;
38
- "mint(address,uint256,uint256,bytes32)": FunctionFragment;
38
+ "mint(address,uint256,uint32,bytes32)": FunctionFragment;
39
39
  "name()": FunctionFragment;
40
40
  "owner()": FunctionFragment;
41
41
  "renounceOwnership()": FunctionFragment;
@@ -153,8 +153,8 @@ export interface InteropBridgeTokenInterface extends utils.Interface {
153
153
 
154
154
  events: {
155
155
  "Approval(address,address,uint256)": EventFragment;
156
- "Burn(address,uint256,uint256)": EventFragment;
157
- "Mint(address,uint256,uint256,bytes32)": EventFragment;
156
+ "Burn(address,uint256,uint32,uint32)": EventFragment;
157
+ "Mint(address,uint256,uint32,uint32,bytes32)": EventFragment;
158
158
  "OwnershipTransferred(address,address)": EventFragment;
159
159
  "Transfer(address,address,uint256)": EventFragment;
160
160
  };
@@ -181,10 +181,11 @@ export type ApprovalEventFilter = TypedEventFilter<ApprovalEvent>;
181
181
  export interface BurnEventObject {
182
182
  to: string;
183
183
  amount: BigNumber;
184
- chainId: BigNumber;
184
+ sourceChainId: number;
185
+ targetChainId: number;
185
186
  }
186
187
  export type BurnEvent = TypedEvent<
187
- [string, BigNumber, BigNumber],
188
+ [string, BigNumber, number, number],
188
189
  BurnEventObject
189
190
  >;
190
191
 
@@ -193,11 +194,12 @@ export type BurnEventFilter = TypedEventFilter<BurnEvent>;
193
194
  export interface MintEventObject {
194
195
  to: string;
195
196
  amount: BigNumber;
196
- chainId: BigNumber;
197
- transactionHash: string;
197
+ sourceChainId: number;
198
+ targetChainId: number;
199
+ submitTransactionHash: string;
198
200
  }
199
201
  export type MintEvent = TypedEvent<
200
- [string, BigNumber, BigNumber, string],
202
+ [string, BigNumber, number, number, string],
201
203
  MintEventObject
202
204
  >;
203
205
 
@@ -486,28 +488,32 @@ export interface InteropBridgeToken extends BaseContract {
486
488
  value?: null
487
489
  ): ApprovalEventFilter;
488
490
 
489
- "Burn(address,uint256,uint256)"(
491
+ "Burn(address,uint256,uint32,uint32)"(
490
492
  to?: string | null,
491
493
  amount?: null,
492
- chainId?: BigNumberish | null
494
+ sourceChainId?: null,
495
+ targetChainId?: BigNumberish | null
493
496
  ): BurnEventFilter;
494
497
  Burn(
495
498
  to?: string | null,
496
499
  amount?: null,
497
- chainId?: BigNumberish | null
500
+ sourceChainId?: null,
501
+ targetChainId?: BigNumberish | null
498
502
  ): BurnEventFilter;
499
503
 
500
- "Mint(address,uint256,uint256,bytes32)"(
504
+ "Mint(address,uint256,uint32,uint32,bytes32)"(
501
505
  to?: string | null,
502
506
  amount?: null,
503
- chainId?: BigNumberish | null,
504
- transactionHash?: BytesLike | null
507
+ sourceChainId?: BigNumberish | null,
508
+ targetChainId?: null,
509
+ submitTransactionHash?: BytesLike | null
505
510
  ): MintEventFilter;
506
511
  Mint(
507
512
  to?: string | null,
508
513
  amount?: null,
509
- chainId?: BigNumberish | null,
510
- transactionHash?: BytesLike | null
514
+ sourceChainId?: BigNumberish | null,
515
+ targetChainId?: null,
516
+ submitTransactionHash?: BytesLike | null
511
517
  ): MintEventFilter;
512
518
 
513
519
  "OwnershipTransferred(address,address)"(
@@ -29,11 +29,11 @@ import type {
29
29
  export interface InteropXGatewayInterface extends utils.Interface {
30
30
  functions: {
31
31
  "_vnonce()": FunctionFragment;
32
- "deposit(address,uint256,uint256)": FunctionFragment;
33
- "depositFor(address,address,uint256,uint256)": FunctionFragment;
32
+ "deposit(address,uint256,uint32)": FunctionFragment;
33
+ "depositFor(address,address,uint256,uint32)": FunctionFragment;
34
34
  "owner()": FunctionFragment;
35
35
  "renounceOwnership()": FunctionFragment;
36
- "systemWithdraw(uint256,address,address,uint256,bytes32)": FunctionFragment;
36
+ "systemWithdraw(uint256,address,address,uint32,bytes32)": FunctionFragment;
37
37
  "transferOwnership(address)": FunctionFragment;
38
38
  };
39
39
 
@@ -89,8 +89,8 @@ export interface InteropXGatewayInterface extends utils.Interface {
89
89
  ): Result;
90
90
 
91
91
  events: {
92
- "LogGatewayDeposit(address,address,uint256,uint256,uint256,uint256)": EventFragment;
93
- "LogGatewayWithdraw(address,address,uint256,uint256,uint256,bytes32)": EventFragment;
92
+ "LogGatewayDeposit(address,address,uint256,uint256,uint32,uint32)": EventFragment;
93
+ "LogGatewayWithdraw(address,address,uint256,uint32,uint32,bytes32)": EventFragment;
94
94
  "OwnershipTransferred(address,address)": EventFragment;
95
95
  };
96
96
 
@@ -104,11 +104,11 @@ export interface LogGatewayDepositEventObject {
104
104
  token: string;
105
105
  amount: BigNumber;
106
106
  vnonce: BigNumber;
107
- sourceChainId: BigNumber;
108
- targetChainId: BigNumber;
107
+ sourceChainId: number;
108
+ targetChainId: number;
109
109
  }
110
110
  export type LogGatewayDepositEvent = TypedEvent<
111
- [string, string, BigNumber, BigNumber, BigNumber, BigNumber],
111
+ [string, string, BigNumber, BigNumber, number, number],
112
112
  LogGatewayDepositEventObject
113
113
  >;
114
114
 
@@ -119,12 +119,12 @@ export interface LogGatewayWithdrawEventObject {
119
119
  user: string;
120
120
  token: string;
121
121
  amount: BigNumber;
122
- sourceChainId: BigNumber;
123
- targetChainId: BigNumber;
122
+ sourceChainId: number;
123
+ targetChainId: number;
124
124
  transactionHash: string;
125
125
  }
126
126
  export type LogGatewayWithdrawEvent = TypedEvent<
127
- [string, string, BigNumber, BigNumber, BigNumber, string],
127
+ [string, string, BigNumber, number, number, string],
128
128
  LogGatewayWithdrawEventObject
129
129
  >;
130
130
 
@@ -283,7 +283,7 @@ export interface InteropXGateway extends BaseContract {
283
283
  };
284
284
 
285
285
  filters: {
286
- "LogGatewayDeposit(address,address,uint256,uint256,uint256,uint256)"(
286
+ "LogGatewayDeposit(address,address,uint256,uint256,uint32,uint32)"(
287
287
  user?: null,
288
288
  token?: string | null,
289
289
  amount?: null,
@@ -300,7 +300,7 @@ export interface InteropXGateway extends BaseContract {
300
300
  targetChainId?: BigNumberish | null
301
301
  ): LogGatewayDepositEventFilter;
302
302
 
303
- "LogGatewayWithdraw(address,address,uint256,uint256,uint256,bytes32)"(
303
+ "LogGatewayWithdraw(address,address,uint256,uint32,uint32,bytes32)"(
304
304
  user?: null,
305
305
  token?: string | null,
306
306
  amount?: null,
@@ -61,11 +61,17 @@ const _abi = [
61
61
  name: "amount",
62
62
  type: "uint256",
63
63
  },
64
+ {
65
+ indexed: false,
66
+ internalType: "uint32",
67
+ name: "sourceChainId",
68
+ type: "uint32",
69
+ },
64
70
  {
65
71
  indexed: true,
66
- internalType: "uint256",
67
- name: "chainId",
68
- type: "uint256",
72
+ internalType: "uint32",
73
+ name: "targetChainId",
74
+ type: "uint32",
69
75
  },
70
76
  ],
71
77
  name: "Burn",
@@ -88,14 +94,20 @@ const _abi = [
88
94
  },
89
95
  {
90
96
  indexed: true,
91
- internalType: "uint256",
92
- name: "chainId",
93
- type: "uint256",
97
+ internalType: "uint32",
98
+ name: "sourceChainId",
99
+ type: "uint32",
100
+ },
101
+ {
102
+ indexed: false,
103
+ internalType: "uint32",
104
+ name: "targetChainId",
105
+ type: "uint32",
94
106
  },
95
107
  {
96
108
  indexed: true,
97
109
  internalType: "bytes32",
98
- name: "transactionHash",
110
+ name: "submitTransactionHash",
99
111
  type: "bytes32",
100
112
  },
101
113
  ],
@@ -226,9 +238,9 @@ const _abi = [
226
238
  type: "uint256",
227
239
  },
228
240
  {
229
- internalType: "uint256",
241
+ internalType: "uint32",
230
242
  name: "chainId",
231
- type: "uint256",
243
+ type: "uint32",
232
244
  },
233
245
  ],
234
246
  name: "burn",
@@ -310,9 +322,9 @@ const _abi = [
310
322
  type: "uint256",
311
323
  },
312
324
  {
313
- internalType: "uint256",
325
+ internalType: "uint32",
314
326
  name: "chainId",
315
- type: "uint256",
327
+ type: "uint32",
316
328
  },
317
329
  {
318
330
  internalType: "bytes32",