/
swap-router-contract-data.ts
109 lines (107 loc) · 4.52 KB
/
swap-router-contract-data.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import { AbiItem } from 'web3-utils';
export const BERACHAIN_TESTNET_ALGEBRA_ROUTER_CONTRACT_ADDRESS =
'0x1A69E9B9F43602F1f9a3C98874732b18B09B526D';
export const BERACHAIN_TESTNET_ALGEBRA_ROUTER_CONTRACT_ABI = [
{
inputs: [
{
components: [
{ internalType: 'bytes', name: 'path', type: 'bytes' },
{ internalType: 'address', name: 'recipient', type: 'address' },
{ internalType: 'uint256', name: 'deadline', type: 'uint256' },
{ internalType: 'uint256', name: 'amountIn', type: 'uint256' },
{ internalType: 'uint256', name: 'amountOutMinimum', type: 'uint256' }
],
internalType: 'struct ISwapRouter.ExactInputParams',
name: 'params',
type: 'tuple'
}
],
name: 'exactInput',
outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
stateMutability: 'payable',
type: 'function'
},
{
inputs: [
{
components: [
{ internalType: 'address', name: 'tokenIn', type: 'address' },
{ internalType: 'address', name: 'tokenOut', type: 'address' },
{ internalType: 'address', name: 'recipient', type: 'address' },
{ internalType: 'uint256', name: 'deadline', type: 'uint256' },
{ internalType: 'uint256', name: 'amountIn', type: 'uint256' },
{ internalType: 'uint256', name: 'amountOutMinimum', type: 'uint256' },
{ internalType: 'uint160', name: 'limitSqrtPrice', type: 'uint160' }
],
internalType: 'struct ISwapRouter.ExactInputSingleParams',
name: 'params',
type: 'tuple'
}
],
name: 'exactInputSingle',
outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
stateMutability: 'payable',
type: 'function'
},
{
inputs: [
{
components: [
{ internalType: 'bytes', name: 'path', type: 'bytes' },
{ internalType: 'address', name: 'recipient', type: 'address' },
{ internalType: 'uint256', name: 'deadline', type: 'uint256' },
{ internalType: 'uint256', name: 'amountOut', type: 'uint256' },
{ internalType: 'uint256', name: 'amountInMaximum', type: 'uint256' }
],
internalType: 'struct ISwapRouter.ExactOutputParams',
name: 'params',
type: 'tuple'
}
],
name: 'exactOutput',
outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
stateMutability: 'payable',
type: 'function'
},
{
inputs: [
{
components: [
{ internalType: 'address', name: 'tokenIn', type: 'address' },
{ internalType: 'address', name: 'tokenOut', type: 'address' },
{ internalType: 'address', name: 'recipient', type: 'address' },
{ internalType: 'uint256', name: 'deadline', type: 'uint256' },
{ internalType: 'uint256', name: 'amountOut', type: 'uint256' },
{ internalType: 'uint256', name: 'amountInMaximum', type: 'uint256' },
{ internalType: 'uint160', name: 'limitSqrtPrice', type: 'uint160' }
],
internalType: 'struct ISwapRouter.ExactOutputSingleParams',
name: 'params',
type: 'tuple'
}
],
name: 'exactOutputSingle',
outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
stateMutability: 'payable',
type: 'function'
},
{
inputs: [{ internalType: 'bytes[]', name: 'data', type: 'bytes[]' }],
name: 'multicall',
outputs: [{ internalType: 'bytes[]', name: 'results', type: 'bytes[]' }],
stateMutability: 'payable',
type: 'function'
},
{
inputs: [
{ internalType: 'uint256', name: 'amountMinimum', type: 'uint256' },
{ internalType: 'address', name: 'recipient', type: 'address' }
],
name: 'unwrapWNativeToken',
outputs: [],
stateMutability: 'payable',
type: 'function'
},
{ stateMutability: 'payable', type: 'receive' }
] as AbiItem[];