@gearbox-protocol/sdk 13.4.0-beta.1 → 13.4.0-beta.2

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 (84) hide show
  1. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +3 -15
  2. package/dist/cjs/sdk/GearboxSDK.js +135 -20
  3. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +66 -187
  4. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +5 -5
  5. package/dist/cjs/sdk/base/BaseContract.js +26 -6
  6. package/dist/cjs/sdk/base/ChainContractsRegister.js +39 -2
  7. package/dist/cjs/sdk/base/Construct.js +15 -3
  8. package/dist/cjs/sdk/base/TokensMeta.js +23 -0
  9. package/dist/cjs/sdk/constants/address-provider.js +0 -22
  10. package/dist/cjs/sdk/core/AbstractAddressProviderContract.js +15 -0
  11. package/dist/cjs/sdk/market/MarketRegister.js +74 -3
  12. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +31 -50
  13. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +16 -0
  14. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +55 -12
  15. package/dist/cjs/sdk/options.js +30 -24
  16. package/dist/cjs/sdk/plugins/BasePlugin.js +24 -0
  17. package/dist/cjs/sdk/pools/AbstractPoolService.js +6 -0
  18. package/dist/cjs/sdk/router/AbstractRouterContract.js +4 -1
  19. package/dist/cjs/sdk/router/RouterV310Contract.js +20 -15
  20. package/dist/cjs/sdk/utils/AddressMap.js +53 -17
  21. package/dist/cjs/sdk/utils/AddressSet.js +9 -0
  22. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +6 -20
  23. package/dist/esm/sdk/GearboxSDK.js +135 -20
  24. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +69 -188
  25. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +5 -5
  26. package/dist/esm/sdk/base/BaseContract.js +26 -6
  27. package/dist/esm/sdk/base/ChainContractsRegister.js +39 -2
  28. package/dist/esm/sdk/base/Construct.js +15 -3
  29. package/dist/esm/sdk/base/TokensMeta.js +23 -0
  30. package/dist/esm/sdk/constants/address-provider.js +0 -21
  31. package/dist/esm/sdk/core/AbstractAddressProviderContract.js +15 -0
  32. package/dist/esm/sdk/market/MarketRegister.js +74 -3
  33. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +31 -50
  34. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +16 -0
  35. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +55 -12
  36. package/dist/esm/sdk/options.js +30 -24
  37. package/dist/esm/sdk/plugins/BasePlugin.js +24 -0
  38. package/dist/esm/sdk/pools/AbstractPoolService.js +6 -0
  39. package/dist/esm/sdk/router/AbstractRouterContract.js +4 -1
  40. package/dist/esm/sdk/router/RouterV310Contract.js +20 -15
  41. package/dist/esm/sdk/utils/AddressMap.js +53 -17
  42. package/dist/esm/sdk/utils/AddressSet.js +9 -0
  43. package/dist/types/permissionless/bindings/price-feed-store.d.ts +1 -2
  44. package/dist/types/permissionless/bindings/types.d.ts +0 -4
  45. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +1 -3
  46. package/dist/types/sdk/GearboxSDK.d.ts +236 -34
  47. package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +55 -132
  48. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +14 -5
  49. package/dist/types/sdk/accounts/multicall-utils.d.ts +3 -3
  50. package/dist/types/sdk/accounts/types.d.ts +215 -28
  51. package/dist/types/sdk/base/BaseContract.d.ts +67 -6
  52. package/dist/types/sdk/base/ChainContractsRegister.d.ts +51 -2
  53. package/dist/types/sdk/base/Construct.d.ts +31 -0
  54. package/dist/types/sdk/base/PlaceholderContract.d.ts +3 -0
  55. package/dist/types/sdk/base/SDKConstruct.d.ts +10 -0
  56. package/dist/types/sdk/base/TokensMeta.d.ts +59 -2
  57. package/dist/types/sdk/base/types.d.ts +185 -25
  58. package/dist/types/sdk/chain/chains.d.ts +78 -18
  59. package/dist/types/sdk/chain/detectNetwork.d.ts +7 -0
  60. package/dist/types/sdk/constants/address-provider.d.ts +4 -3
  61. package/dist/types/sdk/core/AbstractAddressProviderContract.d.ts +23 -0
  62. package/dist/types/sdk/core/types.d.ts +46 -0
  63. package/dist/types/sdk/market/MarketRegister.d.ts +81 -0
  64. package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +3 -0
  65. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +40 -50
  66. package/dist/types/sdk/market/oracle/types.d.ts +78 -59
  67. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -0
  68. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +3 -0
  69. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +22 -2
  70. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +80 -16
  71. package/dist/types/sdk/market/pricefeeds/getRawPriceUpdates.d.ts +2 -2
  72. package/dist/types/sdk/market/pricefeeds/types.d.ts +75 -11
  73. package/dist/types/sdk/options.d.ts +13 -4
  74. package/dist/types/sdk/plugins/BasePlugin.d.ts +39 -0
  75. package/dist/types/sdk/plugins/types.d.ts +73 -43
  76. package/dist/types/sdk/pools/AbstractPoolService.d.ts +12 -0
  77. package/dist/types/sdk/pools/types.d.ts +75 -6
  78. package/dist/types/sdk/router/AbstractRouterContract.d.ts +21 -2
  79. package/dist/types/sdk/router/RouterV310Contract.d.ts +27 -15
  80. package/dist/types/sdk/router/types.d.ts +47 -70
  81. package/dist/types/sdk/types/state.d.ts +32 -3
  82. package/dist/types/sdk/utils/AddressMap.d.ts +61 -17
  83. package/dist/types/sdk/utils/AddressSet.d.ts +15 -0
  84. package/package.json +3 -2
@@ -26,50 +26,56 @@ var import_updates = require("./market/pricefeeds/updates/index.js");
26
26
  var import_utils = require("./utils/index.js");
27
27
  const SDKOptions = import_v4.z.object({
28
28
  /**
29
- * If not set, address provider address is determinted automatically from networkType
30
- */
29
+ * Override address of the Gearbox AddressProvider contract.
30
+ * If not set, uses default universal address provider address {@link ADDRESS_PROVIDER_V310}
31
+ **/
31
32
  addressProvider: (0, import_utils.ZodAddress)().optional(),
32
33
  /**
33
- * Market configurators
34
- */
34
+ * Addresses of market configurator contracts to load.
35
+ * If not set, all default market configurators for the chain are loaded
36
+ * (from {@link GearboxChain.defaultMarketConfigurators})
37
+ **/
35
38
  marketConfigurators: import_v4.z.array((0, import_utils.ZodAddress)()).optional(),
36
39
  /**
37
- * Attach and load state at this specific block number
38
- */
40
+ * Pin SDK to a specific block number during attach.
41
+ * When set, all on-chain reads use this block instead of `latest`.
42
+ **/
39
43
  blockNumber: import_v4.z.union([import_v4.z.bigint().nonnegative(), import_v4.z.number().int().nonnegative()]).optional(),
40
44
  /**
41
- * Will skip updateable prices on attach and sync
42
- * Makes things faster when your service is not intereseted in prices
43
- */
45
+ * Skip fetching updatable price feeds on attach and sync.
46
+ * Speeds up initialisation when prices are not needed.
47
+ **/
44
48
  ignoreUpdateablePrices: import_v4.z.boolean().optional(),
45
49
  /**
46
- * Will skip loading markets for these pools on attach/hydrate/sync
47
- */
50
+ * Pool addresses whose markets should be skipped during attach/hydrate/sync.
51
+ **/
48
52
  ignoreMarkets: import_v4.z.array((0, import_utils.ZodAddress)()).optional(),
49
53
  /**
50
- * Will throw an error if contract type is not supported, otherwise will try to use generic contract first, if possible
51
- */
54
+ * When `true`, throw on unrecognised contract types instead of falling
55
+ * back to a generic contract wrapper.
56
+ **/
52
57
  strictContractTypes: import_v4.z.boolean().optional(),
53
58
  /**
54
- * Plugins to extends SDK functionality
55
- */
59
+ * Plugins that extend SDK functionality.
60
+ **/
56
61
  plugins: import_v4.z.record(import_v4.z.string(), import_v4.z.any()).optional(),
57
62
  /**
58
- * Bring your own logger
59
- */
63
+ * Custom logger implementation.
64
+ **/
60
65
  logger: import_v4.z.any(),
61
66
  /**
62
- * Options related to redstone price feeds
63
- */
67
+ * Options for Redstone price-feed updates.
68
+ **/
64
69
  redstone: import_updates.RedstoneOptions.optional(),
65
70
  /**
66
- * Options related to pyth price feeds
67
- */
71
+ * Options for Pyth price-feed updates.
72
+ **/
68
73
  pyth: import_updates.PythOptions.optional(),
69
74
  /**
70
- * Explicit gas limit for read eth_calls
71
- * Null to disable explicitly setting gas limit, undefined to use default sdk value
72
- */
75
+ * Explicit gas limit for read-only `eth_call` requests.
76
+ * `null` disables the gas limit entirely; `undefined` uses the SDK default.
77
+ * Default gas limit is 550_000_000 (550M).
78
+ **/
73
79
  gasLimit: import_v4.z.bigint().nonnegative().nullable().optional()
74
80
  });
75
81
  // Annotate the CommonJS export names for ESM import in node:
@@ -24,11 +24,23 @@ module.exports = __toCommonJS(BasePlugin_exports);
24
24
  class BasePlugin {
25
25
  #sdk;
26
26
  logger;
27
+ /**
28
+ * Plugin state version for hydration compatibility checks.
29
+ * @default 1
30
+ **/
27
31
  version = 1;
32
+ /**
33
+ * When `true`, state is fetched eagerly during the `attach` phase
34
+ * rather than waiting for an explicit `load` call.
35
+ **/
28
36
  loadOnAttach;
29
37
  constructor(loadOnAttach = false) {
30
38
  this.loadOnAttach = loadOnAttach;
31
39
  }
40
+ /**
41
+ * Reference to the parent SDK instance.
42
+ * @throws Error if the SDK has not been attached yet.
43
+ **/
32
44
  get sdk() {
33
45
  if (!this.#sdk) {
34
46
  throw new Error("SDK is not attached");
@@ -42,17 +54,29 @@ class BasePlugin {
42
54
  this.#sdk = sdk;
43
55
  this.logger = sdk.logger?.child?.({ name: this.constructor.name }) ?? sdk.logger;
44
56
  }
57
+ /**
58
+ * {@inheritDoc IGearboxSDKPlugin.attach}
59
+ **/
45
60
  async attach() {
46
61
  if (this.loadOnAttach) {
47
62
  await this.load(true);
48
63
  }
49
64
  }
65
+ /**
66
+ * {@inheritDoc IGearboxSDKPlugin.syncState}
67
+ **/
50
68
  async syncState() {
51
69
  await this.load(false);
52
70
  }
71
+ /**
72
+ * Network type of the connected chain (e.g. `"Mainnet"`, `"Arbitrum"`).
73
+ **/
53
74
  get network() {
54
75
  return this.sdk.networkType;
55
76
  }
77
+ /**
78
+ * Viem public client for read-only chain interactions.
79
+ **/
56
80
  get client() {
57
81
  return this.sdk.client;
58
82
  }
@@ -33,6 +33,9 @@ class AbstractPoolService extends import_base.SDKConstruct {
33
33
  this.#version = version;
34
34
  this.logger?.debug(`Created PoolService with version: ${this.#version}`);
35
35
  }
36
+ /**
37
+ * {@inheritDoc IPoolsService.addLiquidity}
38
+ **/
36
39
  addLiquidity({
37
40
  collateral,
38
41
  pool,
@@ -89,6 +92,9 @@ class AbstractPoolService extends import_base.SDKConstruct {
89
92
  ];
90
93
  }
91
94
  }
95
+ /**
96
+ * {@inheritDoc IPoolsService.removeLiquidity}
97
+ **/
92
98
  removeLiquidity({
93
99
  pool,
94
100
  amount,
@@ -26,6 +26,9 @@ var import_math = require("../constants/math.js");
26
26
  var import_utils = require("../utils/index.js");
27
27
  var import_helpers = require("./helpers.js");
28
28
  class AbstractRouterContract extends import_base.BaseContract {
29
+ /**
30
+ * Reference to the parent SDK instance.
31
+ **/
29
32
  sdk;
30
33
  constructor(sdk, args) {
31
34
  super(sdk, args);
@@ -88,7 +91,7 @@ class AbstractRouterContract extends import_base.BaseContract {
88
91
  };
89
92
  }
90
93
  /**
91
- * Tries to sell just enought of most valuable token to cover debt
94
+ * Tries to sell just enough of the most valuable token to cover debt.
92
95
  * @param ca
93
96
  * @param keepAssets
94
97
  * @returns
@@ -41,8 +41,8 @@ class RouterV310Contract extends import_AbstractRouterContract.AbstractRouterCon
41
41
  });
42
42
  }
43
43
  /**
44
- * Implements {@link IRouterContract.findOneTokenPath}
45
- */
44
+ * {@inheritDoc IRouterContract.findOneTokenPath}
45
+ **/
46
46
  async findOneTokenPath(props) {
47
47
  const {
48
48
  creditAccount,
@@ -83,8 +83,8 @@ class RouterV310Contract extends import_AbstractRouterContract.AbstractRouterCon
83
83
  };
84
84
  }
85
85
  /**
86
- * Implements {@link IRouterContract.findOpenStrategyPath}
87
- */
86
+ * {@inheritDoc IRouterContract.findOpenStrategyPath}
87
+ **/
88
88
  async findOpenStrategyPath(props) {
89
89
  const {
90
90
  creditManager: cm,
@@ -141,8 +141,8 @@ class RouterV310Contract extends import_AbstractRouterContract.AbstractRouterCon
141
141
  };
142
142
  }
143
143
  /**
144
- * Implements {@link IRouterContract.findClaimAllRewards}
145
- */
144
+ * {@inheritDoc IRouterContract.findClaimAllRewards}
145
+ **/
146
146
  async findClaimAllRewards(props) {
147
147
  const record = props.tokensToClaim.reduce(
148
148
  (acc, a) => {
@@ -167,8 +167,8 @@ class RouterV310Contract extends import_AbstractRouterContract.AbstractRouterCon
167
167
  };
168
168
  }
169
169
  /**
170
- * Implements {@link IRouterContract.findBestClosePath}
171
- */
170
+ * {@inheritDoc IRouterContract.findBestClosePath}
171
+ **/
172
172
  async findBestClosePath(props) {
173
173
  const {
174
174
  creditAccount: ca,
@@ -233,17 +233,22 @@ class RouterV310Contract extends import_AbstractRouterContract.AbstractRouterCon
233
233
  };
234
234
  }
235
235
  /**
236
- * v310-specific method to set explicitly number of splits for a token
237
- * @param token
238
- * @param numSplits
239
- */
236
+ * Override the number of route splits used when swapping a specific token.
237
+ *
238
+ * @param token - Token address to configure.
239
+ * @param numSplits - Number of parallel route splits.
240
+ * @internal
241
+ **/
240
242
  setNumSplits(token, numSplits) {
241
243
  this.#numSplits.upsert(token, numSplits);
242
244
  }
243
245
  /**
244
- * v310-specific method to set default number of splits for a token
245
- * @param numSplits
246
- */
246
+ * Set the default number of route splits applied to the highest-value
247
+ * token in each swap.
248
+ *
249
+ * @param numSplits - Default number of parallel route splits.
250
+ * @internal
251
+ **/
247
252
  setDefaultNumSplits(numSplits) {
248
253
  this.#defaultNumSplits = numSplits;
249
254
  }
@@ -26,6 +26,10 @@ class AddressMap {
26
26
  #map;
27
27
  #frozen = false;
28
28
  #name;
29
+ /**
30
+ * @param entries - Optional initial key-value pairs. Address strings are checksummed automatically.
31
+ * @param name - Optional label used in error messages when a lookup fails.
32
+ */
29
33
  constructor(entries, name) {
30
34
  this.#map = /* @__PURE__ */ new Map();
31
35
  if (entries) {
@@ -37,9 +41,10 @@ class AddressMap {
37
41
  this.#name = name;
38
42
  }
39
43
  /**
40
- * Adds or updates value, undefined removes value
41
- * @param address
42
- * @param value
44
+ * Adds or updates a value. Passing `undefined` removes the entry.
45
+ * @param address - EVM address (checksummed automatically).
46
+ * @param value - Value to store, or `undefined` to delete the entry.
47
+ * @throws If the map has been {@link freeze | frozen}.
43
48
  */
44
49
  upsert(address, value) {
45
50
  if (this.#frozen) {
@@ -53,9 +58,10 @@ class AddressMap {
53
58
  }
54
59
  }
55
60
  /**
56
- * Adds value, throws if this address is already used
57
- * @param address
58
- * @param value
61
+ * Inserts a value, throwing if the address is already present.
62
+ * @param address - EVM address (checksummed automatically).
63
+ * @param value - Value to store.
64
+ * @throws If the map has been {@link freeze | frozen} or if `address` already exists.
59
65
  */
60
66
  insert(address, value) {
61
67
  if (this.#frozen) {
@@ -70,27 +76,26 @@ class AddressMap {
70
76
  this.#map.set(key, value);
71
77
  }
72
78
  /**
73
- * Checks if address is present in map
74
- * @param address
75
- * @returns
79
+ * Checks whether an address is present in the map.
80
+ * @param address - EVM address (case-insensitive).
76
81
  */
77
82
  has(address) {
78
83
  const key = (0, import_viem.getAddress)(address);
79
84
  return this.#map.has(key);
80
85
  }
81
86
  /**
82
- * Returns value, or undefined if the address is not in map
83
- * @param address
84
- * @returns
87
+ * Looks up a value by EVM address (case-insensitive).
88
+ * @param address - EVM address to look up.
89
+ * @returns The stored value, or `undefined` if not present.
85
90
  */
86
91
  get(address) {
87
92
  const key = (0, import_viem.getAddress)(address);
88
93
  return this.#map.get(key);
89
94
  }
90
95
  /**
91
- * Gets address from map, throws if not found
92
- * @param address
93
- * @returns
96
+ * Looks up a value by EVM address, throwing if the address is absent.
97
+ * @param address - EVM address to look up.
98
+ * @throws If `address` is not in the map.
94
99
  */
95
100
  mustGet(address) {
96
101
  const key = (0, import_viem.getAddress)(address);
@@ -100,40 +105,71 @@ class AddressMap {
100
105
  return this.#map.get(key);
101
106
  }
102
107
  /**
103
- * Deletes address from map
104
- * @param address
108
+ * Removes an entry by address. No-op if the address is absent.
109
+ * @param address - EVM address to remove.
105
110
  */
106
111
  delete(address) {
107
112
  const key = (0, import_viem.getAddress)(address);
108
113
  this.#map.delete(key);
109
114
  }
115
+ /**
116
+ * Removes all entries from the map.
117
+ **/
110
118
  clear() {
111
119
  this.#map.clear();
112
120
  }
121
+ /**
122
+ * Returns all entries as an array of `[checksummedAddress, value]` tuples.
123
+ **/
113
124
  entries() {
114
125
  return Array.from(this.#map.entries());
115
126
  }
127
+ /**
128
+ * Returns all values in insertion order.
129
+ **/
116
130
  values() {
117
131
  return Array.from(this.#map.values());
118
132
  }
133
+ /**
134
+ * Returns all checksummed addresses in insertion order.
135
+ **/
119
136
  keys() {
120
137
  return Array.from(this.#map.keys());
121
138
  }
139
+ /**
140
+ * Converts the map to a plain `Record<Address, T>` object.
141
+ **/
122
142
  asRecord() {
123
143
  return Object.fromEntries(this.#map.entries());
124
144
  }
145
+ /**
146
+ * Number of entries in the map.
147
+ **/
125
148
  get size() {
126
149
  return this.#map.size;
127
150
  }
151
+ /**
152
+ * Prevents further mutations. Any subsequent call to {@link upsert},
153
+ * {@link insert}, or {@link delete} will throw.
154
+ */
128
155
  freeze() {
129
156
  this.#frozen = true;
130
157
  }
131
158
  get name() {
132
159
  return this.#name;
133
160
  }
161
+ /**
162
+ * Creates an `AddressMap` from a plain record object.
163
+ * @param record - Object whose keys are EVM addresses.
164
+ */
134
165
  static fromRecord(record) {
135
166
  return new AddressMap(Object.entries(record));
136
167
  }
168
+ /**
169
+ * Creates an `AddressMap` by extracting an address from each array element.
170
+ * @param array - Source items.
171
+ * @param mapFn - Function that returns the address key for a given item.
172
+ */
137
173
  static fromMappedArray(array, mapFn) {
138
174
  return new AddressMap(array.map((item) => [mapFn(item), item]));
139
175
  }
@@ -23,6 +23,9 @@ __export(AddressSet_exports, {
23
23
  module.exports = __toCommonJS(AddressSet_exports);
24
24
  var import_viem = require("viem");
25
25
  class AddressSet extends Set {
26
+ /**
27
+ * @param entries - Optional initial addresses. Each is checksummed automatically.
28
+ */
26
29
  constructor(entries) {
27
30
  super(Array.from(entries ?? []).map((a) => (0, import_viem.getAddress)(a)));
28
31
  }
@@ -35,9 +38,15 @@ class AddressSet extends Set {
35
38
  has(value) {
36
39
  return super.has((0, import_viem.getAddress)(value));
37
40
  }
41
+ /**
42
+ * Returns all addresses as an array.
43
+ **/
38
44
  asArray() {
39
45
  return Array.from(this);
40
46
  }
47
+ /**
48
+ * Maps each address through `fn` and returns the resulting array.
49
+ **/
41
50
  map(fn) {
42
51
  return this.asArray().map(fn);
43
52
  }
@@ -1,26 +1,13 @@
1
1
  import {
2
- decodeFunctionData,
3
- multicall3Abi,
4
- parseAbi
2
+ multicall3Abi
5
3
  } from "viem";
6
4
  import {
7
5
  createRawTx,
8
- GearboxSDK
6
+ GearboxSDK,
7
+ getRawPriceUpdates
9
8
  } from "../../../sdk/index.js";
10
- import {
11
- PriceFeedStoreContract
12
- } from "../../bindings/index.js";
9
+ import { PriceFeedStoreContract } from "../../bindings/index.js";
13
10
  import { Addresses } from "../../deployment/addresses.js";
14
- function getUpdateCalldata(tx) {
15
- const data = decodeFunctionData({
16
- abi: parseAbi(["function updatePrice(bytes calldata data) external"]),
17
- data: tx.raw.callData
18
- });
19
- return {
20
- priceFeed: tx.raw.to,
21
- data: data.args[0]
22
- };
23
- }
24
11
  async function getPriceUpdateTx({
25
12
  client,
26
13
  priceFeeds,
@@ -57,13 +44,12 @@ async function getPriceUpdateTx({
57
44
  });
58
45
  return multicallTx;
59
46
  }
60
- const priceUpdates = updateTxs.txs.map((tx) => getUpdateCalldata(tx));
47
+ const priceUpdates = getRawPriceUpdates(updateTxs);
61
48
  if (priceUpdates.length === 0) {
62
49
  return void 0;
63
50
  }
64
51
  return pfStore.updatePrices(priceUpdates);
65
52
  }
66
53
  export {
67
- getPriceUpdateTx,
68
- getUpdateCalldata
54
+ getPriceUpdateTx
69
55
  };