@luxfi/exchange 0.2.0 → 1.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.
Files changed (53) hide show
  1. package/dist/contracts/abis/amm-v2-factory.d.ts +148 -0
  2. package/dist/contracts/abis/amm-v2-factory.d.ts.map +1 -0
  3. package/dist/contracts/abis/amm-v2-factory.js +52 -0
  4. package/dist/contracts/abis/amm-v2-pair.d.ts +236 -0
  5. package/dist/contracts/abis/amm-v2-pair.d.ts.map +1 -0
  6. package/dist/contracts/abis/amm-v2-pair.js +88 -0
  7. package/dist/contracts/abis/amm-v2-router.d.ts +496 -0
  8. package/dist/contracts/abis/amm-v2-router.d.ts.map +1 -0
  9. package/dist/contracts/abis/amm-v2-router.js +149 -0
  10. package/dist/contracts/abis/amm-v3-factory.d.ts +152 -0
  11. package/dist/contracts/abis/amm-v3-factory.d.ts.map +1 -0
  12. package/dist/contracts/abis/amm-v3-factory.js +48 -0
  13. package/dist/contracts/abis/amm-v3-pool.d.ts +254 -0
  14. package/dist/contracts/abis/amm-v3-pool.d.ts.map +1 -0
  15. package/dist/contracts/abis/amm-v3-pool.js +84 -0
  16. package/dist/contracts/abis/index.d.ts +8 -5
  17. package/dist/contracts/abis/index.d.ts.map +1 -1
  18. package/dist/contracts/abis/index.js +13 -6
  19. package/dist/contracts/abis/lux-amm-v2-factory.d.ts +148 -0
  20. package/dist/contracts/abis/lux-amm-v2-factory.d.ts.map +1 -0
  21. package/dist/contracts/abis/lux-amm-v2-factory.js +52 -0
  22. package/dist/contracts/abis/lux-amm-v2-pair.d.ts +236 -0
  23. package/dist/contracts/abis/lux-amm-v2-pair.d.ts.map +1 -0
  24. package/dist/contracts/abis/lux-amm-v2-pair.js +88 -0
  25. package/dist/contracts/abis/lux-amm-v2-router.d.ts +496 -0
  26. package/dist/contracts/abis/lux-amm-v2-router.d.ts.map +1 -0
  27. package/dist/contracts/abis/lux-amm-v2-router.js +149 -0
  28. package/dist/contracts/abis/lux-amm-v3-factory.d.ts +152 -0
  29. package/dist/contracts/abis/lux-amm-v3-factory.d.ts.map +1 -0
  30. package/dist/contracts/abis/lux-amm-v3-factory.js +48 -0
  31. package/dist/contracts/abis/lux-amm-v3-pool.d.ts +254 -0
  32. package/dist/contracts/abis/lux-amm-v3-pool.d.ts.map +1 -0
  33. package/dist/contracts/abis/lux-amm-v3-pool.js +84 -0
  34. package/dist/contracts/addresses.d.ts +18 -48
  35. package/dist/contracts/addresses.d.ts.map +1 -1
  36. package/dist/contracts/addresses.js +30 -22
  37. package/dist/tokens/index.d.ts +25 -0
  38. package/dist/tokens/index.d.ts.map +1 -1
  39. package/dist/tokens/index.js +90 -5
  40. package/package.json +2 -2
  41. package/src/contracts/abis/{uniswap-v2-factory.ts → amm-v2-factory.ts} +6 -2
  42. package/src/contracts/abis/{uniswap-v2-pair.ts → amm-v2-pair.ts} +6 -2
  43. package/src/contracts/abis/{uniswap-v2-router.ts → amm-v2-router.ts} +6 -2
  44. package/src/contracts/abis/{uniswap-v3-factory.ts → amm-v3-factory.ts} +6 -2
  45. package/src/contracts/abis/{uniswap-v3-pool.ts → amm-v3-pool.ts} +6 -2
  46. package/src/contracts/abis/index.ts +16 -6
  47. package/src/contracts/abis/pool-manager.ts +1 -1
  48. package/src/contracts/addresses.ts +53 -52
  49. package/src/hooks/use-pools.ts +8 -6
  50. package/src/hooks/use-positions.ts +3 -3
  51. package/src/hooks/use-swap-quote.ts +1 -1
  52. package/src/hooks/use-swap.ts +1 -1
  53. package/src/tokens/index.ts +148 -32
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Lux AMM V3 Factory ABI
3
+ * Compatible with Uniswap V3 Factory interface
4
+ */
5
+ export declare const LUX_AMM_V3_FACTORY_ABI: readonly [{
6
+ readonly type: "function";
7
+ readonly name: "getPool";
8
+ readonly inputs: readonly [{
9
+ readonly name: "tokenA";
10
+ readonly type: "address";
11
+ }, {
12
+ readonly name: "tokenB";
13
+ readonly type: "address";
14
+ }, {
15
+ readonly name: "fee";
16
+ readonly type: "uint24";
17
+ }];
18
+ readonly outputs: readonly [{
19
+ readonly name: "pool";
20
+ readonly type: "address";
21
+ }];
22
+ readonly stateMutability: "view";
23
+ }, {
24
+ readonly type: "function";
25
+ readonly name: "createPool";
26
+ readonly inputs: readonly [{
27
+ readonly name: "tokenA";
28
+ readonly type: "address";
29
+ }, {
30
+ readonly name: "tokenB";
31
+ readonly type: "address";
32
+ }, {
33
+ readonly name: "fee";
34
+ readonly type: "uint24";
35
+ }];
36
+ readonly outputs: readonly [{
37
+ readonly name: "pool";
38
+ readonly type: "address";
39
+ }];
40
+ readonly stateMutability: "nonpayable";
41
+ }, {
42
+ readonly type: "function";
43
+ readonly name: "feeAmountTickSpacing";
44
+ readonly inputs: readonly [{
45
+ readonly name: "fee";
46
+ readonly type: "uint24";
47
+ }];
48
+ readonly outputs: readonly [{
49
+ readonly name: "tickSpacing";
50
+ readonly type: "int24";
51
+ }];
52
+ readonly stateMutability: "view";
53
+ }, {
54
+ readonly type: "event";
55
+ readonly name: "PoolCreated";
56
+ readonly inputs: readonly [{
57
+ readonly name: "token0";
58
+ readonly type: "address";
59
+ readonly indexed: true;
60
+ }, {
61
+ readonly name: "token1";
62
+ readonly type: "address";
63
+ readonly indexed: true;
64
+ }, {
65
+ readonly name: "fee";
66
+ readonly type: "uint24";
67
+ readonly indexed: true;
68
+ }, {
69
+ readonly name: "tickSpacing";
70
+ readonly type: "int24";
71
+ readonly indexed: false;
72
+ }, {
73
+ readonly name: "pool";
74
+ readonly type: "address";
75
+ readonly indexed: false;
76
+ }];
77
+ }];
78
+ /** @deprecated Use LUX_AMM_V3_FACTORY_ABI instead */
79
+ export declare const UNISWAP_V3_FACTORY_ABI: readonly [{
80
+ readonly type: "function";
81
+ readonly name: "getPool";
82
+ readonly inputs: readonly [{
83
+ readonly name: "tokenA";
84
+ readonly type: "address";
85
+ }, {
86
+ readonly name: "tokenB";
87
+ readonly type: "address";
88
+ }, {
89
+ readonly name: "fee";
90
+ readonly type: "uint24";
91
+ }];
92
+ readonly outputs: readonly [{
93
+ readonly name: "pool";
94
+ readonly type: "address";
95
+ }];
96
+ readonly stateMutability: "view";
97
+ }, {
98
+ readonly type: "function";
99
+ readonly name: "createPool";
100
+ readonly inputs: readonly [{
101
+ readonly name: "tokenA";
102
+ readonly type: "address";
103
+ }, {
104
+ readonly name: "tokenB";
105
+ readonly type: "address";
106
+ }, {
107
+ readonly name: "fee";
108
+ readonly type: "uint24";
109
+ }];
110
+ readonly outputs: readonly [{
111
+ readonly name: "pool";
112
+ readonly type: "address";
113
+ }];
114
+ readonly stateMutability: "nonpayable";
115
+ }, {
116
+ readonly type: "function";
117
+ readonly name: "feeAmountTickSpacing";
118
+ readonly inputs: readonly [{
119
+ readonly name: "fee";
120
+ readonly type: "uint24";
121
+ }];
122
+ readonly outputs: readonly [{
123
+ readonly name: "tickSpacing";
124
+ readonly type: "int24";
125
+ }];
126
+ readonly stateMutability: "view";
127
+ }, {
128
+ readonly type: "event";
129
+ readonly name: "PoolCreated";
130
+ readonly inputs: readonly [{
131
+ readonly name: "token0";
132
+ readonly type: "address";
133
+ readonly indexed: true;
134
+ }, {
135
+ readonly name: "token1";
136
+ readonly type: "address";
137
+ readonly indexed: true;
138
+ }, {
139
+ readonly name: "fee";
140
+ readonly type: "uint24";
141
+ readonly indexed: true;
142
+ }, {
143
+ readonly name: "tickSpacing";
144
+ readonly type: "int24";
145
+ readonly indexed: false;
146
+ }, {
147
+ readonly name: "pool";
148
+ readonly type: "address";
149
+ readonly indexed: false;
150
+ }];
151
+ }];
152
+ //# sourceMappingURL=lux-amm-v3-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lux-amm-v3-factory.d.ts","sourceRoot":"","sources":["../../../src/contracts/abis/lux-amm-v3-factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCzB,CAAA;AAEV,qDAAqD;AACrD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAyB,CAAA"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Lux AMM V3 Factory ABI
3
+ * Compatible with Uniswap V3 Factory interface
4
+ */
5
+ export const LUX_AMM_V3_FACTORY_ABI = [
6
+ {
7
+ type: 'function',
8
+ name: 'getPool',
9
+ inputs: [
10
+ { name: 'tokenA', type: 'address' },
11
+ { name: 'tokenB', type: 'address' },
12
+ { name: 'fee', type: 'uint24' },
13
+ ],
14
+ outputs: [{ name: 'pool', type: 'address' }],
15
+ stateMutability: 'view',
16
+ },
17
+ {
18
+ type: 'function',
19
+ name: 'createPool',
20
+ inputs: [
21
+ { name: 'tokenA', type: 'address' },
22
+ { name: 'tokenB', type: 'address' },
23
+ { name: 'fee', type: 'uint24' },
24
+ ],
25
+ outputs: [{ name: 'pool', type: 'address' }],
26
+ stateMutability: 'nonpayable',
27
+ },
28
+ {
29
+ type: 'function',
30
+ name: 'feeAmountTickSpacing',
31
+ inputs: [{ name: 'fee', type: 'uint24' }],
32
+ outputs: [{ name: 'tickSpacing', type: 'int24' }],
33
+ stateMutability: 'view',
34
+ },
35
+ {
36
+ type: 'event',
37
+ name: 'PoolCreated',
38
+ inputs: [
39
+ { name: 'token0', type: 'address', indexed: true },
40
+ { name: 'token1', type: 'address', indexed: true },
41
+ { name: 'fee', type: 'uint24', indexed: true },
42
+ { name: 'tickSpacing', type: 'int24', indexed: false },
43
+ { name: 'pool', type: 'address', indexed: false },
44
+ ],
45
+ },
46
+ ];
47
+ /** @deprecated Use LUX_AMM_V3_FACTORY_ABI instead */
48
+ export const UNISWAP_V3_FACTORY_ABI = LUX_AMM_V3_FACTORY_ABI;
@@ -0,0 +1,254 @@
1
+ /**
2
+ * Lux AMM V3 Pool ABI
3
+ * Compatible with Uniswap V3 Pool interface
4
+ */
5
+ export declare const LUX_AMM_V3_POOL_ABI: readonly [{
6
+ readonly type: "function";
7
+ readonly name: "token0";
8
+ readonly inputs: readonly [];
9
+ readonly outputs: readonly [{
10
+ readonly type: "address";
11
+ }];
12
+ readonly stateMutability: "view";
13
+ }, {
14
+ readonly type: "function";
15
+ readonly name: "token1";
16
+ readonly inputs: readonly [];
17
+ readonly outputs: readonly [{
18
+ readonly type: "address";
19
+ }];
20
+ readonly stateMutability: "view";
21
+ }, {
22
+ readonly type: "function";
23
+ readonly name: "fee";
24
+ readonly inputs: readonly [];
25
+ readonly outputs: readonly [{
26
+ readonly type: "uint24";
27
+ }];
28
+ readonly stateMutability: "view";
29
+ }, {
30
+ readonly type: "function";
31
+ readonly name: "tickSpacing";
32
+ readonly inputs: readonly [];
33
+ readonly outputs: readonly [{
34
+ readonly type: "int24";
35
+ }];
36
+ readonly stateMutability: "view";
37
+ }, {
38
+ readonly type: "function";
39
+ readonly name: "liquidity";
40
+ readonly inputs: readonly [];
41
+ readonly outputs: readonly [{
42
+ readonly type: "uint128";
43
+ }];
44
+ readonly stateMutability: "view";
45
+ }, {
46
+ readonly type: "function";
47
+ readonly name: "slot0";
48
+ readonly inputs: readonly [];
49
+ readonly outputs: readonly [{
50
+ readonly name: "sqrtPriceX96";
51
+ readonly type: "uint160";
52
+ }, {
53
+ readonly name: "tick";
54
+ readonly type: "int24";
55
+ }, {
56
+ readonly name: "observationIndex";
57
+ readonly type: "uint16";
58
+ }, {
59
+ readonly name: "observationCardinality";
60
+ readonly type: "uint16";
61
+ }, {
62
+ readonly name: "observationCardinalityNext";
63
+ readonly type: "uint16";
64
+ }, {
65
+ readonly name: "feeProtocol";
66
+ readonly type: "uint8";
67
+ }, {
68
+ readonly name: "unlocked";
69
+ readonly type: "bool";
70
+ }];
71
+ readonly stateMutability: "view";
72
+ }, {
73
+ readonly type: "function";
74
+ readonly name: "positions";
75
+ readonly inputs: readonly [{
76
+ readonly name: "key";
77
+ readonly type: "bytes32";
78
+ }];
79
+ readonly outputs: readonly [{
80
+ readonly name: "liquidity";
81
+ readonly type: "uint128";
82
+ }, {
83
+ readonly name: "feeGrowthInside0LastX128";
84
+ readonly type: "uint256";
85
+ }, {
86
+ readonly name: "feeGrowthInside1LastX128";
87
+ readonly type: "uint256";
88
+ }, {
89
+ readonly name: "tokensOwed0";
90
+ readonly type: "uint128";
91
+ }, {
92
+ readonly name: "tokensOwed1";
93
+ readonly type: "uint128";
94
+ }];
95
+ readonly stateMutability: "view";
96
+ }, {
97
+ readonly type: "event";
98
+ readonly name: "Swap";
99
+ readonly inputs: readonly [{
100
+ readonly name: "sender";
101
+ readonly type: "address";
102
+ readonly indexed: true;
103
+ }, {
104
+ readonly name: "recipient";
105
+ readonly type: "address";
106
+ readonly indexed: true;
107
+ }, {
108
+ readonly name: "amount0";
109
+ readonly type: "int256";
110
+ readonly indexed: false;
111
+ }, {
112
+ readonly name: "amount1";
113
+ readonly type: "int256";
114
+ readonly indexed: false;
115
+ }, {
116
+ readonly name: "sqrtPriceX96";
117
+ readonly type: "uint160";
118
+ readonly indexed: false;
119
+ }, {
120
+ readonly name: "liquidity";
121
+ readonly type: "uint128";
122
+ readonly indexed: false;
123
+ }, {
124
+ readonly name: "tick";
125
+ readonly type: "int24";
126
+ readonly indexed: false;
127
+ }];
128
+ }];
129
+ /** @deprecated Use LUX_AMM_V3_POOL_ABI instead */
130
+ export declare const UNISWAP_V3_POOL_ABI: readonly [{
131
+ readonly type: "function";
132
+ readonly name: "token0";
133
+ readonly inputs: readonly [];
134
+ readonly outputs: readonly [{
135
+ readonly type: "address";
136
+ }];
137
+ readonly stateMutability: "view";
138
+ }, {
139
+ readonly type: "function";
140
+ readonly name: "token1";
141
+ readonly inputs: readonly [];
142
+ readonly outputs: readonly [{
143
+ readonly type: "address";
144
+ }];
145
+ readonly stateMutability: "view";
146
+ }, {
147
+ readonly type: "function";
148
+ readonly name: "fee";
149
+ readonly inputs: readonly [];
150
+ readonly outputs: readonly [{
151
+ readonly type: "uint24";
152
+ }];
153
+ readonly stateMutability: "view";
154
+ }, {
155
+ readonly type: "function";
156
+ readonly name: "tickSpacing";
157
+ readonly inputs: readonly [];
158
+ readonly outputs: readonly [{
159
+ readonly type: "int24";
160
+ }];
161
+ readonly stateMutability: "view";
162
+ }, {
163
+ readonly type: "function";
164
+ readonly name: "liquidity";
165
+ readonly inputs: readonly [];
166
+ readonly outputs: readonly [{
167
+ readonly type: "uint128";
168
+ }];
169
+ readonly stateMutability: "view";
170
+ }, {
171
+ readonly type: "function";
172
+ readonly name: "slot0";
173
+ readonly inputs: readonly [];
174
+ readonly outputs: readonly [{
175
+ readonly name: "sqrtPriceX96";
176
+ readonly type: "uint160";
177
+ }, {
178
+ readonly name: "tick";
179
+ readonly type: "int24";
180
+ }, {
181
+ readonly name: "observationIndex";
182
+ readonly type: "uint16";
183
+ }, {
184
+ readonly name: "observationCardinality";
185
+ readonly type: "uint16";
186
+ }, {
187
+ readonly name: "observationCardinalityNext";
188
+ readonly type: "uint16";
189
+ }, {
190
+ readonly name: "feeProtocol";
191
+ readonly type: "uint8";
192
+ }, {
193
+ readonly name: "unlocked";
194
+ readonly type: "bool";
195
+ }];
196
+ readonly stateMutability: "view";
197
+ }, {
198
+ readonly type: "function";
199
+ readonly name: "positions";
200
+ readonly inputs: readonly [{
201
+ readonly name: "key";
202
+ readonly type: "bytes32";
203
+ }];
204
+ readonly outputs: readonly [{
205
+ readonly name: "liquidity";
206
+ readonly type: "uint128";
207
+ }, {
208
+ readonly name: "feeGrowthInside0LastX128";
209
+ readonly type: "uint256";
210
+ }, {
211
+ readonly name: "feeGrowthInside1LastX128";
212
+ readonly type: "uint256";
213
+ }, {
214
+ readonly name: "tokensOwed0";
215
+ readonly type: "uint128";
216
+ }, {
217
+ readonly name: "tokensOwed1";
218
+ readonly type: "uint128";
219
+ }];
220
+ readonly stateMutability: "view";
221
+ }, {
222
+ readonly type: "event";
223
+ readonly name: "Swap";
224
+ readonly inputs: readonly [{
225
+ readonly name: "sender";
226
+ readonly type: "address";
227
+ readonly indexed: true;
228
+ }, {
229
+ readonly name: "recipient";
230
+ readonly type: "address";
231
+ readonly indexed: true;
232
+ }, {
233
+ readonly name: "amount0";
234
+ readonly type: "int256";
235
+ readonly indexed: false;
236
+ }, {
237
+ readonly name: "amount1";
238
+ readonly type: "int256";
239
+ readonly indexed: false;
240
+ }, {
241
+ readonly name: "sqrtPriceX96";
242
+ readonly type: "uint160";
243
+ readonly indexed: false;
244
+ }, {
245
+ readonly name: "liquidity";
246
+ readonly type: "uint128";
247
+ readonly indexed: false;
248
+ }, {
249
+ readonly name: "tick";
250
+ readonly type: "int24";
251
+ readonly indexed: false;
252
+ }];
253
+ }];
254
+ //# sourceMappingURL=lux-amm-v3-pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lux-amm-v3-pool.d.ts","sourceRoot":"","sources":["../../../src/contracts/abis/lux-amm-v3-pool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6EtB,CAAA;AAEV,kDAAkD;AAClD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAsB,CAAA"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Lux AMM V3 Pool ABI
3
+ * Compatible with Uniswap V3 Pool interface
4
+ */
5
+ export const LUX_AMM_V3_POOL_ABI = [
6
+ {
7
+ type: 'function',
8
+ name: 'token0',
9
+ inputs: [],
10
+ outputs: [{ type: 'address' }],
11
+ stateMutability: 'view',
12
+ },
13
+ {
14
+ type: 'function',
15
+ name: 'token1',
16
+ inputs: [],
17
+ outputs: [{ type: 'address' }],
18
+ stateMutability: 'view',
19
+ },
20
+ {
21
+ type: 'function',
22
+ name: 'fee',
23
+ inputs: [],
24
+ outputs: [{ type: 'uint24' }],
25
+ stateMutability: 'view',
26
+ },
27
+ {
28
+ type: 'function',
29
+ name: 'tickSpacing',
30
+ inputs: [],
31
+ outputs: [{ type: 'int24' }],
32
+ stateMutability: 'view',
33
+ },
34
+ {
35
+ type: 'function',
36
+ name: 'liquidity',
37
+ inputs: [],
38
+ outputs: [{ type: 'uint128' }],
39
+ stateMutability: 'view',
40
+ },
41
+ {
42
+ type: 'function',
43
+ name: 'slot0',
44
+ inputs: [],
45
+ outputs: [
46
+ { name: 'sqrtPriceX96', type: 'uint160' },
47
+ { name: 'tick', type: 'int24' },
48
+ { name: 'observationIndex', type: 'uint16' },
49
+ { name: 'observationCardinality', type: 'uint16' },
50
+ { name: 'observationCardinalityNext', type: 'uint16' },
51
+ { name: 'feeProtocol', type: 'uint8' },
52
+ { name: 'unlocked', type: 'bool' },
53
+ ],
54
+ stateMutability: 'view',
55
+ },
56
+ {
57
+ type: 'function',
58
+ name: 'positions',
59
+ inputs: [{ name: 'key', type: 'bytes32' }],
60
+ outputs: [
61
+ { name: 'liquidity', type: 'uint128' },
62
+ { name: 'feeGrowthInside0LastX128', type: 'uint256' },
63
+ { name: 'feeGrowthInside1LastX128', type: 'uint256' },
64
+ { name: 'tokensOwed0', type: 'uint128' },
65
+ { name: 'tokensOwed1', type: 'uint128' },
66
+ ],
67
+ stateMutability: 'view',
68
+ },
69
+ {
70
+ type: 'event',
71
+ name: 'Swap',
72
+ inputs: [
73
+ { name: 'sender', type: 'address', indexed: true },
74
+ { name: 'recipient', type: 'address', indexed: true },
75
+ { name: 'amount0', type: 'int256', indexed: false },
76
+ { name: 'amount1', type: 'int256', indexed: false },
77
+ { name: 'sqrtPriceX96', type: 'uint160', indexed: false },
78
+ { name: 'liquidity', type: 'uint128', indexed: false },
79
+ { name: 'tick', type: 'int24', indexed: false },
80
+ ],
81
+ },
82
+ ];
83
+ /** @deprecated Use LUX_AMM_V3_POOL_ABI instead */
84
+ export const UNISWAP_V3_POOL_ABI = LUX_AMM_V3_POOL_ABI;
@@ -29,6 +29,9 @@ export declare const LUX_TESTNET_CONTRACTS: {
29
29
  readonly WLUX: Address;
30
30
  readonly WETH: Address;
31
31
  readonly MULTICALL: Address;
32
+ readonly LETH: Address;
33
+ readonly LBTC: Address;
34
+ readonly LUSD: Address;
32
35
  readonly V2_FACTORY: Address;
33
36
  readonly V2_ROUTER: Address;
34
37
  readonly V3_FACTORY: Address;
@@ -41,36 +44,37 @@ export declare const LUX_TESTNET_CONTRACTS: {
41
44
  readonly V3_NFT_DESCRIPTOR: Address;
42
45
  };
43
46
  /**
44
- * DEX Precompile addresses (native AMM)
45
- * These provide sub-microsecond execution
47
+ * DEX Precompile addresses (native AMM - Uniswap v4 style singleton PoolManager)
48
+ * These provide sub-microsecond execution via native Go implementation
46
49
  *
47
- * Lux Precompile Address Standard:
48
- * - Prefix format: 0xNNNN000000000000000000000000000000000000
49
- * - Range 0x0400-0x04FF is reserved for DEX precompiles
50
+ * Address format: 0x0000...00LPNUMBER (addresses end with LP number)
51
+ * LP-9010: DEX Precompile - Native HFT Order Book (PoolManager)
52
+ * LP-9011: Oracle Precompile - Multi-Source Price Aggregation
50
53
  *
51
- * @see ~/work/lux/precompile/dex/module.go for implementation
54
+ * @see ~/work/lux/precompile/registry/registry.go for the full address scheme
55
+ * @see ~/work/lux/dex/pkg/gateway/lux/provider.go for gateway implementation
52
56
  */
53
57
  export declare const DEX_PRECOMPILES: {
54
58
  readonly POOL_MANAGER: Address;
55
59
  readonly SWAP_ROUTER: Address;
56
60
  readonly HOOKS_REGISTRY: Address;
57
61
  readonly FLASH_LOAN: Address;
58
- readonly LENDING: Address;
59
- readonly LIQUID: Address;
62
+ readonly ORACLE_HUB: Address;
63
+ readonly CLOB: Address;
64
+ readonly VAULT: Address;
60
65
  readonly TELEPORT: Address;
61
66
  };
62
67
  /**
63
68
  * Contract addresses for Lux Dev (1337)
69
+ * Deterministic CREATE addresses from DeployFullStack.s.sol deployed by anvil account 0
70
+ * Account 0: 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266
64
71
  */
65
72
  export declare const LUX_DEV_CONTRACTS: {
66
73
  readonly WLUX: Address;
67
74
  readonly MULTICALL: Address;
68
- readonly ETH: Address;
69
- readonly BTC: Address;
70
- readonly USDC: Address;
71
- readonly USDT: Address;
72
- readonly DAI: Address;
73
- readonly AI: Address;
75
+ readonly LETH: Address;
76
+ readonly LBTC: Address;
77
+ readonly LUSD: Address;
74
78
  readonly V2_FACTORY: Address;
75
79
  readonly V2_ROUTER: Address;
76
80
  readonly V3_FACTORY: Address;
@@ -102,40 +106,6 @@ export declare function getContracts(chainId: number): {
102
106
  readonly V3_TICK_LENS: Address;
103
107
  readonly V3_NFT_POSITION_MANAGER: Address;
104
108
  readonly V3_NFT_DESCRIPTOR: Address;
105
- } | {
106
- readonly WLUX: Address;
107
- readonly WETH: Address;
108
- readonly MULTICALL: Address;
109
- readonly V2_FACTORY: Address;
110
- readonly V2_ROUTER: Address;
111
- readonly V3_FACTORY: Address;
112
- readonly V3_SWAP_ROUTER: Address;
113
- readonly V3_SWAP_ROUTER_02: Address;
114
- readonly V3_QUOTER: Address;
115
- readonly V3_QUOTER_V2: Address;
116
- readonly V3_TICK_LENS: Address;
117
- readonly V3_NFT_POSITION_MANAGER: Address;
118
- readonly V3_NFT_DESCRIPTOR: Address;
119
- } | {
120
- readonly WLUX: Address;
121
- readonly MULTICALL: Address;
122
- readonly ETH: Address;
123
- readonly BTC: Address;
124
- readonly USDC: Address;
125
- readonly USDT: Address;
126
- readonly DAI: Address;
127
- readonly AI: Address;
128
- readonly V2_FACTORY: Address;
129
- readonly V2_ROUTER: Address;
130
- readonly V3_FACTORY: Address;
131
- readonly V3_SWAP_ROUTER: Address;
132
- readonly V3_SWAP_ROUTER_02: Address;
133
- readonly V3_QUOTER: Address;
134
- readonly V3_QUOTER_V2: Address;
135
- readonly V3_TICK_LENS: Address;
136
- readonly V3_NFT_POSITION_MANAGER: Address;
137
- readonly V3_NFT_DESCRIPTOR: Address;
138
- readonly STAKED_LUX: Address;
139
109
  };
140
110
  export type ContractAddresses = typeof LUX_MAINNET_CONTRACTS;
141
111
  //# sourceMappingURL=addresses.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../src/contracts/addresses.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,qBAAqB;mBAEsB,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;CAClE,CAAA;AAEV;;GAEG;AACH,eAAO,MAAM,qBAAqB;mBAEsB,OAAO;mBACP,OAAO;wBACF,OAAO;yBAGN,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;CAClE,CAAA;AAEV;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe;2BACoC,OAAO;0BACR,OAAO;6BACJ,OAAO;yBACX,OAAO;sBACV,OAAO;qBACR,OAAO;uBACL,OAAO;CACzD,CAAA;AAEV;;GAEG;AACH,eAAO,MAAM,iBAAiB;mBAE0B,OAAO;wBACF,OAAO;kBAGb,OAAO;kBACP,OAAO;mBACN,OAAO;mBACP,OAAO;kBACR,OAAO;iBACR,OAAO;yBAGC,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;yBAGd,OAAO;CAC3D,CAAA;AAEV;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM;mBAxGY,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;;mBAQpB,OAAO;mBACP,OAAO;wBACF,OAAO;yBAGN,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;;mBA4BpB,OAAO;wBACF,OAAO;kBAGb,OAAO;kBACP,OAAO;mBACN,OAAO;mBACP,OAAO;kBACR,OAAO;iBACR,OAAO;yBAGC,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;yBAGd,OAAO;EAiBpE;AAED,MAAM,MAAM,iBAAiB,GAAG,OAAO,qBAAqB,CAAA"}
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../src/contracts/addresses.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,qBAAqB;mBAEsB,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;CAClE,CAAA;AAEV;;GAEG;AACH,eAAO,MAAM,qBAAqB;mBAEsB,OAAO;mBACP,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;CAClE,CAAA;AAEV;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe;2BAEoC,OAAO;0BACR,OAAO;6BACJ,OAAO;yBACX,OAAO;yBAGP,OAAO;mBACb,OAAO;oBACN,OAAO;uBAGJ,OAAO;CACzD,CAAA;AAEV;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;mBAE0B,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;yBAGd,OAAO;CAC3D,CAAA;AAEV;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM;mBAnHY,OAAO;wBACF,OAAO;mBAGZ,OAAO;mBACP,OAAO;mBACP,OAAO;yBAGD,OAAO;wBACR,OAAO;yBAGN,OAAO;6BACH,OAAO;gCACJ,OAAO;wBACf,OAAO;2BACJ,OAAO;2BACP,OAAO;sCACI,OAAO;gCACb,OAAO;EA0G3E;AAED,MAAM,MAAM,iBAAiB,GAAG,OAAO,qBAAqB,CAAA"}