@nradko/metric-omm-sdk-v1 0.1.0 → 0.2.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 (55) hide show
  1. package/README.md +11 -10
  2. package/dist/abis/MetricOmmPool.d.ts +107 -10
  3. package/dist/abis/MetricOmmPool.d.ts.map +1 -1
  4. package/dist/abis/MetricOmmPool.js +134 -11
  5. package/dist/abis/MetricOmmPool.js.map +1 -1
  6. package/dist/abis/MetricOmmPoolDataProvider.d.ts +46 -0
  7. package/dist/abis/MetricOmmPoolDataProvider.d.ts.map +1 -1
  8. package/dist/abis/MetricOmmPoolDataProvider.js +59 -0
  9. package/dist/abis/MetricOmmPoolDataProvider.js.map +1 -1
  10. package/dist/abis/MetricOmmPoolFactory.d.ts +35 -141
  11. package/dist/abis/MetricOmmPoolFactory.d.ts.map +1 -1
  12. package/dist/abis/MetricOmmPoolFactory.js +40 -177
  13. package/dist/abis/MetricOmmPoolFactory.js.map +1 -1
  14. package/dist/abis/MetricOmmPoolLiquidityAdder.d.ts +22 -14
  15. package/dist/abis/MetricOmmPoolLiquidityAdder.d.ts.map +1 -1
  16. package/dist/abis/MetricOmmPoolLiquidityAdder.js +27 -18
  17. package/dist/abis/MetricOmmPoolLiquidityAdder.js.map +1 -1
  18. package/dist/abis/MetricOmmPoolSwapper.d.ts +368 -8
  19. package/dist/abis/MetricOmmPoolSwapper.d.ts.map +1 -1
  20. package/dist/abis/MetricOmmPoolSwapper.js +472 -10
  21. package/dist/abis/MetricOmmPoolSwapper.js.map +1 -1
  22. package/dist/addresses.d.ts +5 -5
  23. package/dist/addresses.d.ts.map +1 -1
  24. package/dist/addresses.js +8 -8
  25. package/dist/addresses.js.map +1 -1
  26. package/dist/pool/create.d.ts +6 -8
  27. package/dist/pool/create.d.ts.map +1 -1
  28. package/dist/pool/create.js +2 -3
  29. package/dist/pool/create.js.map +1 -1
  30. package/dist/pool/liquidity.d.ts +6 -1
  31. package/dist/pool/liquidity.d.ts.map +1 -1
  32. package/dist/pool/liquidity.js +6 -0
  33. package/dist/pool/liquidity.js.map +1 -1
  34. package/dist/pool/read.d.ts +3 -3
  35. package/dist/pool/read.d.ts.map +1 -1
  36. package/dist/pool/read.js +15 -13
  37. package/dist/pool/read.js.map +1 -1
  38. package/dist/router/swap.d.ts +5 -2
  39. package/dist/router/swap.d.ts.map +1 -1
  40. package/dist/router/swap.js +77 -51
  41. package/dist/router/swap.js.map +1 -1
  42. package/dist/types.d.ts +3 -0
  43. package/dist/types.d.ts.map +1 -1
  44. package/package.json +17 -5
  45. package/src/abis/MetricOmmPool.ts +134 -11
  46. package/src/abis/MetricOmmPoolDataProvider.ts +59 -0
  47. package/src/abis/MetricOmmPoolFactory.ts +40 -177
  48. package/src/abis/MetricOmmPoolLiquidityAdder.ts +27 -18
  49. package/src/abis/MetricOmmPoolSwapper.ts +472 -10
  50. package/src/addresses.ts +12 -12
  51. package/src/pool/create.ts +6 -8
  52. package/src/pool/liquidity.ts +13 -1
  53. package/src/pool/read.ts +23 -21
  54. package/src/router/swap.ts +93 -61
  55. package/src/types.ts +3 -0
@@ -1,10 +1,26 @@
1
1
  /**
2
2
  * MetricAMM SDK - Swapper (v1 periphery) helpers for building and encoding swaps.
3
3
  */
4
- import { encodeFunctionData } from "viem";
5
- import { MAX_UINT128, POOL_FACTORY_ABI, SWAPPER_ABI } from "../constants.js";
4
+ import { encodeFunctionData, zeroAddress } from "viem";
5
+ import { MAX_UINT128, POOL_ABI, SWAPPER_ABI } from "../constants.js";
6
6
  import { PriceProviderUiAbi } from "../abis/PriceProviderUi.js";
7
7
  const BPS_BASE = 10000n;
8
+ const EMPTY_HOOK_DATA = "0x";
9
+ function withHookData(args) {
10
+ return args.length >= 8 ? args : [...args, EMPTY_HOOK_DATA];
11
+ }
12
+ function quoteSwapArgs(params) {
13
+ return [
14
+ params.pool,
15
+ params.recipient,
16
+ params.zeroForOne,
17
+ params.amountSpecified,
18
+ params.priceLimitX64,
19
+ params.bidPriceX64,
20
+ params.askPriceX64,
21
+ params.hookData ?? EMPTY_HOOK_DATA,
22
+ ];
23
+ }
8
24
  function toSlippageBps(slippagePercent) {
9
25
  if (!Number.isFinite(slippagePercent) || slippagePercent < 0 || slippagePercent > 100) {
10
26
  throw new Error("slippagePercent must be a finite number between 0 and 100");
@@ -23,17 +39,16 @@ function ceilDiv(numerator, denominator) {
23
39
  function defaultPriceLimitX64(zeroForOne) {
24
40
  return zeroForOne ? 0n : MAX_UINT128;
25
41
  }
26
- async function readBidAskFromFactoryPriceProvider(publicClient, factoryAddress, poolAddress) {
42
+ async function readBidAskFromPoolPriceProvider(publicClient, poolAddress) {
27
43
  const imm = (await publicClient.readContract({
28
- address: factoryAddress,
29
- abi: POOL_FACTORY_ABI,
30
- functionName: "poolImmutables",
31
- args: [poolAddress],
44
+ address: poolAddress,
45
+ abi: POOL_ABI,
46
+ functionName: "getImmutables",
32
47
  }));
33
48
  const priceProviderAddress = imm.immutablePriceProvider;
34
49
  if (!priceProviderAddress ||
35
50
  priceProviderAddress === "0x0000000000000000000000000000000000000000") {
36
- throw new Error(`pool ${poolAddress} has no immutable price provider (factory.poolImmutables)`);
51
+ throw new Error(`pool ${poolAddress} has no immutable price provider (getImmutables)`);
37
52
  }
38
53
  const [bidPriceX64, askPriceX64] = (await publicClient.readContract({
39
54
  address: priceProviderAddress,
@@ -46,10 +61,7 @@ async function resolveBidAskPrices(params) {
46
61
  if (params.prices) {
47
62
  return params.prices;
48
63
  }
49
- if (!params.factoryAddress) {
50
- throw new Error("factoryAddress is required when prices are omitted (v1 reads poolImmutables from the factory, not the pool)");
51
- }
52
- return readBidAskFromFactoryPriceProvider(params.publicClient, params.factoryAddress, params.pool);
64
+ return readBidAskFromPoolPriceProvider(params.publicClient, params.pool);
53
65
  }
54
66
  export async function buildArgsForSwapExactInput(params) {
55
67
  const slippageBps = toSlippageBps(params.slippagePercent);
@@ -59,14 +71,16 @@ export async function buildArgsForSwapExactInput(params) {
59
71
  address: params.swapperAddress,
60
72
  abi: SWAPPER_ABI,
61
73
  functionName: "quoteSwap",
62
- args: [
63
- params.pool,
64
- params.zeroForOne,
65
- params.amountIn,
74
+ args: quoteSwapArgs({
75
+ pool: params.pool,
76
+ recipient: params.recipient,
77
+ zeroForOne: params.zeroForOne,
78
+ amountSpecified: params.amountIn,
66
79
  priceLimitX64,
67
80
  bidPriceX64,
68
81
  askPriceX64,
69
- ],
82
+ hookData: params.hookData,
83
+ }),
70
84
  account: params.recipient,
71
85
  }));
72
86
  const amountSwapWillResultIn = params.zeroForOne
@@ -91,14 +105,16 @@ export async function buildArgsAndExpectedAmountsForSwapExactInput(params) {
91
105
  address: params.swapperAddress,
92
106
  abi: SWAPPER_ABI,
93
107
  functionName: "quoteSwap",
94
- args: [
95
- params.pool,
96
- params.zeroForOne,
97
- params.amountIn,
108
+ args: quoteSwapArgs({
109
+ pool: params.pool,
110
+ recipient: params.recipient,
111
+ zeroForOne: params.zeroForOne,
112
+ amountSpecified: params.amountIn,
98
113
  priceLimitX64,
99
114
  bidPriceX64,
100
115
  askPriceX64,
101
- ],
116
+ hookData: params.hookData,
117
+ }),
102
118
  account: params.recipient,
103
119
  }));
104
120
  const expectedOutput = params.zeroForOne ? absBigInt(amount1Delta) : absBigInt(amount0Delta);
@@ -126,14 +142,16 @@ export async function quoteSwap(params) {
126
142
  address: params.swapperAddress,
127
143
  abi: SWAPPER_ABI,
128
144
  functionName: "quoteSwap",
129
- args: [
130
- params.pool,
131
- params.zeroForOne,
132
- params.amountSpecified,
145
+ args: quoteSwapArgs({
146
+ pool: params.pool,
147
+ recipient: params.recipient ?? zeroAddress,
148
+ zeroForOne: params.zeroForOne,
149
+ amountSpecified: params.amountSpecified,
133
150
  priceLimitX64,
134
151
  bidPriceX64,
135
152
  askPriceX64,
136
- ],
153
+ hookData: params.hookData,
154
+ }),
137
155
  }));
138
156
  const amountIn = params.zeroForOne ? absBigInt(amount0Delta) : absBigInt(amount1Delta);
139
157
  const amountOut = params.zeroForOne ? absBigInt(amount1Delta) : absBigInt(amount0Delta);
@@ -146,14 +164,16 @@ export async function quoteExpectedAmountsForSwapExactInput(params) {
146
164
  address: params.swapperAddress,
147
165
  abi: SWAPPER_ABI,
148
166
  functionName: "quoteSwap",
149
- args: [
150
- params.pool,
151
- params.zeroForOne,
152
- params.amountIn,
167
+ args: quoteSwapArgs({
168
+ pool: params.pool,
169
+ recipient: params.recipient,
170
+ zeroForOne: params.zeroForOne,
171
+ amountSpecified: params.amountIn,
153
172
  priceLimitX64,
154
173
  bidPriceX64,
155
174
  askPriceX64,
156
- ],
175
+ hookData: params.hookData,
176
+ }),
157
177
  }));
158
178
  const expectedOutput = params.zeroForOne ? absBigInt(amount1Delta) : absBigInt(amount0Delta);
159
179
  const expectedInput = params.zeroForOne ? absBigInt(amount0Delta) : absBigInt(amount1Delta);
@@ -167,14 +187,16 @@ export async function buildArgsForSwapExactOutput(params) {
167
187
  address: params.swapperAddress,
168
188
  abi: SWAPPER_ABI,
169
189
  functionName: "quoteSwap",
170
- args: [
171
- params.pool,
172
- params.zeroForOne,
173
- -params.amountOut,
190
+ args: quoteSwapArgs({
191
+ pool: params.pool,
192
+ recipient: params.recipient,
193
+ zeroForOne: params.zeroForOne,
194
+ amountSpecified: -params.amountOut,
174
195
  priceLimitX64,
175
196
  bidPriceX64,
176
197
  askPriceX64,
177
- ],
198
+ hookData: params.hookData,
199
+ }),
178
200
  account: params.recipient,
179
201
  }));
180
202
  const quotedAmountIn = params.zeroForOne ? absBigInt(amount0Delta) : absBigInt(amount1Delta);
@@ -197,14 +219,16 @@ export async function buildArgsAndExpectedAmountsForSwapExactOutput(params) {
197
219
  address: params.swapperAddress,
198
220
  abi: SWAPPER_ABI,
199
221
  functionName: "quoteSwap",
200
- args: [
201
- params.pool,
202
- params.zeroForOne,
203
- -params.amountOut,
222
+ args: quoteSwapArgs({
223
+ pool: params.pool,
224
+ recipient: params.recipient,
225
+ zeroForOne: params.zeroForOne,
226
+ amountSpecified: -params.amountOut,
204
227
  priceLimitX64,
205
228
  bidPriceX64,
206
229
  askPriceX64,
207
- ],
230
+ hookData: params.hookData,
231
+ }),
208
232
  account: params.recipient,
209
233
  }));
210
234
  const expectedInput = params.zeroForOne ? absBigInt(amount0Delta) : absBigInt(amount1Delta);
@@ -232,14 +256,16 @@ export async function quoteExpectedAmountsForSwapExactOutput(params) {
232
256
  address: params.swapperAddress,
233
257
  abi: SWAPPER_ABI,
234
258
  functionName: "quoteSwap",
235
- args: [
236
- params.pool,
237
- params.zeroForOne,
238
- -params.amountOut,
259
+ args: quoteSwapArgs({
260
+ pool: params.pool,
261
+ recipient: params.recipient,
262
+ zeroForOne: params.zeroForOne,
263
+ amountSpecified: -params.amountOut,
239
264
  priceLimitX64,
240
265
  bidPriceX64,
241
266
  askPriceX64,
242
- ],
267
+ hookData: params.hookData,
268
+ }),
243
269
  }));
244
270
  const expectedInput = params.zeroForOne ? absBigInt(amount0Delta) : absBigInt(amount1Delta);
245
271
  const expectedOutput = params.zeroForOne ? absBigInt(amount1Delta) : absBigInt(amount0Delta);
@@ -260,7 +286,7 @@ export function encodeSwapExactInputCalldata(argsOrParams) {
260
286
  return encodeFunctionData({
261
287
  abi: SWAPPER_ABI,
262
288
  functionName: "swapExactInput",
263
- args,
289
+ args: withHookData(args),
264
290
  });
265
291
  }
266
292
  export const prepareSwapExactInputCalldata = encodeSwapExactInputCalldata;
@@ -279,7 +305,7 @@ export function encodeSwapExactOutputCalldata(argsOrParams) {
279
305
  return encodeFunctionData({
280
306
  abi: SWAPPER_ABI,
281
307
  functionName: "swapExactOutput",
282
- args,
308
+ args: withHookData(args),
283
309
  });
284
310
  }
285
311
  export const prepareSwapExactOutputCalldata = encodeSwapExactOutputCalldata;
@@ -287,7 +313,7 @@ export function encodeSwapExactInputNativeForTokensCalldata(params) {
287
313
  const data = encodeFunctionData({
288
314
  abi: SWAPPER_ABI,
289
315
  functionName: "swapExactInputNativeForTokens",
290
- args: [
316
+ args: withHookData([
291
317
  params.pool,
292
318
  params.recipient,
293
319
  params.zeroForOne,
@@ -295,7 +321,7 @@ export function encodeSwapExactInputNativeForTokensCalldata(params) {
295
321
  params.priceLimitX64,
296
322
  params.minAmountOut,
297
323
  params.deadline,
298
- ],
324
+ ]),
299
325
  });
300
326
  return {
301
327
  data,
@@ -1 +1 @@
1
- {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/router/swap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/router/swap.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -39,6 +39,9 @@ export interface PoolImmutables {
39
39
  initialScaledToken0PerShareE18: bigint;
40
40
  initialScaledToken1PerShareE18: bigint;
41
41
  minimalMintableLiquidity: bigint;
42
+ immutablePriceProvider?: Address;
43
+ hooks?: Address;
44
+ hooksPermissions?: number;
42
45
  maxDriftE8: bigint;
43
46
  maxDriftDecayPerSecondE8: bigint;
44
47
  lowestBin: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,OAAO;IACtB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,8BAA8B,EAAE,MAAM,CAAC;IACvC,8BAA8B,EAAE,MAAM,CAAC;IACvC,wBAAwB,EAAE,MAAM,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB,EAAE,MAAM,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B,EAAE,MAAM,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,QAAQ;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAID,MAAM,WAAW,KAAK;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B,EAAE,MAAM,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,KAAK;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,4EAA4E;AAC5E,MAAM,WAAW,aAAa;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAID;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,MAAM,WAAW,+BAA+B;IAC9C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,+BAA+B,GAAG,6BAA6B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nradko/metric-omm-sdk-v1",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Metric AMM SDK — v1 contracts (dev branch: Swapper, LiquidityAdder, add/removeLiquidity)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -29,9 +29,16 @@
29
29
  "sync:abis": "npm run sync:contracts && node ./scripts/sync-abis.mjs",
30
30
  "setup:contracts": "npm run init:submodules && npm run sync:abis",
31
31
  "prepare": "npm run build",
32
+ "pretest": "npm run init:submodules",
32
33
  "test": "hardhat test",
33
34
  "typecheck": "tsc --noEmit",
34
- "prepublishOnly": "npm run clean && npm run prepare"
35
+ "lint": "eslint \"src/**/*.ts\" \"scripts/**/*.{ts,mjs}\" \"test/**/*.ts\"",
36
+ "format": "prettier --write \"src/**/*.{ts,mjs}\" \"scripts/**/*.{ts,mjs}\" \"test/**/*.ts\"",
37
+ "format:check": "prettier --check \"src/**/*.{ts,mjs}\" \"scripts/**/*.{ts,mjs}\" \"test/**/*.ts\"",
38
+ "sync:versions:env": "node ./scripts/sync-versions-env.mjs",
39
+ "sync:versions:env:check": "node ./scripts/sync-versions-env.mjs --check",
40
+ "verify": "node ./scripts/verify.mjs",
41
+ "prepublishOnly": "npm run verify && npm run clean && npm run build"
35
42
  },
36
43
  "keywords": [
37
44
  "metric",
@@ -55,12 +62,17 @@
55
62
  "viem": "^2.x"
56
63
  },
57
64
  "devDependencies": {
58
- "@metric/core": "github:Metric-OMM/metric-core#1e450c7c30085606edf462eac8af80816153d443",
59
- "@metric/periphery": "github:Metric-OMM/metric-periphery#ca248f3a753807868ab8ade8910e5e24ce0a73d2",
65
+ "@eslint/js": "^10.0.1",
66
+ "@metric/core": "github:Metric-OMM/metric-core#bc0fe2be62468d040aff73e78cad1ef3805c4d33",
67
+ "@metric/periphery": "github:Metric-OMM/metric-periphery#64c336d97c78b2c59c86caed91f210e4753d8f88",
60
68
  "hardhat": "^3.0.17",
61
69
  "@nomicfoundation/hardhat-network-helpers": "^3.0.3",
62
70
  "@nomicfoundation/hardhat-node-test-runner": "^3.0.7",
63
71
  "@nomicfoundation/hardhat-viem": "^3.0.1",
64
- "typescript": "~5.8.0"
72
+ "eslint": "^10.1.0",
73
+ "globals": "^17.4.0",
74
+ "prettier": "^3.8.1",
75
+ "typescript": "~5.8.0",
76
+ "typescript-eslint": "^8.58.0"
65
77
  }
66
78
  }
@@ -23,13 +23,13 @@ export const MetricOmmPoolAbi = [
23
23
  },
24
24
  {
25
25
  internalType: "address",
26
- name: "depositAllowlistProvider",
26
+ name: "hooks_",
27
27
  type: "address",
28
28
  },
29
29
  {
30
- internalType: "address",
31
- name: "swapAllowlistProvider",
32
- type: "address",
30
+ internalType: "uint16",
31
+ name: "hooksPermissions_",
32
+ type: "uint16",
33
33
  },
34
34
  {
35
35
  internalType: "bool",
@@ -61,11 +61,6 @@ export const MetricOmmPoolAbi = [
61
61
  name: "minimalMintableLiquidity",
62
62
  type: "uint256",
63
63
  },
64
- {
65
- internalType: "bool",
66
- name: "reportSwapToPriceProvider",
67
- type: "bool",
68
- },
69
64
  {
70
65
  internalType: "uint24",
71
66
  name: "protocolSpreadFeeE6",
@@ -174,6 +169,11 @@ export const MetricOmmPoolAbi = [
174
169
  name: "BidIsZero",
175
170
  type: "error",
176
171
  },
172
+ {
173
+ inputs: [],
174
+ name: "HookCallFailed",
175
+ type: "error",
176
+ },
177
177
  {
178
178
  inputs: [],
179
179
  name: "IncorrectDelta",
@@ -216,6 +216,11 @@ export const MetricOmmPoolAbi = [
216
216
  name: "InvalidBinIndex",
217
217
  type: "error",
218
218
  },
219
+ {
220
+ inputs: [],
221
+ name: "InvalidHookResponse",
222
+ type: "error",
223
+ },
219
224
  {
220
225
  inputs: [],
221
226
  name: "InvalidPauseLevel",
@@ -688,7 +693,12 @@ export const MetricOmmPoolAbi = [
688
693
  },
689
694
  {
690
695
  internalType: "bytes",
691
- name: "data",
696
+ name: "callbackData",
697
+ type: "bytes",
698
+ },
699
+ {
700
+ internalType: "bytes",
701
+ name: "hookData",
692
702
  type: "bytes",
693
703
  },
694
704
  ],
@@ -803,6 +813,99 @@ export const MetricOmmPoolAbi = [
803
813
  stateMutability: "view",
804
814
  type: "function",
805
815
  },
816
+ {
817
+ inputs: [],
818
+ name: "getImmutables",
819
+ outputs: [
820
+ {
821
+ components: [
822
+ {
823
+ internalType: "address",
824
+ name: "factory",
825
+ type: "address",
826
+ },
827
+ {
828
+ internalType: "address",
829
+ name: "token0",
830
+ type: "address",
831
+ },
832
+ {
833
+ internalType: "address",
834
+ name: "token1",
835
+ type: "address",
836
+ },
837
+ {
838
+ internalType: "uint256",
839
+ name: "token0ScaleMultiplier",
840
+ type: "uint256",
841
+ },
842
+ {
843
+ internalType: "uint256",
844
+ name: "token1ScaleMultiplier",
845
+ type: "uint256",
846
+ },
847
+ {
848
+ internalType: "uint256",
849
+ name: "initialScaledToken0PerShareE18",
850
+ type: "uint256",
851
+ },
852
+ {
853
+ internalType: "uint256",
854
+ name: "initialScaledToken1PerShareE18",
855
+ type: "uint256",
856
+ },
857
+ {
858
+ internalType: "uint256",
859
+ name: "minimalMintableLiquidity",
860
+ type: "uint256",
861
+ },
862
+ {
863
+ internalType: "address",
864
+ name: "immutablePriceProvider",
865
+ type: "address",
866
+ },
867
+ {
868
+ internalType: "address",
869
+ name: "hooks",
870
+ type: "address",
871
+ },
872
+ {
873
+ internalType: "uint16",
874
+ name: "hooksPermissions",
875
+ type: "uint16",
876
+ },
877
+ {
878
+ internalType: "int256",
879
+ name: "lowestBin",
880
+ type: "int256",
881
+ },
882
+ {
883
+ internalType: "int256",
884
+ name: "highestBin",
885
+ type: "int256",
886
+ },
887
+ ],
888
+ internalType: "struct PoolImmutables",
889
+ name: "",
890
+ type: "tuple",
891
+ },
892
+ ],
893
+ stateMutability: "view",
894
+ type: "function",
895
+ },
896
+ {
897
+ inputs: [],
898
+ name: "inSwap",
899
+ outputs: [
900
+ {
901
+ internalType: "address",
902
+ name: "priceProvider_",
903
+ type: "address",
904
+ },
905
+ ],
906
+ stateMutability: "view",
907
+ type: "function",
908
+ },
806
909
  {
807
910
  inputs: [
808
911
  {
@@ -832,6 +935,11 @@ export const MetricOmmPoolAbi = [
832
935
  name: "deltas",
833
936
  type: "tuple",
834
937
  },
938
+ {
939
+ internalType: "bytes",
940
+ name: "hookData",
941
+ type: "bytes",
942
+ },
835
943
  ],
836
944
  name: "removeLiquidity",
837
945
  outputs: [
@@ -918,6 +1026,11 @@ export const MetricOmmPoolAbi = [
918
1026
  },
919
1027
  {
920
1028
  inputs: [
1029
+ {
1030
+ internalType: "address",
1031
+ name: "recipient",
1032
+ type: "address",
1033
+ },
921
1034
  {
922
1035
  internalType: "bool",
923
1036
  name: "zeroForOne",
@@ -943,6 +1056,11 @@ export const MetricOmmPoolAbi = [
943
1056
  name: "askPriceX64",
944
1057
  type: "uint128",
945
1058
  },
1059
+ {
1060
+ internalType: "bytes",
1061
+ name: "hookData",
1062
+ type: "bytes",
1063
+ },
946
1064
  ],
947
1065
  name: "simulateSwapAndRevert",
948
1066
  outputs: [
@@ -984,7 +1102,12 @@ export const MetricOmmPoolAbi = [
984
1102
  },
985
1103
  {
986
1104
  internalType: "bytes",
987
- name: "data",
1105
+ name: "callbackData",
1106
+ type: "bytes",
1107
+ },
1108
+ {
1109
+ internalType: "bytes",
1110
+ name: "hookData",
988
1111
  type: "bytes",
989
1112
  },
990
1113
  ],
@@ -501,6 +501,65 @@ export const MetricOmmPoolDataProviderAbi = [
501
501
  stateMutability: "nonpayable",
502
502
  type: "function",
503
503
  },
504
+ {
505
+ inputs: [
506
+ {
507
+ internalType: "address",
508
+ name: "pool",
509
+ type: "address",
510
+ },
511
+ {
512
+ internalType: "address",
513
+ name: "recipient",
514
+ type: "address",
515
+ },
516
+ {
517
+ internalType: "bool",
518
+ name: "zeroForOne",
519
+ type: "bool",
520
+ },
521
+ {
522
+ internalType: "int128",
523
+ name: "amountSpecified",
524
+ type: "int128",
525
+ },
526
+ {
527
+ internalType: "uint128",
528
+ name: "priceLimitX64",
529
+ type: "uint128",
530
+ },
531
+ {
532
+ internalType: "uint128",
533
+ name: "bidPriceX64",
534
+ type: "uint128",
535
+ },
536
+ {
537
+ internalType: "uint128",
538
+ name: "askPriceX64",
539
+ type: "uint128",
540
+ },
541
+ {
542
+ internalType: "bytes",
543
+ name: "hookData",
544
+ type: "bytes",
545
+ },
546
+ ],
547
+ name: "quoteSwap",
548
+ outputs: [
549
+ {
550
+ internalType: "int128",
551
+ name: "amount0Delta",
552
+ type: "int128",
553
+ },
554
+ {
555
+ internalType: "int128",
556
+ name: "amount1Delta",
557
+ type: "int128",
558
+ },
559
+ ],
560
+ stateMutability: "nonpayable",
561
+ type: "function",
562
+ },
504
563
  {
505
564
  inputs: [
506
565
  {