@1delta/data-sdk 0.0.32 → 0.0.34

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.
package/dist/index.js CHANGED
@@ -71,6 +71,8 @@ globalThis[GLOBAL_LENDER_DATA_KEY] = {
71
71
  termMarkets: {},
72
72
  exactlyConfig: {},
73
73
  exactlyMarkets: {},
74
+ tellerConfig: {},
75
+ tellerPools: {},
74
76
  liquityConfig: {},
75
77
  liquityMarkets: {},
76
78
  riverConfig: {},
@@ -129,6 +131,8 @@ function initializeLenderData({
129
131
  termMarketsOverride,
130
132
  exactlyConfigOverride,
131
133
  exactlyMarketsOverride,
134
+ tellerConfigOverride,
135
+ tellerPoolsOverride,
132
136
  liquityConfigOverride,
133
137
  liquityMarketsOverride,
134
138
  riverConfigOverride,
@@ -180,6 +184,8 @@ function initializeLenderData({
180
184
  if (termMarketsOverride) data.termMarkets = termMarketsOverride;
181
185
  if (exactlyConfigOverride) data.exactlyConfig = exactlyConfigOverride;
182
186
  if (exactlyMarketsOverride) data.exactlyMarkets = exactlyMarketsOverride;
187
+ if (tellerConfigOverride) data.tellerConfig = tellerConfigOverride;
188
+ if (tellerPoolsOverride) data.tellerPools = tellerPoolsOverride;
183
189
  if (liquityConfigOverride) data.liquityConfig = liquityConfigOverride;
184
190
  if (liquityMarketsOverride) data.liquityMarkets = liquityMarketsOverride;
185
191
  if (riverConfigOverride) data.riverConfig = riverConfigOverride;
@@ -273,6 +279,14 @@ var exactlyMarketByAsset = (chainId, asset) => {
273
279
  const lower = asset.toLowerCase();
274
280
  return exactlyMarketsByChain(chainId).find((m) => m.asset.toLowerCase() === lower);
275
281
  };
282
+ var tellerConfig = () => getGlobalData2()?.tellerConfig;
283
+ var tellerPools = () => getGlobalData2()?.tellerPools;
284
+ var tellerConfigByChain = (chainId) => getGlobalData2()?.tellerConfig?.[String(chainId)];
285
+ var tellerPoolsByChain = (chainId) => getGlobalData2()?.tellerPools?.[String(chainId)] ?? [];
286
+ var tellerPoolByAddress = (chainId, pool) => {
287
+ const lower = pool.toLowerCase();
288
+ return tellerPoolsByChain(chainId).find((p) => p.pool.toLowerCase() === lower);
289
+ };
276
290
  var liquityConfig = () => getGlobalData2()?.liquityConfig;
277
291
  var liquityConfigFor = (lender, chainId) => getGlobalData2()?.liquityConfig?.[lender]?.[String(chainId)];
278
292
  var liquityMarkets = () => getGlobalData2()?.liquityMarkets;
@@ -551,6 +565,11 @@ exports.siloPeripherals = siloPeripherals;
551
565
  exports.siloPeripheralsV3 = siloPeripheralsV3;
552
566
  exports.siloV2LenderKey = siloV2LenderKey;
553
567
  exports.siloV3LenderKey = siloV3LenderKey;
568
+ exports.tellerConfig = tellerConfig;
569
+ exports.tellerConfigByChain = tellerConfigByChain;
570
+ exports.tellerPoolByAddress = tellerPoolByAddress;
571
+ exports.tellerPools = tellerPools;
572
+ exports.tellerPoolsByChain = tellerPoolsByChain;
554
573
  exports.termApiBaseOverride = termApiBaseOverride;
555
574
  exports.termConfig = termConfig;
556
575
  exports.termMarketById = termMarketById;
package/dist/index.mjs CHANGED
@@ -69,6 +69,8 @@ globalThis[GLOBAL_LENDER_DATA_KEY] = {
69
69
  termMarkets: {},
70
70
  exactlyConfig: {},
71
71
  exactlyMarkets: {},
72
+ tellerConfig: {},
73
+ tellerPools: {},
72
74
  liquityConfig: {},
73
75
  liquityMarkets: {},
74
76
  riverConfig: {},
@@ -127,6 +129,8 @@ function initializeLenderData({
127
129
  termMarketsOverride,
128
130
  exactlyConfigOverride,
129
131
  exactlyMarketsOverride,
132
+ tellerConfigOverride,
133
+ tellerPoolsOverride,
130
134
  liquityConfigOverride,
131
135
  liquityMarketsOverride,
132
136
  riverConfigOverride,
@@ -178,6 +182,8 @@ function initializeLenderData({
178
182
  if (termMarketsOverride) data.termMarkets = termMarketsOverride;
179
183
  if (exactlyConfigOverride) data.exactlyConfig = exactlyConfigOverride;
180
184
  if (exactlyMarketsOverride) data.exactlyMarkets = exactlyMarketsOverride;
185
+ if (tellerConfigOverride) data.tellerConfig = tellerConfigOverride;
186
+ if (tellerPoolsOverride) data.tellerPools = tellerPoolsOverride;
181
187
  if (liquityConfigOverride) data.liquityConfig = liquityConfigOverride;
182
188
  if (liquityMarketsOverride) data.liquityMarkets = liquityMarketsOverride;
183
189
  if (riverConfigOverride) data.riverConfig = riverConfigOverride;
@@ -271,6 +277,14 @@ var exactlyMarketByAsset = (chainId, asset) => {
271
277
  const lower = asset.toLowerCase();
272
278
  return exactlyMarketsByChain(chainId).find((m) => m.asset.toLowerCase() === lower);
273
279
  };
280
+ var tellerConfig = () => getGlobalData2()?.tellerConfig;
281
+ var tellerPools = () => getGlobalData2()?.tellerPools;
282
+ var tellerConfigByChain = (chainId) => getGlobalData2()?.tellerConfig?.[String(chainId)];
283
+ var tellerPoolsByChain = (chainId) => getGlobalData2()?.tellerPools?.[String(chainId)] ?? [];
284
+ var tellerPoolByAddress = (chainId, pool) => {
285
+ const lower = pool.toLowerCase();
286
+ return tellerPoolsByChain(chainId).find((p) => p.pool.toLowerCase() === lower);
287
+ };
274
288
  var liquityConfig = () => getGlobalData2()?.liquityConfig;
275
289
  var liquityConfigFor = (lender, chainId) => getGlobalData2()?.liquityConfig?.[lender]?.[String(chainId)];
276
290
  var liquityMarkets = () => getGlobalData2()?.liquityMarkets;
@@ -450,4 +464,4 @@ async function fetchTokenLists(chainIds) {
450
464
  return Object.fromEntries(results);
451
465
  }
452
466
 
453
- export { GEARBOX_ACCOUNT_COMPRESSOR_V310, aaveOracles, aaveOraclesConfig, aavePools, aaveReserves, aaveTokens, aaveV4Oracles, aaveV4Peripherals, aaveV4SpokeLenderKey, aaveV4Spokes, aaveWethGateway, chainLogoURI, chains, compoundV2Oracles, compoundV2OraclesConfig, compoundV2Pools, compoundV2Reserves, compoundV2TokenArray, compoundV2Tokens, compoundV3BaseData, compoundV3Bulker, compoundV3OraclesData, compoundV3Pools, compoundV3Reserves, dolomiteChains, dolomiteConfigs, dolomiteEmode, dolomiteMarketIdByToken, eulerConfigs, eulerVaults, exactlyConfig, exactlyMarketByAddress, exactlyMarketByAsset, exactlyMarkets, exactlyMarketsByChain, fetchTokenList, fetchTokenLists, findAaveV4PositionManager, fluidChains, fluidResolvers, fluidVaultEntries, fluidVaults, gearboxAccountCompressor, gearboxAddressProviderV310, gearboxBotListV3, gearboxChains, gearboxMarketCompressor, gearboxMarketConfigurators, gearboxResolvers, gearboxV3LenderKey, getAaveV4GatewayAddresses, getAaveV4PositionManagers, getAaveV4SpokeEntry, getAaveV4SpokePeripherals, getChainEntries, getSiloV2MarketEntry, getSiloV3MarketEntry, initConfig, initializeChainData, initializeLenderData, liquityBranchByIndex, liquityBranchByTroveManager, liquityBranchesByChain, liquityConfig, liquityConfigFor, liquityLendersByChain, liquityMarkets, listaNativeProvider, midnightApiBaseOverride, midnightConfig, midnightMarketById, midnightMarkets, midnightMarketsByChain, morphoBundler3, morphoOracles, morphoPools, morphoTypeMarkets, morphoTypeOracles, morphoTypeVaults, parseAaveV4SpokeLenderKey, parseGearboxV3LenderKey, parseSiloV2LenderKey, parseSiloV3LenderKey, resolveMidnightApiBase, resolveTermApiBase, riverChainData, riverConfig, riverConfigFor, riverLendersByChain, riverMarketByIndex, riverMarkets, setMidnightApiBase, setTermApiBase, siloMarkets, siloMarketsV3, siloPeripherals, siloPeripheralsV3, siloV2LenderKey, siloV3LenderKey, termApiBaseOverride, termConfig, termMarketById, termMarkets, termMarketsByChain };
467
+ export { GEARBOX_ACCOUNT_COMPRESSOR_V310, aaveOracles, aaveOraclesConfig, aavePools, aaveReserves, aaveTokens, aaveV4Oracles, aaveV4Peripherals, aaveV4SpokeLenderKey, aaveV4Spokes, aaveWethGateway, chainLogoURI, chains, compoundV2Oracles, compoundV2OraclesConfig, compoundV2Pools, compoundV2Reserves, compoundV2TokenArray, compoundV2Tokens, compoundV3BaseData, compoundV3Bulker, compoundV3OraclesData, compoundV3Pools, compoundV3Reserves, dolomiteChains, dolomiteConfigs, dolomiteEmode, dolomiteMarketIdByToken, eulerConfigs, eulerVaults, exactlyConfig, exactlyMarketByAddress, exactlyMarketByAsset, exactlyMarkets, exactlyMarketsByChain, fetchTokenList, fetchTokenLists, findAaveV4PositionManager, fluidChains, fluidResolvers, fluidVaultEntries, fluidVaults, gearboxAccountCompressor, gearboxAddressProviderV310, gearboxBotListV3, gearboxChains, gearboxMarketCompressor, gearboxMarketConfigurators, gearboxResolvers, gearboxV3LenderKey, getAaveV4GatewayAddresses, getAaveV4PositionManagers, getAaveV4SpokeEntry, getAaveV4SpokePeripherals, getChainEntries, getSiloV2MarketEntry, getSiloV3MarketEntry, initConfig, initializeChainData, initializeLenderData, liquityBranchByIndex, liquityBranchByTroveManager, liquityBranchesByChain, liquityConfig, liquityConfigFor, liquityLendersByChain, liquityMarkets, listaNativeProvider, midnightApiBaseOverride, midnightConfig, midnightMarketById, midnightMarkets, midnightMarketsByChain, morphoBundler3, morphoOracles, morphoPools, morphoTypeMarkets, morphoTypeOracles, morphoTypeVaults, parseAaveV4SpokeLenderKey, parseGearboxV3LenderKey, parseSiloV2LenderKey, parseSiloV3LenderKey, resolveMidnightApiBase, resolveTermApiBase, riverChainData, riverConfig, riverConfigFor, riverLendersByChain, riverMarketByIndex, riverMarkets, setMidnightApiBase, setTermApiBase, siloMarkets, siloMarketsV3, siloPeripherals, siloPeripheralsV3, siloV2LenderKey, siloV3LenderKey, tellerConfig, tellerConfigByChain, tellerPoolByAddress, tellerPools, tellerPoolsByChain, termApiBaseOverride, termConfig, termMarketById, termMarkets, termMarketsByChain };
package/dist/lending.d.ts CHANGED
@@ -138,6 +138,10 @@ export type TermConfigChain = {
138
138
  repoTokenListEventEmitter?: string | null;
139
139
  /** DiscountRateAdapter — helper used to price secondary listings. */
140
140
  discountRateAdapter?: string | null;
141
+ /** TermPriceConsumerV3 — Term's own on-chain price oracle (singleton per
142
+ * chain). `usdValueOfTokens(token, 10^dec)` → per-token USD price (1e18).
143
+ * The same oracle Term liquidates against, so it drives liquidation risk. */
144
+ priceOracle?: string | null;
141
145
  /** Term data endpoint base (subgraph/HTTP) for listings + auction state. */
142
146
  apiBaseUrl?: string | null;
143
147
  };
@@ -234,6 +238,66 @@ export type ExactlyMarketConfig = {
234
238
  export type ExactlyMarketsType = {
235
239
  [chainId: string]: ExactlyMarketConfig[];
236
240
  };
241
+ /** Per-chain, protocol-level (evergreen) Teller addresses. */
242
+ export type TellerConfigChain = {
243
+ /** TellerV2 — loan lifecycle: bid reads, repayLoanFull, approveMarketForwarder. */
244
+ tellerV2: string;
245
+ /** MarketRegistry — market owners / default windows / attestation rules. */
246
+ marketRegistry: string;
247
+ /** CollateralManager — per-bid collateral escrow (approve target on open). */
248
+ collateralManager: string;
249
+ /** LenderManager — tokenizes the lender side of an accepted loan (ERC-721). */
250
+ lenderManager?: string | null;
251
+ /** LenderCommitmentForwarder — legacy commitment forwarder (optional). */
252
+ lenderCommitmentForwarder?: string | null;
253
+ /** SmartCommitmentForwarder — borrower entrypoint for pool-backed loans. */
254
+ smartCommitmentForwarder: string;
255
+ /** LenderCommitmentGroup pool factory V1 (Smart pools) — for pool discovery. */
256
+ lenderCommitmentGroupFactory?: string | null;
257
+ /** LenderCommitmentGroup pool factory V2 (ERC-4626 pools; bulk of liquidity). */
258
+ lenderCommitmentGroupFactoryV2?: string | null;
259
+ /** LenderCommitmentGroup pool factory V3 (ERC-4626 pools). */
260
+ lenderCommitmentGroupFactoryV3?: string | null;
261
+ };
262
+ export type TellerConfigType = {
263
+ [chainId: string]: TellerConfigChain;
264
+ };
265
+ /** A Teller LenderCommitmentGroup pool: one fixed principal↔collateral pair. */
266
+ export type TellerPoolConfig = {
267
+ /** Pool (LenderCommitmentGroup) address — also the per-market lender-key body. */
268
+ pool: string;
269
+ /** MarketRegistry market id this pool lends into. Immutable; OPTIONAL —
270
+ * read on-chain via `getMarketId()` when absent (the curated list from the
271
+ * Teller API doesn't carry it). */
272
+ marketId?: string;
273
+ /** Principal (loan / debt) token address. */
274
+ principal: string;
275
+ /** Principal token symbol, e.g. "USDC". */
276
+ principalSymbol: string;
277
+ /** Principal token decimals. */
278
+ principalDecimals: number;
279
+ /** Collateral token address. */
280
+ collateral: string;
281
+ /** Collateral token symbol, e.g. "WETH". */
282
+ collateralSymbol: string;
283
+ /** Collateral token decimals. */
284
+ collateralDecimals: number;
285
+ /** Max loan duration (seconds) the pool allows (borrower picks ≤ this).
286
+ * Immutable; OPTIONAL — read on-chain via `getMaxLoanDuration()` when absent. */
287
+ maxLoanDuration?: number;
288
+ /** Pool generation hint (2 = ERC-4626 `_Pool_V2/V3`, 1 = `_Smart`), from the
289
+ * Teller API `isV2` flag. Borrow path is identical; only supply-side differs. */
290
+ isV2?: boolean;
291
+ /** WAD/bps interest-rate lower bound (informational; enforced on-chain). */
292
+ interestRateLowerBound?: string | number | null;
293
+ /** WAD/bps interest-rate upper bound (informational; enforced on-chain). */
294
+ interestRateUpperBound?: string | number | null;
295
+ /** Optional display label, e.g. "Teller USDC / WETH". */
296
+ name?: string;
297
+ };
298
+ export type TellerPoolsType = {
299
+ [chainId: string]: TellerPoolConfig[];
300
+ };
237
301
  /** Per-deployment, per-chain shared Liquity-family addresses + deviation params. */
238
302
  export type LiquityConfigChain = {
239
303
  /** CollateralRegistry — branch enumeration + redemptions. */
@@ -799,7 +863,7 @@ export type AaveV4PeripheralsType = {
799
863
  [chainId: string]: AaveV4ChainPeripherals;
800
864
  };
801
865
  /** Override datas used in the SDK - works across all module instances */
802
- export declare function initializeLenderData({ aaveTokensOverride, aavePoolsOverride, aaveOraclesOverride, compoundV2OraclesOverride, compoundV3OraclesDataOverride, compoundV3PoolsOverride, compoundV3BaseDataOverride, morphoPoolsOverride, compoundV2TokensOverride, compoundV2TokenArrayOverride, compoundV2PoolsOverride, initConfigOverride, aaveReservesOverride, compoundV3ReservesOverride, compoundV2ReservesOverride, morphoOraclesOverride, morphoTypeOraclesOverride, morphoTypeMarketsOverride, morphoTypeVaultsOverride, aaveOraclesConfigOverride, compoundV2OraclesConfigOverride, aaveWethGatewayOverride, morphoBundler3Override, listaNativeProviderOverride, midnightConfigOverride, midnightMarketsOverride, termConfigOverride, termMarketsOverride, exactlyConfigOverride, exactlyMarketsOverride, liquityConfigOverride, liquityMarketsOverride, riverConfigOverride, riverMarketsOverride, compoundV3BulkerOverride, eulerConfigsOverride, eulerVaultsOverride, dolomiteConfigsOverride, dolomiteEmodeOverride, aaveV4SpokesOverride, aaveV4OraclesOverride, aaveV4PeripheralsOverride, siloMarketsOverride, siloPeripheralsOverride, siloMarketsV3Override, siloPeripheralsV3Override, fluidResolversOverride, fluidVaultsOverride, gearboxResolversOverride, }: {
866
+ export declare function initializeLenderData({ aaveTokensOverride, aavePoolsOverride, aaveOraclesOverride, compoundV2OraclesOverride, compoundV3OraclesDataOverride, compoundV3PoolsOverride, compoundV3BaseDataOverride, morphoPoolsOverride, compoundV2TokensOverride, compoundV2TokenArrayOverride, compoundV2PoolsOverride, initConfigOverride, aaveReservesOverride, compoundV3ReservesOverride, compoundV2ReservesOverride, morphoOraclesOverride, morphoTypeOraclesOverride, morphoTypeMarketsOverride, morphoTypeVaultsOverride, aaveOraclesConfigOverride, compoundV2OraclesConfigOverride, aaveWethGatewayOverride, morphoBundler3Override, listaNativeProviderOverride, midnightConfigOverride, midnightMarketsOverride, termConfigOverride, termMarketsOverride, exactlyConfigOverride, exactlyMarketsOverride, tellerConfigOverride, tellerPoolsOverride, liquityConfigOverride, liquityMarketsOverride, riverConfigOverride, riverMarketsOverride, compoundV3BulkerOverride, eulerConfigsOverride, eulerVaultsOverride, dolomiteConfigsOverride, dolomiteEmodeOverride, aaveV4SpokesOverride, aaveV4OraclesOverride, aaveV4PeripheralsOverride, siloMarketsOverride, siloPeripheralsOverride, siloMarketsV3Override, siloPeripheralsV3Override, fluidResolversOverride, fluidVaultsOverride, gearboxResolversOverride, }: {
803
867
  aaveTokensOverride?: AaveTokensType;
804
868
  aavePoolsOverride?: AavePoolsType;
805
869
  aaveOraclesOverride?: OracleMap;
@@ -830,6 +894,8 @@ export declare function initializeLenderData({ aaveTokensOverride, aavePoolsOver
830
894
  termMarketsOverride?: TermMarketsType;
831
895
  exactlyConfigOverride?: ExactlyConfigType;
832
896
  exactlyMarketsOverride?: ExactlyMarketsType;
897
+ tellerConfigOverride?: TellerConfigType;
898
+ tellerPoolsOverride?: TellerPoolsType;
833
899
  liquityConfigOverride?: LiquityConfigType;
834
900
  liquityMarketsOverride?: LiquityMarketsType;
835
901
  riverConfigOverride?: RiverConfigType;
@@ -906,6 +972,14 @@ export declare const exactlyMarketsByChain: (chainId: string | number) => Exactl
906
972
  export declare const exactlyMarketByAddress: (chainId: string | number, market: string) => ExactlyMarketConfig | undefined;
907
973
  /** Look up one Exactly market config by its underlying asset (case-insensitive). */
908
974
  export declare const exactlyMarketByAsset: (chainId: string | number, asset: string) => ExactlyMarketConfig | undefined;
975
+ export declare const tellerConfig: () => TellerConfigType;
976
+ export declare const tellerPools: () => TellerPoolsType;
977
+ /** Per-chain evergreen Teller addresses (undefined if none/unloaded). */
978
+ export declare const tellerConfigByChain: (chainId: string | number) => TellerConfigChain | undefined;
979
+ /** All Teller pool configs on a chain (empty array if none/unloaded). */
980
+ export declare const tellerPoolsByChain: (chainId: string | number) => TellerPoolConfig[];
981
+ /** Look up one Teller pool config by its LenderCommitmentGroup address (case-insensitive). */
982
+ export declare const tellerPoolByAddress: (chainId: string | number, pool: string) => TellerPoolConfig | undefined;
909
983
  export declare const liquityConfig: () => LiquityConfigType;
910
984
  /** Shared config for one Liquity-family deployment on a chain (undefined if unloaded). */
911
985
  export declare const liquityConfigFor: (lender: string, chainId: string | number) => LiquityConfigChain | undefined;
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "version": "0.0.32",
7
+ "version": "0.0.34",
8
8
  "description": "Hold and initialize lending protocol data across a stack",
9
9
  "files": [
10
10
  "dist"