diff --git a/scripts/configs/networks/arbitrum.ts b/scripts/configs/networks/arbitrum.ts index a6958976..9a0177d6 100644 --- a/scripts/configs/networks/arbitrum.ts +++ b/scripts/configs/networks/arbitrum.ts @@ -1,7 +1,11 @@ +import {Hex} from 'viem'; import {ChainId} from '@bgd-labs/js-utils'; import {NetworkAddresses} from '../types'; -export const arbitrumAddresses: NetworkAddresses = { +export const arbitrumAddresses: NetworkAddresses<{ + wstETH_stETH_AGGREGATOR: Hex; + rETH_ETH_AGGREGATOR: Hex; +}> = { name: 'Arbitrum', chainId: ChainId.arbitrum_one, addresses: { @@ -10,10 +14,11 @@ export const arbitrumAddresses: NetworkAddresses = { PROXY_ADMIN: '0xD3cF979e676265e4f6379749DECe4708B9A22476', CREATE_3_FACTORY: '0x3b56998Ec06477704622ca8e2eA1b4db134cec32', PROTOCOL_GUARDIAN: '0xbbd9f90699c1fa0d7a65870d241dd1f1217c96eb', + wstETH_stETH_AGGREGATOR: '0xB1552C5e96B312d0Bf8b554186F846C40614a540', + rETH_ETH_AGGREGATOR: '0xF3272CAfe65b190e76caAF483db13424a3e23dD2', }, }; - export const arbitrumSepoliaAddresses: NetworkAddresses = { name: 'ArbitrumSepolia', chainId: ChainId.arbitrum_sepolia, diff --git a/scripts/configs/networks/base.ts b/scripts/configs/networks/base.ts index 9d2a96ac..22845487 100644 --- a/scripts/configs/networks/base.ts +++ b/scripts/configs/networks/base.ts @@ -1,7 +1,11 @@ +import {Hex} from 'viem'; import {ChainId} from '@bgd-labs/js-utils'; import {NetworkAddresses} from '../types'; -export const baseAddresses: NetworkAddresses = { +export const baseAddresses: NetworkAddresses<{ + wstETH_stETH_AGGREGATOR: Hex; + cbETH_ETH_AGGREGATOR: Hex; +}> = { name: 'Base', chainId: ChainId.base, addresses: { @@ -10,5 +14,7 @@ export const baseAddresses: NetworkAddresses = { PROXY_ADMIN: '0xc85b1E333aecc99340b2320493Fe2d22b8734795', CREATE_3_FACTORY: '0x3b56998Ec06477704622ca8e2eA1b4db134cec32', PROTOCOL_GUARDIAN: '0x9e10C0A1Eb8FF6a0AaA53a62C7a338f35D7D9a2A', + wstETH_stETH_AGGREGATOR: '0xB88BAc61a4Ca37C43a3725912B1f472c9A5bc061', + cbETH_ETH_AGGREGATOR: '0x806b4Ac04501c29769051e42783cF04dCE41440b', }, }; diff --git a/scripts/configs/networks/ethereum.ts b/scripts/configs/networks/ethereum.ts index e5fda8f0..1efea1ca 100644 --- a/scripts/configs/networks/ethereum.ts +++ b/scripts/configs/networks/ethereum.ts @@ -11,6 +11,7 @@ export const ethereumAddresses: NetworkAddresses<{ GSM_REGISTRY: Hex; GSM_USDC: Hex; GSM_USDT: Hex; + sDAI_POT: Hex; }> = { name: 'Ethereum', chainId: ChainId.mainnet, @@ -35,6 +36,7 @@ export const ethereumAddresses: NetworkAddresses<{ GSM_REGISTRY: '0x0d8eFfC11dF3F229AA1EA0509BC9DFa632A13578', GSM_USDC: '0x0d8eFfC11dF3F229AA1EA0509BC9DFa632A13578', GSM_USDT: '0x686F8D21520f4ecEc7ba577be08354F4d1EB8262', + sDAI_POT: '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7', }, }; diff --git a/scripts/configs/networks/gnosis.ts b/scripts/configs/networks/gnosis.ts index 34c61994..deb5b5ed 100644 --- a/scripts/configs/networks/gnosis.ts +++ b/scripts/configs/networks/gnosis.ts @@ -1,7 +1,8 @@ +import {Hex} from 'viem'; import {ChainId} from '@bgd-labs/js-utils'; import {NetworkAddresses} from '../types'; -export const gnosisAddresses: NetworkAddresses = { +export const gnosisAddresses: NetworkAddresses<{wstETH_stETH_AGGREGATOR: Hex}> = { name: 'Gnosis', chainId: ChainId.gnosis, addresses: { @@ -9,5 +10,6 @@ export const gnosisAddresses: NetworkAddresses = { PROXY_ADMIN: '0xe892E40C92c2E4D281Be59b2E6300F271d824E75', CREATE_3_FACTORY: '0x2cC41488f4494c5e11cB6cbA82199442B9f495B6', PROTOCOL_GUARDIAN: '0xF163b8698821cefbD33Cf449764d69Ea445cE23D', + wstETH_stETH_AGGREGATOR: '0x0064AC007fF665CF8D0D3Af5E0AD1c26a3f853eA', }, }; diff --git a/scripts/configs/networks/optimism.ts b/scripts/configs/networks/optimism.ts index f0c1fe85..dbcbeaf3 100644 --- a/scripts/configs/networks/optimism.ts +++ b/scripts/configs/networks/optimism.ts @@ -1,7 +1,11 @@ +import {Hex} from 'viem'; import {ChainId} from '@bgd-labs/js-utils'; import {NetworkAddresses} from '../types'; -export const optimismAddresses: NetworkAddresses = { +export const optimismAddresses: NetworkAddresses<{ + wstETH_stETH_AGGREGATOR: Hex; + rETH_ETH_AGGREGATOR: Hex; +}> = { name: 'Optimism', chainId: ChainId.optimism, addresses: { @@ -11,5 +15,7 @@ export const optimismAddresses: NetworkAddresses = { CREATE_3_FACTORY: '0x3b56998Ec06477704622ca8e2eA1b4db134cec32', PROTOCOL_GUARDIAN: '0xe50c8c619d05ff98b22adf991f17602c774f785c', AAVE_MERKLE_DISTRIBUTOR: '0x1685D81212580DD4cDA287616C2f6F4794927e18', + wstETH_stETH_AGGREGATOR: '0xe59EBa0D492cA53C6f46015EEa00517F2707dc77', + rETH_ETH_AGGREGATOR: '0x22F3727be377781d1579B7C9222382b21c9d1a8f', }, }; diff --git a/scripts/configs/networks/polygon.ts b/scripts/configs/networks/polygon.ts index 4fe6fe1f..42ead513 100644 --- a/scripts/configs/networks/polygon.ts +++ b/scripts/configs/networks/polygon.ts @@ -2,7 +2,12 @@ import {Hex} from 'viem'; import {ChainId} from '@bgd-labs/js-utils'; import {NetworkAddresses} from '../types'; -export const polygonAddresses: NetworkAddresses<{AAVE_POL_ETH_BRIDGE: Hex}> = { +export const polygonAddresses: NetworkAddresses<{ + AAVE_POL_ETH_BRIDGE: Hex; + wstETH_stETH_AGGREGATOR: Hex; + MaticX_RATE_PROVIDER: Hex; + stMATIC_RATE_PROVIDER: Hex; +}> = { name: 'Polygon', chainId: ChainId.polygon, addresses: { @@ -13,6 +18,9 @@ export const polygonAddresses: NetworkAddresses<{AAVE_POL_ETH_BRIDGE: Hex}> = { CREATE_3_FACTORY: '0x3b56998Ec06477704622ca8e2eA1b4db134cec32', PROTOCOL_GUARDIAN: '0x1450F2898D6bA2710C98BE9CAF3041330eD5ae58', AAVE_MERKLE_DISTRIBUTOR: '0x7A9ff54A6eE4a21223036890bB8c4ea2D62c686b', + wstETH_stETH_AGGREGATOR: '0x3Ea1eC855fBda8bA0396975eC260AD2e9B2Bc01c', + MaticX_RATE_PROVIDER: '0xeE652bbF72689AA59F0B8F981c9c90e2A8Af8d8f', + stMATIC_RATE_PROVIDER: '0xdEd6C522d803E35f65318a9a4d7333a22d582199', }, }; diff --git a/src/MiscArbitrum.sol b/src/MiscArbitrum.sol index 3e9d6108..770499ac 100644 --- a/src/MiscArbitrum.sol +++ b/src/MiscArbitrum.sol @@ -17,4 +17,10 @@ library MiscArbitrum { // https://arbiscan.io/address/0xbbd9f90699c1FA0D7A65870D241DD1f1217c96Eb address internal constant PROTOCOL_GUARDIAN = 0xbbd9f90699c1FA0D7A65870D241DD1f1217c96Eb; + + // https://arbiscan.io/address/0xB1552C5e96B312d0Bf8b554186F846C40614a540 + address internal constant wstETH_stETH_AGGREGATOR = 0xB1552C5e96B312d0Bf8b554186F846C40614a540; + + // https://arbiscan.io/address/0xF3272CAfe65b190e76caAF483db13424a3e23dD2 + address internal constant rETH_ETH_AGGREGATOR = 0xF3272CAfe65b190e76caAF483db13424a3e23dD2; } diff --git a/src/MiscBase.sol b/src/MiscBase.sol index 9c19520c..63e84b77 100644 --- a/src/MiscBase.sol +++ b/src/MiscBase.sol @@ -17,4 +17,10 @@ library MiscBase { // https://basescan.org/address/0x9e10C0A1Eb8FF6a0AaA53a62C7a338f35D7D9a2A address internal constant PROTOCOL_GUARDIAN = 0x9e10C0A1Eb8FF6a0AaA53a62C7a338f35D7D9a2A; + + // https://basescan.org/address/0xB88BAc61a4Ca37C43a3725912B1f472c9A5bc061 + address internal constant wstETH_stETH_AGGREGATOR = 0xB88BAc61a4Ca37C43a3725912B1f472c9A5bc061; + + // https://basescan.org/address/0x806b4Ac04501c29769051e42783cF04dCE41440b + address internal constant cbETH_ETH_AGGREGATOR = 0x806b4Ac04501c29769051e42783cF04dCE41440b; } diff --git a/src/MiscEthereum.sol b/src/MiscEthereum.sol index 36a12177..4b7d7f3e 100644 --- a/src/MiscEthereum.sol +++ b/src/MiscEthereum.sol @@ -55,4 +55,7 @@ library MiscEthereum { // https://etherscan.io/address/0x686F8D21520f4ecEc7ba577be08354F4d1EB8262 address internal constant GSM_USDT = 0x686F8D21520f4ecEc7ba577be08354F4d1EB8262; + + // https://etherscan.io/address/0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7 + address internal constant sDAI_POT = 0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7; } diff --git a/src/MiscGnosis.sol b/src/MiscGnosis.sol index 9a23585b..ae5089ce 100644 --- a/src/MiscGnosis.sol +++ b/src/MiscGnosis.sol @@ -14,4 +14,7 @@ library MiscGnosis { // https://gnosisscan.io/address/0xF163b8698821cefbD33Cf449764d69Ea445cE23D address internal constant PROTOCOL_GUARDIAN = 0xF163b8698821cefbD33Cf449764d69Ea445cE23D; + + // https://gnosisscan.io/address/0x0064AC007fF665CF8D0D3Af5E0AD1c26a3f853eA + address internal constant wstETH_stETH_AGGREGATOR = 0x0064AC007fF665CF8D0D3Af5E0AD1c26a3f853eA; } diff --git a/src/MiscOptimism.sol b/src/MiscOptimism.sol index dda806ba..5a4cfc32 100644 --- a/src/MiscOptimism.sol +++ b/src/MiscOptimism.sol @@ -20,4 +20,10 @@ library MiscOptimism { // https://optimistic.etherscan.io/address/0x1685D81212580DD4cDA287616C2f6F4794927e18 address internal constant AAVE_MERKLE_DISTRIBUTOR = 0x1685D81212580DD4cDA287616C2f6F4794927e18; + + // https://optimistic.etherscan.io/address/0xe59EBa0D492cA53C6f46015EEa00517F2707dc77 + address internal constant wstETH_stETH_AGGREGATOR = 0xe59EBa0D492cA53C6f46015EEa00517F2707dc77; + + // https://optimistic.etherscan.io/address/0x22F3727be377781d1579B7C9222382b21c9d1a8f + address internal constant rETH_ETH_AGGREGATOR = 0x22F3727be377781d1579B7C9222382b21c9d1a8f; } diff --git a/src/MiscPolygon.sol b/src/MiscPolygon.sol index 8bff9f0c..db7bc0e6 100644 --- a/src/MiscPolygon.sol +++ b/src/MiscPolygon.sol @@ -23,4 +23,13 @@ library MiscPolygon { // https://polygonscan.com/address/0x7A9ff54A6eE4a21223036890bB8c4ea2D62c686b address internal constant AAVE_MERKLE_DISTRIBUTOR = 0x7A9ff54A6eE4a21223036890bB8c4ea2D62c686b; + + // https://polygonscan.com/address/0x3Ea1eC855fBda8bA0396975eC260AD2e9B2Bc01c + address internal constant wstETH_stETH_AGGREGATOR = 0x3Ea1eC855fBda8bA0396975eC260AD2e9B2Bc01c; + + // https://polygonscan.com/address/0xeE652bbF72689AA59F0B8F981c9c90e2A8Af8d8f + address internal constant MaticX_RATE_PROVIDER = 0xeE652bbF72689AA59F0B8F981c9c90e2A8Af8d8f; + + // https://polygonscan.com/address/0xdEd6C522d803E35f65318a9a4d7333a22d582199 + address internal constant stMATIC_RATE_PROVIDER = 0xdEd6C522d803E35f65318a9a4d7333a22d582199; } diff --git a/src/ts/MiscArbitrum.ts b/src/ts/MiscArbitrum.ts index 2a67e914..d9276913 100644 --- a/src/ts/MiscArbitrum.ts +++ b/src/ts/MiscArbitrum.ts @@ -14,4 +14,10 @@ export const CREATE_3_FACTORY = '0x3b56998Ec06477704622ca8e2eA1b4db134cec32'; // https://arbiscan.io/address/0xbbd9f90699c1FA0D7A65870D241DD1f1217c96Eb export const PROTOCOL_GUARDIAN = '0xbbd9f90699c1FA0D7A65870D241DD1f1217c96Eb'; +// https://arbiscan.io/address/0xB1552C5e96B312d0Bf8b554186F846C40614a540 +export const wstETH_stETH_AGGREGATOR = '0xB1552C5e96B312d0Bf8b554186F846C40614a540'; + +// https://arbiscan.io/address/0xF3272CAfe65b190e76caAF483db13424a3e23dD2 +export const rETH_ETH_AGGREGATOR = '0xF3272CAfe65b190e76caAF483db13424a3e23dD2'; + export const CHAIN_ID = 42161; diff --git a/src/ts/MiscBase.ts b/src/ts/MiscBase.ts index 8bf438e0..d770bcdb 100644 --- a/src/ts/MiscBase.ts +++ b/src/ts/MiscBase.ts @@ -14,4 +14,10 @@ export const CREATE_3_FACTORY = '0x3b56998Ec06477704622ca8e2eA1b4db134cec32'; // https://basescan.org/address/0x9e10C0A1Eb8FF6a0AaA53a62C7a338f35D7D9a2A export const PROTOCOL_GUARDIAN = '0x9e10C0A1Eb8FF6a0AaA53a62C7a338f35D7D9a2A'; +// https://basescan.org/address/0xB88BAc61a4Ca37C43a3725912B1f472c9A5bc061 +export const wstETH_stETH_AGGREGATOR = '0xB88BAc61a4Ca37C43a3725912B1f472c9A5bc061'; + +// https://basescan.org/address/0x806b4Ac04501c29769051e42783cF04dCE41440b +export const cbETH_ETH_AGGREGATOR = '0x806b4Ac04501c29769051e42783cF04dCE41440b'; + export const CHAIN_ID = 8453; diff --git a/src/ts/MiscEthereum.ts b/src/ts/MiscEthereum.ts index 89ad0066..50fb5638 100644 --- a/src/ts/MiscEthereum.ts +++ b/src/ts/MiscEthereum.ts @@ -47,4 +47,7 @@ export const GSM_USDC = '0x0d8eFfC11dF3F229AA1EA0509BC9DFa632A13578'; // https://etherscan.io/address/0x686F8D21520f4ecEc7ba577be08354F4d1EB8262 export const GSM_USDT = '0x686F8D21520f4ecEc7ba577be08354F4d1EB8262'; +// https://etherscan.io/address/0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7 +export const sDAI_POT = '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7'; + export const CHAIN_ID = 1; diff --git a/src/ts/MiscGnosis.ts b/src/ts/MiscGnosis.ts index 7ba74ac0..a440476a 100644 --- a/src/ts/MiscGnosis.ts +++ b/src/ts/MiscGnosis.ts @@ -11,4 +11,7 @@ export const CREATE_3_FACTORY = '0x2cC41488f4494c5e11cB6cbA82199442B9f495B6'; // https://gnosisscan.io/address/0xF163b8698821cefbD33Cf449764d69Ea445cE23D export const PROTOCOL_GUARDIAN = '0xF163b8698821cefbD33Cf449764d69Ea445cE23D'; +// https://gnosisscan.io/address/0x0064AC007fF665CF8D0D3Af5E0AD1c26a3f853eA +export const wstETH_stETH_AGGREGATOR = '0x0064AC007fF665CF8D0D3Af5E0AD1c26a3f853eA'; + export const CHAIN_ID = 100; diff --git a/src/ts/MiscOptimism.ts b/src/ts/MiscOptimism.ts index 7c55d410..f5047cc9 100644 --- a/src/ts/MiscOptimism.ts +++ b/src/ts/MiscOptimism.ts @@ -17,4 +17,10 @@ export const PROTOCOL_GUARDIAN = '0xE50c8C619d05ff98b22Adf991F17602C774F785c'; // https://optimistic.etherscan.io/address/0x1685D81212580DD4cDA287616C2f6F4794927e18 export const AAVE_MERKLE_DISTRIBUTOR = '0x1685D81212580DD4cDA287616C2f6F4794927e18'; +// https://optimistic.etherscan.io/address/0xe59EBa0D492cA53C6f46015EEa00517F2707dc77 +export const wstETH_stETH_AGGREGATOR = '0xe59EBa0D492cA53C6f46015EEa00517F2707dc77'; + +// https://optimistic.etherscan.io/address/0x22F3727be377781d1579B7C9222382b21c9d1a8f +export const rETH_ETH_AGGREGATOR = '0x22F3727be377781d1579B7C9222382b21c9d1a8f'; + export const CHAIN_ID = 10; diff --git a/src/ts/MiscPolygon.ts b/src/ts/MiscPolygon.ts index 012b1da1..667565ec 100644 --- a/src/ts/MiscPolygon.ts +++ b/src/ts/MiscPolygon.ts @@ -20,4 +20,13 @@ export const PROTOCOL_GUARDIAN = '0x1450F2898D6bA2710C98BE9CAF3041330eD5ae58'; // https://polygonscan.com/address/0x7A9ff54A6eE4a21223036890bB8c4ea2D62c686b export const AAVE_MERKLE_DISTRIBUTOR = '0x7A9ff54A6eE4a21223036890bB8c4ea2D62c686b'; +// https://polygonscan.com/address/0x3Ea1eC855fBda8bA0396975eC260AD2e9B2Bc01c +export const wstETH_stETH_AGGREGATOR = '0x3Ea1eC855fBda8bA0396975eC260AD2e9B2Bc01c'; + +// https://polygonscan.com/address/0xeE652bbF72689AA59F0B8F981c9c90e2A8Af8d8f +export const MaticX_RATE_PROVIDER = '0xeE652bbF72689AA59F0B8F981c9c90e2A8Af8d8f'; + +// https://polygonscan.com/address/0xdEd6C522d803E35f65318a9a4d7333a22d582199 +export const stMATIC_RATE_PROVIDER = '0xdEd6C522d803E35f65318a9a4d7333a22d582199'; + export const CHAIN_ID = 137;