@nradko/metric-omm-sdk-v1 0.4.2 → 0.4.3

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 (77) hide show
  1. package/README.md +96 -12
  2. package/dist/abis/MetricOmmSimpleRouter.d.ts +44 -0
  3. package/dist/abis/MetricOmmSimpleRouter.d.ts.map +1 -1
  4. package/dist/abis/MetricOmmSimpleRouter.js +58 -0
  5. package/dist/abis/MetricOmmSimpleRouter.js.map +1 -1
  6. package/dist/abis/MetricOmmSwapQuoter.d.ts +26 -2
  7. package/dist/abis/MetricOmmSwapQuoter.d.ts.map +1 -1
  8. package/dist/abis/MetricOmmSwapQuoter.js +34 -2
  9. package/dist/abis/MetricOmmSwapQuoter.js.map +1 -1
  10. package/dist/abis/index.d.ts +0 -1
  11. package/dist/abis/index.d.ts.map +1 -1
  12. package/dist/abis/index.js +0 -1
  13. package/dist/abis/index.js.map +1 -1
  14. package/dist/addresses.d.ts +0 -2
  15. package/dist/addresses.d.ts.map +1 -1
  16. package/dist/addresses.js +8 -9
  17. package/dist/addresses.js.map +1 -1
  18. package/dist/dataProvider/index.d.ts +1 -1
  19. package/dist/dataProvider/index.d.ts.map +1 -1
  20. package/dist/dataProvider/index.js +1 -1
  21. package/dist/dataProvider/index.js.map +1 -1
  22. package/dist/dataProvider/read.d.ts +1 -3
  23. package/dist/dataProvider/read.d.ts.map +1 -1
  24. package/dist/dataProvider/read.js +1 -3
  25. package/dist/dataProvider/read.js.map +1 -1
  26. package/dist/index.d.ts +3 -3
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +3 -3
  29. package/dist/index.js.map +1 -1
  30. package/dist/pool/liquidity.d.ts +83 -7
  31. package/dist/pool/liquidity.d.ts.map +1 -1
  32. package/dist/pool/liquidity.js +63 -3
  33. package/dist/pool/liquidity.js.map +1 -1
  34. package/dist/router/fromRoute.d.ts +93 -0
  35. package/dist/router/fromRoute.d.ts.map +1 -0
  36. package/dist/router/fromRoute.js +187 -0
  37. package/dist/router/fromRoute.js.map +1 -0
  38. package/dist/router/index.d.ts +8 -1
  39. package/dist/router/index.d.ts.map +1 -1
  40. package/dist/router/index.js +8 -1
  41. package/dist/router/index.js.map +1 -1
  42. package/dist/router/nativeSwap.d.ts +47 -0
  43. package/dist/router/nativeSwap.d.ts.map +1 -0
  44. package/dist/router/nativeSwap.js +89 -0
  45. package/dist/router/nativeSwap.js.map +1 -0
  46. package/dist/router/swap.d.ts +82 -1
  47. package/dist/router/swap.d.ts.map +1 -1
  48. package/dist/router/swap.js +51 -1
  49. package/dist/router/swap.js.map +1 -1
  50. package/dist/router/swapPath.d.ts +46 -1
  51. package/dist/router/swapPath.d.ts.map +1 -1
  52. package/dist/router/swapPath.js +34 -0
  53. package/dist/router/swapPath.js.map +1 -1
  54. package/dist/router/utils.d.ts +9 -0
  55. package/dist/router/utils.d.ts.map +1 -0
  56. package/dist/router/utils.js +27 -0
  57. package/dist/router/utils.js.map +1 -0
  58. package/package.json +2 -2
  59. package/src/abis/MetricOmmSimpleRouter.ts +58 -0
  60. package/src/abis/MetricOmmSwapQuoter.ts +34 -2
  61. package/src/abis/index.ts +0 -1
  62. package/src/addresses.ts +8 -11
  63. package/src/dataProvider/index.ts +0 -1
  64. package/src/dataProvider/read.ts +1 -4
  65. package/src/index.ts +22 -2
  66. package/src/pool/liquidity.ts +83 -7
  67. package/src/router/fromRoute.ts +318 -0
  68. package/src/router/index.ts +36 -1
  69. package/src/router/nativeSwap.ts +123 -0
  70. package/src/router/swap.ts +82 -1
  71. package/src/router/swapPath.ts +47 -1
  72. package/src/router/utils.ts +31 -0
  73. package/dist/abis/MetricOmmPoolStateView.d.ts +0 -238
  74. package/dist/abis/MetricOmmPoolStateView.d.ts.map +0 -1
  75. package/dist/abis/MetricOmmPoolStateView.js +0 -315
  76. package/dist/abis/MetricOmmPoolStateView.js.map +0 -1
  77. package/src/abis/MetricOmmPoolStateView.ts +0 -314
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dataProvider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,oCAAoC,EACpC,iCAAiC,EACjC,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dataProvider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,oCAAoC,EACpC,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * MetricAMM SDK - MetricOmmPoolDataProvider read helpers
3
3
  */
4
- export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, getPositionBinSharesFromStateView, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./read.js";
4
+ export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./read.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dataProvider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,oCAAoC,EACpC,iCAAiC,EACjC,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dataProvider/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,oCAAoC,EACpC,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * MetricAMM SDK - DataProvider read functions
3
- * Batch reads via MetricOmmPoolDataProvider (mainnet lens; inherits StateView reads).
3
+ * Batch reads via MetricOmmPoolDataProvider.
4
4
  */
5
5
  import type { Address, PublicClient } from "viem";
6
6
  import type { Slot0, Slot1, BinStateExternal, BinStatesExternal, BinStatesScaled, PositionBinSharesResult } from "../types.js";
@@ -34,6 +34,4 @@ export declare function getPositionBinSharesRange(publicClient: PublicClient, da
34
34
  export declare function getPositionBinSharesForBins(publicClient: PublicClient, dataProviderAddress: Address, poolAddress: Address, owner: Address, salt: bigint, bins: number[]): Promise<PositionBinSharesResult[]>;
35
35
  /** Get price provider address. */
36
36
  export declare function getPriceProvider(publicClient: PublicClient, dataProviderAddress: Address, poolAddress: Address): Promise<Address>;
37
- /** @deprecated Use getPositionBinSharesFromDataProvider */
38
- export declare const getPositionBinSharesFromStateView: typeof getPositionBinSharesFromDataProvider;
39
37
  //# sourceMappingURL=read.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/dataProvider/read.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAGlD,OAAO,KAAK,EACV,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAqErB,oDAAoD;AACpD,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,CAgBhB;AAED,2DAA2D;AAC3D,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,CAYhB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAoB3B;AAED,wEAAwE;AACxE,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,EAAE,EACpB,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAsB5B;AAED,iGAAiG;AACjG,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,eAAe,CAAC,CAa1B;AAED,4BAA4B;AAC5B,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,8DAA8D;AAC9D,wBAAsB,oCAAoC,CACxD,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAMzF;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,uBAAuB,EAAE,CAAC,CA6BpC;AAED,4EAA4E;AAC5E,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAAE,GACb,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAwBpC;AAED,kCAAkC;AAClC,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,2DAA2D;AAC3D,eAAO,MAAM,iCAAiC,6CAAuC,CAAC"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/dataProvider/read.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAGlD,OAAO,KAAK,EACV,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAqErB,oDAAoD;AACpD,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,CAgBhB;AAED,2DAA2D;AAC3D,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,CAYhB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAoB3B;AAED,wEAAwE;AACxE,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,EAAE,EACpB,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAsB5B;AAED,iGAAiG;AACjG,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,eAAe,CAAC,CAa1B;AAED,4BAA4B;AAC5B,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,8DAA8D;AAC9D,wBAAsB,oCAAoC,CACxD,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAMzF;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,uBAAuB,EAAE,CAAC,CA6BpC;AAED,4EAA4E;AAC5E,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAAE,GACb,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAwBpC;AAED,kCAAkC;AAClC,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,OAAO,EAC5B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,CAAC,CAOlB"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * MetricAMM SDK - DataProvider read functions
3
- * Batch reads via MetricOmmPoolDataProvider (mainnet lens; inherits StateView reads).
3
+ * Batch reads via MetricOmmPoolDataProvider.
4
4
  */
5
5
  import { DATA_PROVIDER_ABI } from "../constants.js";
6
6
  import { getPoolImmutables } from "../pool/read.js";
@@ -213,6 +213,4 @@ export async function getPriceProvider(publicClient, dataProviderAddress, poolAd
213
213
  args: [poolAddress],
214
214
  }));
215
215
  }
216
- /** @deprecated Use getPositionBinSharesFromDataProvider */
217
- export const getPositionBinSharesFromStateView = getPositionBinSharesFromDataProvider;
218
216
  //# sourceMappingURL=read.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../src/dataProvider/read.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AASpD,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,uBAAuB,GAAoB;IAC/C,oBAAoB,EAAE,EAAE;IACxB,oBAAoB,EAAE,EAAE;IACxB,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,yBAAyB,GAAsB;IACnD,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,KAAK,UAAU,wBAAwB,CACrC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,UAAoB;IAKpB,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7D,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,mBAAmB;YAC5B,GAAG,EAAE,iBAAiB;YACtB,YAAY,EAAE,WAAW;YACzB,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;SAChC,CAAC;QACF,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,mBAAmB;YAC5B,GAAG,EAAE,iBAAiB;YACtB,YAAY,EAAE,gBAAgB;YAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;SAChC,CAAC;KACH,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,sBAAsB,CAAC,eAA2C,CAAC;QAC5E,WAAW,EAAE,yBAAyB,CAAC,iBAA6C,CAAC;KACtF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAkD,EAClD,WAAqB;IAErB,OAAO;QACL,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC/D,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC/D,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC9C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;QAC/C,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QACjD,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB;IAEpB,MAAM,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QAC9C,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,OAAO;QACrB,IAAI,EAAE,CAAC,WAAW,CAAC;KACpB,CAAC,CAAU,CAAC;IAEb,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACtB,2BAA2B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9C,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9B,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACjC,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB;IAEpB,MAAM,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QAC9C,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,OAAO;QACrB,IAAI,EAAE,CAAC,WAAW,CAAC;KACpB,CAAC,CAAU,CAAC;IAEb,OAAO;QACL,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC;QAClC,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC;KACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,MAAc,EACd,cAAuB;IAEvB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7C,iBAAiB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,mBAAmB;YAC5B,GAAG,EAAE,iBAAiB;YACtB,YAAY,EAAE,UAAU;YACxB,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAC5B,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAA2D,CAAC;IAE3E,OAAO;QACL,aAAa,EAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,qBAAqB,CAAC;QACnF,aAAa,EAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,qBAAqB,CAAC;QACnF,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,UAAoB,EACpB,cAAuB;IAEvB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,iBAAiB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;QAC5D,wBAAwB,CAAC,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC;KACrF,CAAC,CAAC;IAEH,OAAO;QACL,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACtC,uBAAuB,CAAC,CAAC,CAAC,mBAAmB,EAAE,UAAU,CAAC,qBAAqB,CAAC,CACjF;QACD,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACtC,uBAAuB,CAAC,CAAC,CAAC,mBAAmB,EAAE,UAAU,CAAC,qBAAqB,CAAC,CACjF;QACD,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QACpD,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;QACrD,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QACvD,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;AACJ,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,UAAoB;IAEpB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAC1C,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,UAAU,CACX,CAAC;IAEF,OAAO,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;AAC7D,CAAC;AAED,4BAA4B;AAC5B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,MAAc;IAEd,OAAO,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,gBAAgB;QAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;KAC5B,CAAC,CAAW,CAAC;AAChB,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,oCAAoC,CACxD,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,KAAc,EACd,IAAY,EACZ,MAAc;IAEd,OAAO,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC;KACzC,CAAC,CAAW,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc,EAAE,IAAY,EAAE,GAAW;IACxE,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChE,MAAM,MAAM,GACV,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,uBAAuB,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC;IAC3F,OAAO,KAAK,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,EAAmB,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,KAAc,EACd,IAAY,EACZ,QAAgB,EAChB,QAAgB;IAEhB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,IAAI,GAAG,GAAG,QAAQ,EAAE,GAAG,IAAI,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;QAChD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACrB,YAAY,CAAC,YAAY,CAAC;QACxB,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC;KACtC,CAAC,CACH,CACF,CAAC;IAEF,MAAM,cAAc,GAA8B,EAAE,CAAC;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAW,CAAC;QACpC,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;YAChB,cAAc,CAAC,IAAI,CAAC;gBAClB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBACrB,MAAM;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB,EACpB,KAAc,EACd,IAAY,EACZ,IAAc;IAEd,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACf,YAAY,CAAC,YAAY,CAAC;QACxB,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC;KACtC,CAAC,CACH,CACF,CAAC;IAEF,MAAM,cAAc,GAA8B,EAAE,CAAC;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAW,CAAC;QACpC,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;YAChB,cAAc,CAAC,IAAI,CAAC;gBAClB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;gBACf,MAAM;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,kCAAkC;AAClC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,YAA0B,EAC1B,mBAA4B,EAC5B,WAAoB;IAEpB,OAAO,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,YAAY,EAAE,eAAe;QAC7B,IAAI,EAAE,CAAC,WAAW,CAAC;KACpB,CAAC,CAAY,CAAC;AACjB,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iCAAiC,GAAG,oCAAoC,CAAC"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../src/dataProvider/read.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,13 +6,13 @@
6
6
  export type { LiquidityDelta, PoolLiquidityDelta, BinData, PoolImmutables, PoolState, BinState, BinStateExternal, BinStatesExternal, BinStatesScaled, Slot0, Slot1, PoolFeeConfig, PositionBinSharesResult, CalculateUniformLiquidityParams, LiquidityBinValueInput as AnyLiquidityBinInput, CalculateAnyLiquidityParams, PreparedLiquidityDistribution, CalculatedLiquidityDistribution, } from "./types.js";
7
7
  export { Q64, MAX_UINT128, MAX_INT128, MAX_UINT104, MAX_INT104 } from "./constants.js";
8
8
  export { ChainId, ADDRESSES, getAddresses, getAddressesOrThrow, isChainSupported, getSupportedChainIds, isChainDeployed, type ChainAddresses, type DeployedChainId, } from "./addresses.js";
9
- export { MetricOmmPoolAbi, MetricOmmPoolDataProviderAbi, MetricOmmSwapQuoterAbi, MetricOmmPoolStateViewAbi, MetricOmmSimpleRouterAbi, MetricOmmPoolLiquidityAdderAbi, MetricOmmPoolFactoryAbi, DepositAllowlistExtensionAbi, SwapAllowlistExtensionAbi, PriceVelocityGuardExtensionAbi, OracleValueStopLossExtensionAbi, OracleProviderAbi, } from "./abis/index.js";
9
+ export { MetricOmmPoolAbi, MetricOmmPoolDataProviderAbi, MetricOmmSwapQuoterAbi, MetricOmmSimpleRouterAbi, MetricOmmPoolLiquidityAdderAbi, MetricOmmPoolFactoryAbi, DepositAllowlistExtensionAbi, SwapAllowlistExtensionAbi, PriceVelocityGuardExtensionAbi, OracleValueStopLossExtensionAbi, OracleProviderAbi, } from "./abis/index.js";
10
10
  export { packBinData, packBins5, packBinDataArray, unpackBinData, createBins, createUniformBins, priceToQ64, q64ToPrice, } from "./utils/index.js";
11
11
  export { createPool, prepareFactoryCreatePoolParams, encodeCreatePoolCalldata, preparePoolBinData, type CreatePoolFactoryParams, type CreatePoolParams, type ExtensionOrders, getPoolImmutables, getPoolFeeConfig, getPoolState, getBinState, getPositionBinShares, } from "./pool/index.js";
12
- export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, getPositionBinSharesFromStateView, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./dataProvider/index.js";
12
+ export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./dataProvider/index.js";
13
13
  export { buildModifyLiquidityArgsForAddition, buildModifyLiquidityArgsForUniformAddition, buildModifyLiquidityArgsForUniformAdditionWithTotalTokenAmount, buildModifyLiquidityArgsForPercentageRemoval, buildModifyLiquidityArgsForRemoval, buildAddLiquidityExactSharesParamsFromBinTargets, buildRemoveLiquidityPoolDelta, additionPlanToPoolLiquidityDelta, removalPlanToPoolLiquidityDelta, scaleWeightedPoolDeltasToFitCaps, encodeAddLiquidityExactSharesSelfCalldata, encodeAddLiquidityExactSharesWithOwnerCalldata, encodeAddLiquidityWeightedSelfCalldata, encodeAddLiquidityWeightedWithOwnerCalldata, encodeRemoveLiquidityCalldata, getPositionShares, getPositionSharesForBins, NO_SLIPPAGE_LIMIT, type ModifyLiquidityArgs, type BuildModifyLiquidityArgsBase, type BuildModifyLiquidityArgsForAdditionParams, type BuildModifyLiquidityArgsForUniformAdditionParams, type BuildModifyLiquidityArgsForUniformAdditionWithTotalTokenAmountParams, type BuildModifyLiquidityArgsForPercentageRemovalParams, type BuildModifyLiquidityArgsForRemovalParams, type RemoveLiquidityParams, type BinRemovalSpec, } from "./pool/liquidity.js";
14
14
  export { quoteLiveExactInSingle, quoteLiveExactOutSingle, quoteLiveExactIn, quoteLiveExactOut, quoteHypotheticalExactInputSingle, quoteHypotheticalExactOutputSingle, quoteHypotheticalExactInput, quoteHypotheticalExactOutput, resolveQuoterAddress, defaultPriceLimitX64, type QuoteSwapResult, type QuoteLiveExactInSingleParams, type QuoteLiveExactOutSingleParams, type QuoteLiveExactInParams, type QuoteLiveExactOutParams, type QuoteHypotheticalExactInputSingleParams, type QuoteHypotheticalExactOutputSingleParams, type QuoteHypotheticalExactInputParams, type QuoteHypotheticalExactOutputParams, } from "./quoter/index.js";
15
- export { buildExactInputSingleParams, buildExactOutputSingleParams, buildExactInputParams, buildExactOutputParams, encodeExactInputSingleCalldata, encodeExactOutputSingleCalldata, encodeExactInputCalldata, encodeExactOutputCalldata, encodeZeroForOneBitMap, prepareExactInputSingleCalldata, prepareExactOutputSingleCalldata, prepareExactInputCalldata, prepareExactOutputCalldata, type ExactInputSingleParams, type ExactOutputSingleParams, type ExactInputParams, type ExactOutputParams, type BuildExactInputSingleParams, type BuildExactOutputSingleParams, type BuildExactInputParams, type BuildExactOutputParams, } from "./router/index.js";
15
+ export { buildExactInputSingleParams, buildExactOutputSingleParams, buildExactInputParams, buildExactOutputParams, encodeExactInputSingleCalldata, encodeExactOutputSingleCalldata, encodeExactInputCalldata, encodeExactOutputCalldata, encodeZeroForOneBitMap, prepareExactInputSingleCalldata, prepareExactOutputSingleCalldata, prepareExactInputCalldata, prepareExactOutputCalldata, encodeMulticallCalldata, encodeRefundETHCalldata, encodeUnwrapWETH9Calldata, prepareExactInputSingleAndUnwrapCalldata, prepareExactInputAndUnwrapCalldata, prepareExactInputSingleSupportingNativePaymentCalldata, prepareExactInputSupportingNativePaymentCalldata, prepareExactOutputSupportingNativePaymentCalldata, prepareExactOutputSingleSupportingNativePaymentCalldata, prepareExactOutputSingleAndUnwrapCalldata, prepareExactOutputAndUnwrapCalldata, type ExactInputSingleParams, type ExactOutputSingleParams, type ExactInputParams, type ExactOutputParams, type BuildExactInputSingleParams, type BuildExactOutputSingleParams, type BuildExactInputParams, type BuildExactOutputParams, prepareExactInputFromRoute, prepareExactOutputFromRoute, type TradeType, type RouteType, type RouteLegResponse, type RouteOptionResponse, type RouteResponse, type PrepareExactInputFromRouteParams, type PrepareExactOutputFromRouteParams, type PreparedExactInputFromRoute, type PreparedExactOutputFromRoute, } from "./router/index.js";
16
16
  export { getFactoryAssetBalances, collectFactoryFees, type FactoryAssetBalance, type CollectFactoryFeesParams, type CollectedFactoryFeeTx, type CollectFactoryFeesResult, } from "./factory/index.js";
17
17
  export { getRegistrationFee, isPoolBlacklisted, isPoolRegistered, getPoolOracleStatus, registerPool, type PoolOracleStatus, type RegisterPoolParams, type RegisterPoolResult, } from "./oracle/index.js";
18
18
  export { EMPTY_EXTENSION_DATA, EMPTY_EXTENSION_ORDERS, EMPTY_EXTENSION_INIT_DATA, encodeExtensionOrder, buildExtensionOrders, encodeOracleStopLossInitData, encodeSetAllowedToDepositCalldata, encodeSetAllowedToSwapCalldata, encodeSetMaxChangePerBlockCalldata, encodeSetLastMidPriceCalldata, encodeProposeOracleStopLossTimelockCalldata, encodeExecuteOracleStopLossTimelockCalldata, encodeCancelOracleStopLossTimelockCalldata, encodeProposeOracleStopLossDrawdownCalldata, encodeExecuteOracleStopLossDrawdownCalldata, encodeCancelOracleStopLossDrawdownCalldata, encodeProposeOracleStopLossDecayCalldata, encodeExecuteOracleStopLossDecayCalldata, encodeCancelOracleStopLossDecayCalldata, encodeProposeOracleStopLossHighWatermarksCalldata, encodeExecuteOracleStopLossHighWatermarksCalldata, encodeCancelOracleStopLossHighWatermarksCalldata, type PoolExtensions, type ExtensionOrderAction, } from "./extensions/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,19 +8,19 @@ export { Q64, MAX_UINT128, MAX_INT128, MAX_UINT104, MAX_INT104 } from "./constan
8
8
  // ============ Addresses ============
9
9
  export { ChainId, ADDRESSES, getAddresses, getAddressesOrThrow, isChainSupported, getSupportedChainIds, isChainDeployed, } from "./addresses.js";
10
10
  // ============ ABIs ============
11
- export { MetricOmmPoolAbi, MetricOmmPoolDataProviderAbi, MetricOmmSwapQuoterAbi, MetricOmmPoolStateViewAbi, MetricOmmSimpleRouterAbi, MetricOmmPoolLiquidityAdderAbi, MetricOmmPoolFactoryAbi, DepositAllowlistExtensionAbi, SwapAllowlistExtensionAbi, PriceVelocityGuardExtensionAbi, OracleValueStopLossExtensionAbi, OracleProviderAbi, } from "./abis/index.js";
11
+ export { MetricOmmPoolAbi, MetricOmmPoolDataProviderAbi, MetricOmmSwapQuoterAbi, MetricOmmSimpleRouterAbi, MetricOmmPoolLiquidityAdderAbi, MetricOmmPoolFactoryAbi, DepositAllowlistExtensionAbi, SwapAllowlistExtensionAbi, PriceVelocityGuardExtensionAbi, OracleValueStopLossExtensionAbi, OracleProviderAbi, } from "./abis/index.js";
12
12
  // ============ Utils ============
13
13
  export { packBinData, packBins5, packBinDataArray, unpackBinData, createBins, createUniformBins, priceToQ64, q64ToPrice, } from "./utils/index.js";
14
14
  // ============ Pool Functions ============
15
15
  export { createPool, prepareFactoryCreatePoolParams, encodeCreatePoolCalldata, preparePoolBinData, getPoolImmutables, getPoolFeeConfig, getPoolState, getBinState, getPositionBinShares, } from "./pool/index.js";
16
16
  // ============ DataProvider read functions ============
17
- export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, getPositionBinSharesFromStateView, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./dataProvider/index.js";
17
+ export { getSlot0, getSlot1, getBinStateExternal, getBinStatesExternal, getBinStatesScaled, getBinTotalShares, getPositionBinSharesFromDataProvider, toPositionBinKey, getPositionBinSharesRange, getPriceProvider, } from "./dataProvider/index.js";
18
18
  // ============ Liquidity Functions ============
19
19
  export { buildModifyLiquidityArgsForAddition, buildModifyLiquidityArgsForUniformAddition, buildModifyLiquidityArgsForUniformAdditionWithTotalTokenAmount, buildModifyLiquidityArgsForPercentageRemoval, buildModifyLiquidityArgsForRemoval, buildAddLiquidityExactSharesParamsFromBinTargets, buildRemoveLiquidityPoolDelta, additionPlanToPoolLiquidityDelta, removalPlanToPoolLiquidityDelta, scaleWeightedPoolDeltasToFitCaps, encodeAddLiquidityExactSharesSelfCalldata, encodeAddLiquidityExactSharesWithOwnerCalldata, encodeAddLiquidityWeightedSelfCalldata, encodeAddLiquidityWeightedWithOwnerCalldata, encodeRemoveLiquidityCalldata, getPositionShares, getPositionSharesForBins, NO_SLIPPAGE_LIMIT, } from "./pool/liquidity.js";
20
20
  // ============ Quoter Functions ============
21
21
  export { quoteLiveExactInSingle, quoteLiveExactOutSingle, quoteLiveExactIn, quoteLiveExactOut, quoteHypotheticalExactInputSingle, quoteHypotheticalExactOutputSingle, quoteHypotheticalExactInput, quoteHypotheticalExactOutput, resolveQuoterAddress, defaultPriceLimitX64, } from "./quoter/index.js";
22
22
  // ============ SimpleRouter Functions ============
23
- export { buildExactInputSingleParams, buildExactOutputSingleParams, buildExactInputParams, buildExactOutputParams, encodeExactInputSingleCalldata, encodeExactOutputSingleCalldata, encodeExactInputCalldata, encodeExactOutputCalldata, encodeZeroForOneBitMap, prepareExactInputSingleCalldata, prepareExactOutputSingleCalldata, prepareExactInputCalldata, prepareExactOutputCalldata, } from "./router/index.js";
23
+ export { buildExactInputSingleParams, buildExactOutputSingleParams, buildExactInputParams, buildExactOutputParams, encodeExactInputSingleCalldata, encodeExactOutputSingleCalldata, encodeExactInputCalldata, encodeExactOutputCalldata, encodeZeroForOneBitMap, prepareExactInputSingleCalldata, prepareExactOutputSingleCalldata, prepareExactInputCalldata, prepareExactOutputCalldata, encodeMulticallCalldata, encodeRefundETHCalldata, encodeUnwrapWETH9Calldata, prepareExactInputSingleAndUnwrapCalldata, prepareExactInputAndUnwrapCalldata, prepareExactInputSingleSupportingNativePaymentCalldata, prepareExactInputSupportingNativePaymentCalldata, prepareExactOutputSupportingNativePaymentCalldata, prepareExactOutputSingleSupportingNativePaymentCalldata, prepareExactOutputSingleAndUnwrapCalldata, prepareExactOutputAndUnwrapCalldata, prepareExactInputFromRoute, prepareExactOutputFromRoute, } from "./router/index.js";
24
24
  // ============ Factory Functions ============
25
25
  export { getFactoryAssetBalances, collectFactoryFees, } from "./factory/index.js";
26
26
  // ============ Oracle Functions (pool registration + blacklist) ============
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,16 @@
1
1
  /**
2
- * MetricAMM SDK - Liquidity
3
- * Unified liquidity calculations and position operations.
2
+ * Liquidity position builders and calldata encoders.
3
+ *
4
+ * **Add liquidity (recommended path):**
5
+ * 1. `buildModifyLiquidityArgsForAddition` / `ForUniformAddition` / `ForUniformAdditionWithTotalTokenAmount`
6
+ * 2. `buildAddLiquidityExactSharesParamsFromBinTargets` (optional convenience)
7
+ * 3. `encodeAddLiquidityExactSharesSelfCalldata` — target `addresses.liquidityAdder`
8
+ * 4. Approve token0 and token1 on the LiquidityAdder for `maxAmountToken0` / `maxAmountToken1`
9
+ *
10
+ * **Remove liquidity:** `buildModifyLiquidityArgsForRemoval` → `buildRemoveLiquidityPoolDelta`
11
+ * → `encodeRemoveLiquidityCalldata` — call the **pool** directly (no adder approval).
12
+ *
13
+ * Position identity is `(owner, salt)`; use the same `salt` for adds and removes.
4
14
  */
5
15
  import type { Address, PublicClient, Hex } from "viem";
6
16
  import type { LiquidityDelta, LiquidityBinValueInput, PoolLiquidityDelta } from "../types.js";
@@ -9,38 +19,55 @@ import { convertToken0ToToken1, convertToken1ToToken0 } from "../utils/liquidity
9
19
  export { convertToken0ToToken1, convertToken1ToToken0 };
10
20
  export declare const getPositionShares: typeof getPositionBinSharesRange;
11
21
  export declare const getPositionSharesForBins: typeof getPositionBinSharesForBins;
22
+ /** High-level removal options (used by UI helpers). Prefer {@link BuildModifyLiquidityArgsForRemovalParams} in SDK code. */
12
23
  export interface RemoveLiquidityParams {
24
+ /** Percent of each selected bin's shares to burn (0–100). */
13
25
  percentageToRemove: number;
26
+ /** Explicit bin list; when omitted, scans `lowerBin`–`upperBin` for position shares. */
14
27
  bins?: number[];
15
28
  lowerBin?: number;
16
29
  upperBin?: number;
17
30
  }
31
+ /** Per-bin removal: specify exactly one of `percentageToRemove` or `sharesToRemove`. */
18
32
  export interface BinRemovalSpec {
19
33
  bin: number;
20
34
  percentageToRemove?: number;
21
35
  sharesToRemove?: bigint;
22
36
  }
37
+ /**
38
+ * Sentinel passed as `specAmount0` / `specAmount1` on removals — no minimum output enforced.
39
+ * Same value the pool uses for "accept any amount" on `modifyLiquidity` removes.
40
+ */
23
41
  export declare const NO_SLIPPAGE_LIMIT: bigint;
42
+ /**
43
+ * Tuple for low-level `modifyLiquidity` on the pool:
44
+ * `[salt, deltas, specAmount0, specAmount1]`.
45
+ * Prefer LiquidityAdder encode helpers for additions.
46
+ */
24
47
  export type ModifyLiquidityArgs = readonly [bigint, LiquidityDelta[], bigint, bigint];
25
48
  export interface BuildModifyLiquidityArgsBase {
26
49
  publicClient: PublicClient;
27
- /** MetricOmmPoolDataProvider address (`addresses.dataProvider` on mainnet). */
50
+ /** MetricOmmPoolDataProvider (`addresses.dataProvider`). */
28
51
  dataProviderAddress: Address;
29
52
  poolAddress: Address;
53
+ /** Extra headroom on spec amounts (percent); `0` = exact computed caps. */
30
54
  specAmountBufferPercent?: number;
31
55
  }
32
- /** Addition builders read pool immutables via `getImmutables()` removal only needs the data provider lens. */
56
+ /** Addition builders need the factory to read pool immutables (decimals, bin range). */
33
57
  export interface BuildModifyLiquidityArgsWithFactory extends BuildModifyLiquidityArgsBase {
34
58
  factoryAddress: Address;
35
59
  }
60
+ /** Per-bin target amounts for {@link buildModifyLiquidityArgsForAddition}. */
36
61
  export interface BuildModifyLiquidityArgsForAdditionParams extends BuildModifyLiquidityArgsWithFactory {
37
62
  bins: LiquidityBinValueInput[];
38
- /** Human-readable price (token1 per token0). Omit when using currentPriceX64. */
63
+ /** Human price token1/token0; omit when `currentPriceX64` is set. */
39
64
  currentPrice?: number;
40
- /** On-chain Q64 price. Preferred over currentPrice when available from slot0 / oracle. */
65
+ /** Q64.64 price from slot0; preferred over `currentPrice`. */
41
66
  currentPriceX64?: bigint;
67
+ /** Position salt; default `0n`. Reuse across adds to the same position. */
42
68
  salt?: bigint;
43
69
  }
70
+ /** Same value in every bin from `lowerBin` through `upperBin` inclusive. */
44
71
  export interface BuildModifyLiquidityArgsForUniformAdditionParams extends BuildModifyLiquidityArgsWithFactory {
45
72
  amountInTokensPerBin: bigint;
46
73
  amountIsInToken0: boolean;
@@ -49,6 +76,7 @@ export interface BuildModifyLiquidityArgsForUniformAdditionParams extends BuildM
49
76
  upperBin: number;
50
77
  salt?: bigint;
51
78
  }
79
+ /** Split a total token budget across `bins` (optional `weights`); calibrates share scaling on-chain. */
52
80
  export interface BuildModifyLiquidityArgsForUniformAdditionWithTotalTokenAmountParams extends BuildModifyLiquidityArgsWithFactory {
53
81
  bins: number[];
54
82
  weights?: number[];
@@ -57,6 +85,7 @@ export interface BuildModifyLiquidityArgsForUniformAdditionWithTotalTokenAmountP
57
85
  currentPriceX64: bigint;
58
86
  salt?: bigint;
59
87
  }
88
+ /** Remove the same percentage from all bins with liquidity (or from explicit `bins`). */
60
89
  export interface BuildModifyLiquidityArgsForPercentageRemovalParams extends BuildModifyLiquidityArgsBase {
61
90
  owner: Address;
62
91
  salt: bigint;
@@ -65,13 +94,17 @@ export interface BuildModifyLiquidityArgsForPercentageRemovalParams extends Buil
65
94
  lowerBin?: number;
66
95
  upperBin?: number;
67
96
  }
97
+ /** Granular per-bin removal specs. */
68
98
  export interface BuildModifyLiquidityArgsForRemovalParams extends BuildModifyLiquidityArgsBase {
69
99
  owner: Address;
70
100
  salt: bigint;
71
101
  specs: BinRemovalSpec[];
72
102
  }
73
103
  /**
74
- * Prepare uniform liquidity distribution across a bin range.
104
+ * Uniform liquidity: same token amount in every bin from `lowerBin` to `upperBin`.
105
+ * Delegates to {@link buildModifyLiquidityArgsForAddition}.
106
+ *
107
+ * @returns `[salt, deltas, specAmount0, specAmount1]` — max token caps for the adder.
75
108
  */
76
109
  export declare function buildModifyLiquidityArgsForUniformAddition({ publicClient, factoryAddress, dataProviderAddress, poolAddress, amountInTokensPerBin, amountIsInToken0, currentPrice, lowerBin, upperBin, salt, specAmountBufferPercent, }: BuildModifyLiquidityArgsForUniformAdditionParams): Promise<ModifyLiquidityArgs>;
77
110
  /**
@@ -108,9 +141,20 @@ export declare function buildModifyLiquidityArgsForUniformAdditionWithTotalToken
108
141
  * `specAmount0/specAmount1` with overflow checks.
109
142
  */
110
143
  export declare function buildModifyLiquidityArgsForAddition({ publicClient, factoryAddress, dataProviderAddress, poolAddress, bins, currentPrice, currentPriceX64, salt, specAmountBufferPercent, }: BuildModifyLiquidityArgsForAdditionParams): Promise<ModifyLiquidityArgs>;
144
+ /**
145
+ * Remove liquidity by explicit per-bin specs (percentage or absolute shares).
146
+ *
147
+ * `specAmount0` / `specAmount1` are set to {@link NO_SLIPPAGE_LIMIT} (accept any output).
148
+ */
111
149
  export declare function buildModifyLiquidityArgsForRemoval(params: BuildModifyLiquidityArgsForRemovalParams): Promise<ModifyLiquidityArgs>;
150
+ /**
151
+ * Remove the same `percentageToRemove` from every bin that has position shares.
152
+ * When `bins` is omitted, discovers bins via `getPositionBinSharesRange(lowerBin, upperBin)`.
153
+ */
112
154
  export declare function buildModifyLiquidityArgsForPercentageRemoval({ publicClient, dataProviderAddress, poolAddress, owner, salt, percentageToRemove, bins, lowerBin, upperBin, specAmountBufferPercent, }: BuildModifyLiquidityArgsForPercentageRemovalParams): Promise<ModifyLiquidityArgs>;
155
+ /** Convert positive `deltaShares` from a modify plan into `PoolLiquidityDelta` for the adder. */
113
156
  export declare function additionPlanToPoolLiquidityDelta(deltas: readonly LiquidityDelta[]): PoolLiquidityDelta;
157
+ /** Convert negative `deltaShares` from a modify plan into burn `PoolLiquidityDelta` for `removeLiquidity`. */
114
158
  export declare function removalPlanToPoolLiquidityDelta(deltas: readonly LiquidityDelta[]): PoolLiquidityDelta;
115
159
  /**
116
160
  * Matches `MetricOmmPoolLiquidityAdder._scaleWeightsToShares`: given probe token needs from a weighted
@@ -123,12 +167,30 @@ export declare function scaleWeightedPoolDeltasToFitCaps(params: {
123
167
  maxAmountToken0: bigint;
124
168
  maxAmountToken1: bigint;
125
169
  }): PoolLiquidityDelta;
170
+ /**
171
+ * Convenience wrapper: bin targets → adder-ready `{ salt, poolLiquidityDelta, maxAmountToken0, maxAmountToken1 }`.
172
+ *
173
+ * @example
174
+ * ```ts
175
+ * const add = await buildAddLiquidityExactSharesParamsFromBinTargets({
176
+ * publicClient, factoryAddress, dataProviderAddress, poolAddress,
177
+ * bins: [{ bin: 0, targetValueInToken: parseUnits("100", 6), targetValueInToken0: false }],
178
+ * currentPriceX64: slot0.priceX64,
179
+ * });
180
+ * const data = encodeAddLiquidityExactSharesSelfCalldata({ pool: poolAddress, ...add });
181
+ * ```
182
+ */
126
183
  export declare function buildAddLiquidityExactSharesParamsFromBinTargets(params: BuildModifyLiquidityArgsForAdditionParams): Promise<{
127
184
  salt: bigint;
128
185
  poolLiquidityDelta: PoolLiquidityDelta;
129
186
  maxAmountToken0: bigint;
130
187
  maxAmountToken1: bigint;
131
188
  }>;
189
+ /**
190
+ * Encode `LiquidityAdder.addLiquidityExactShares(pool, salt, deltas, max0, max1, ext)`
191
+ * for `msg.sender` as position owner.
192
+ * Approve both pool tokens on the LiquidityAdder before sending.
193
+ */
132
194
  export declare function encodeAddLiquidityExactSharesSelfCalldata(params: {
133
195
  pool: Address;
134
196
  salt: bigint;
@@ -137,6 +199,10 @@ export declare function encodeAddLiquidityExactSharesSelfCalldata(params: {
137
199
  maxAmountToken1: bigint;
138
200
  extensionData?: Hex;
139
201
  }): Hex;
202
+ /**
203
+ * Same as {@link encodeAddLiquidityExactSharesSelfCalldata} but credits liquidity to `owner`
204
+ * (e.g. router or vault acting on behalf of a user).
205
+ */
140
206
  export declare function encodeAddLiquidityExactSharesWithOwnerCalldata(params: {
141
207
  pool: Address;
142
208
  owner: Address;
@@ -146,6 +212,10 @@ export declare function encodeAddLiquidityExactSharesWithOwnerCalldata(params: {
146
212
  maxAmountToken1: bigint;
147
213
  extensionData?: Hex;
148
214
  }): Hex;
215
+ /**
216
+ * Encode weighted add: `weightDeltas` are relative share weights; the adder scales to fit
217
+ * `maxAmountToken0` / `maxAmountToken1`. Use {@link scaleWeightedPoolDeltasToFitCaps} to pre-scale.
218
+ */
149
219
  export declare function encodeAddLiquidityWeightedSelfCalldata(params: {
150
220
  pool: Address;
151
221
  salt: bigint;
@@ -158,6 +228,7 @@ export declare function encodeAddLiquidityWeightedSelfCalldata(params: {
158
228
  maximalPosition?: bigint;
159
229
  extensionData?: Hex;
160
230
  }): Hex;
231
+ /** Weighted add with explicit `owner` (7-arg overload on LiquidityAdder). */
161
232
  export declare function encodeAddLiquidityWeightedWithOwnerCalldata(params: {
162
233
  pool: Address;
163
234
  owner: Address;
@@ -171,12 +242,17 @@ export declare function encodeAddLiquidityWeightedWithOwnerCalldata(params: {
171
242
  maximalPosition?: bigint;
172
243
  extensionData?: Hex;
173
244
  }): Hex;
245
+ /**
246
+ * Encode `Pool.removeLiquidity(owner, salt, deltas, extensionData)`.
247
+ * Send to the **pool** contract; no token approval required (tokens are sent out).
248
+ */
174
249
  export declare function encodeRemoveLiquidityCalldata(params: {
175
250
  owner: Address;
176
251
  salt: bigint;
177
252
  deltas: PoolLiquidityDelta;
178
253
  extensionData?: Hex;
179
254
  }): Hex;
255
+ /** Build `{ salt, poolLiquidityDelta }` for {@link encodeRemoveLiquidityCalldata}. */
180
256
  export declare function buildRemoveLiquidityPoolDelta(params: BuildModifyLiquidityArgsForRemovalParams): Promise<{
181
257
  salt: bigint;
182
258
  poolLiquidityDelta: PoolLiquidityDelta;
@@ -1 +1 @@
1
- {"version":3,"file":"liquidity.d.ts","sourceRoot":"","sources":["../../src/pool/liquidity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liquidity.d.ts","sourceRoot":"","sources":["../../src/pool/liquidity.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,16 @@
1
1
  /**
2
- * MetricAMM SDK - Liquidity
3
- * Unified liquidity calculations and position operations.
2
+ * Liquidity position builders and calldata encoders.
3
+ *
4
+ * **Add liquidity (recommended path):**
5
+ * 1. `buildModifyLiquidityArgsForAddition` / `ForUniformAddition` / `ForUniformAdditionWithTotalTokenAmount`
6
+ * 2. `buildAddLiquidityExactSharesParamsFromBinTargets` (optional convenience)
7
+ * 3. `encodeAddLiquidityExactSharesSelfCalldata` — target `addresses.liquidityAdder`
8
+ * 4. Approve token0 and token1 on the LiquidityAdder for `maxAmountToken0` / `maxAmountToken1`
9
+ *
10
+ * **Remove liquidity:** `buildModifyLiquidityArgsForRemoval` → `buildRemoveLiquidityPoolDelta`
11
+ * → `encodeRemoveLiquidityCalldata` — call the **pool** directly (no adder approval).
12
+ *
13
+ * Position identity is `(owner, salt)`; use the same `salt` for adds and removes.
4
14
  */
5
15
  import { encodeFunctionData } from "viem";
6
16
  import { MAX_UINT104, MAX_INT104, MAX_INT128, LIQUIDITY_ADDER_ABI } from "../constants.js";
@@ -19,6 +29,10 @@ function getLiquidityAdderFunction(name, inputCount) {
19
29
  }
20
30
  return item;
21
31
  }
32
+ /**
33
+ * Sentinel passed as `specAmount0` / `specAmount1` on removals — no minimum output enforced.
34
+ * Same value the pool uses for "accept any amount" on `modifyLiquidity` removes.
35
+ */
22
36
  export const NO_SLIPPAGE_LIMIT = MAX_INT128;
23
37
  function resolvePriceE18(params) {
24
38
  if (params.currentPriceX64 != null) {
@@ -30,7 +44,10 @@ function resolvePriceE18(params) {
30
44
  throw new Error("currentPrice or currentPriceX64 is required");
31
45
  }
32
46
  /**
33
- * Prepare uniform liquidity distribution across a bin range.
47
+ * Uniform liquidity: same token amount in every bin from `lowerBin` to `upperBin`.
48
+ * Delegates to {@link buildModifyLiquidityArgsForAddition}.
49
+ *
50
+ * @returns `[salt, deltas, specAmount0, specAmount1]` — max token caps for the adder.
34
51
  */
35
52
  export async function buildModifyLiquidityArgsForUniformAddition({ publicClient, factoryAddress, dataProviderAddress, poolAddress, amountInTokensPerBin, amountIsInToken0, currentPrice, lowerBin, upperBin, salt = 0n, specAmountBufferPercent = 0, }) {
36
53
  if (lowerBin > upperBin) {
@@ -298,6 +315,11 @@ export async function buildModifyLiquidityArgsForAddition({ publicClient, factor
298
315
  };
299
316
  return toModifyLiquidityArgs(computed);
300
317
  }
318
+ /**
319
+ * Remove liquidity by explicit per-bin specs (percentage or absolute shares).
320
+ *
321
+ * `specAmount0` / `specAmount1` are set to {@link NO_SLIPPAGE_LIMIT} (accept any output).
322
+ */
301
323
  export async function buildModifyLiquidityArgsForRemoval(params) {
302
324
  const { publicClient, dataProviderAddress, poolAddress, owner, salt, specs, specAmountBufferPercent = 0, } = params;
303
325
  validateSpecAmountBufferPercent(specAmountBufferPercent);
@@ -349,6 +371,10 @@ export async function buildModifyLiquidityArgsForRemoval(params) {
349
371
  };
350
372
  return toModifyLiquidityArgs(computed);
351
373
  }
374
+ /**
375
+ * Remove the same `percentageToRemove` from every bin that has position shares.
376
+ * When `bins` is omitted, discovers bins via `getPositionBinSharesRange(lowerBin, upperBin)`.
377
+ */
352
378
  export async function buildModifyLiquidityArgsForPercentageRemoval({ publicClient, dataProviderAddress, poolAddress, owner, salt, percentageToRemove, bins, lowerBin = -10, upperBin = 10, specAmountBufferPercent = 0, }) {
353
379
  validateSpecAmountBufferPercent(specAmountBufferPercent);
354
380
  if (percentageToRemove <= 0 || percentageToRemove > 100) {
@@ -374,6 +400,7 @@ export async function buildModifyLiquidityArgsForPercentageRemoval({ publicClien
374
400
  specAmountBufferPercent,
375
401
  });
376
402
  }
403
+ /** Convert positive `deltaShares` from a modify plan into `PoolLiquidityDelta` for the adder. */
377
404
  export function additionPlanToPoolLiquidityDelta(deltas) {
378
405
  const pos = deltas.filter((d) => d.deltaShares > 0n).sort((a, b) => a.bin - b.bin);
379
406
  return {
@@ -381,6 +408,7 @@ export function additionPlanToPoolLiquidityDelta(deltas) {
381
408
  shares: pos.map((d) => d.deltaShares),
382
409
  };
383
410
  }
411
+ /** Convert negative `deltaShares` from a modify plan into burn `PoolLiquidityDelta` for `removeLiquidity`. */
384
412
  export function removalPlanToPoolLiquidityDelta(deltas) {
385
413
  const burn = deltas.filter((d) => d.deltaShares < 0n).sort((a, b) => a.bin - b.bin);
386
414
  return {
@@ -408,6 +436,19 @@ export function scaleWeightedPoolDeltasToFitCaps(params) {
408
436
  });
409
437
  return { binIdxs: weights.binIdxs, shares };
410
438
  }
439
+ /**
440
+ * Convenience wrapper: bin targets → adder-ready `{ salt, poolLiquidityDelta, maxAmountToken0, maxAmountToken1 }`.
441
+ *
442
+ * @example
443
+ * ```ts
444
+ * const add = await buildAddLiquidityExactSharesParamsFromBinTargets({
445
+ * publicClient, factoryAddress, dataProviderAddress, poolAddress,
446
+ * bins: [{ bin: 0, targetValueInToken: parseUnits("100", 6), targetValueInToken0: false }],
447
+ * currentPriceX64: slot0.priceX64,
448
+ * });
449
+ * const data = encodeAddLiquidityExactSharesSelfCalldata({ pool: poolAddress, ...add });
450
+ * ```
451
+ */
411
452
  export async function buildAddLiquidityExactSharesParamsFromBinTargets(params) {
412
453
  const [salt, deltas, max0, max1] = await buildModifyLiquidityArgsForAddition(params);
413
454
  return {
@@ -417,6 +458,11 @@ export async function buildAddLiquidityExactSharesParamsFromBinTargets(params) {
417
458
  maxAmountToken1: max1,
418
459
  };
419
460
  }
461
+ /**
462
+ * Encode `LiquidityAdder.addLiquidityExactShares(pool, salt, deltas, max0, max1, ext)`
463
+ * for `msg.sender` as position owner.
464
+ * Approve both pool tokens on the LiquidityAdder before sending.
465
+ */
420
466
  export function encodeAddLiquidityExactSharesSelfCalldata(params) {
421
467
  return encodeFunctionData({
422
468
  abi: [getLiquidityAdderFunction("addLiquidityExactShares", 6)],
@@ -431,6 +477,10 @@ export function encodeAddLiquidityExactSharesSelfCalldata(params) {
431
477
  ],
432
478
  });
433
479
  }
480
+ /**
481
+ * Same as {@link encodeAddLiquidityExactSharesSelfCalldata} but credits liquidity to `owner`
482
+ * (e.g. router or vault acting on behalf of a user).
483
+ */
434
484
  export function encodeAddLiquidityExactSharesWithOwnerCalldata(params) {
435
485
  return encodeFunctionData({
436
486
  abi: [getLiquidityAdderFunction("addLiquidityExactShares", 7)],
@@ -446,6 +496,10 @@ export function encodeAddLiquidityExactSharesWithOwnerCalldata(params) {
446
496
  ],
447
497
  });
448
498
  }
499
+ /**
500
+ * Encode weighted add: `weightDeltas` are relative share weights; the adder scales to fit
501
+ * `maxAmountToken0` / `maxAmountToken1`. Use {@link scaleWeightedPoolDeltasToFitCaps} to pre-scale.
502
+ */
449
503
  export function encodeAddLiquidityWeightedSelfCalldata(params) {
450
504
  return encodeFunctionData({
451
505
  abi: [getLiquidityAdderFunction("addLiquidityWeighted", 10)],
@@ -464,6 +518,7 @@ export function encodeAddLiquidityWeightedSelfCalldata(params) {
464
518
  ],
465
519
  });
466
520
  }
521
+ /** Weighted add with explicit `owner` (7-arg overload on LiquidityAdder). */
467
522
  export function encodeAddLiquidityWeightedWithOwnerCalldata(params) {
468
523
  return encodeFunctionData({
469
524
  abi: [getLiquidityAdderFunction("addLiquidityWeighted", 11)],
@@ -483,6 +538,10 @@ export function encodeAddLiquidityWeightedWithOwnerCalldata(params) {
483
538
  ],
484
539
  });
485
540
  }
541
+ /**
542
+ * Encode `Pool.removeLiquidity(owner, salt, deltas, extensionData)`.
543
+ * Send to the **pool** contract; no token approval required (tokens are sent out).
544
+ */
486
545
  export function encodeRemoveLiquidityCalldata(params) {
487
546
  return encodeFunctionData({
488
547
  abi: MetricOmmPoolAbi,
@@ -495,6 +554,7 @@ export function encodeRemoveLiquidityCalldata(params) {
495
554
  ],
496
555
  });
497
556
  }
557
+ /** Build `{ salt, poolLiquidityDelta }` for {@link encodeRemoveLiquidityCalldata}. */
498
558
  export async function buildRemoveLiquidityPoolDelta(params) {
499
559
  const [salt, deltas] = await buildModifyLiquidityArgsForRemoval(params);
500
560
  return { salt, poolLiquidityDelta: removalPlanToPoolLiquidityDelta(deltas) };