@across-protocol/sdk 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +661 -0
- package/README.md +116 -0
- package/dist/cjs/apiClient/abstractClient.d.ts +13 -0
- package/dist/cjs/apiClient/abstractClient.js +17 -0
- package/dist/cjs/apiClient/abstractClient.js.map +1 -0
- package/dist/cjs/apiClient/index.d.ts +2 -0
- package/dist/cjs/apiClient/index.js +11 -0
- package/dist/cjs/apiClient/index.js.map +1 -0
- package/dist/cjs/apiClient/mockedClient.d.ts +11 -0
- package/dist/cjs/apiClient/mockedClient.js +60 -0
- package/dist/cjs/apiClient/mockedClient.js.map +1 -0
- package/dist/cjs/apiClient/productionClient.d.ts +10 -0
- package/dist/cjs/apiClient/productionClient.js +110 -0
- package/dist/cjs/apiClient/productionClient.js.map +1 -0
- package/dist/cjs/apiClient/types.d.ts +44 -0
- package/dist/cjs/apiClient/types.js +3 -0
- package/dist/cjs/apiClient/types.js.map +1 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.d.ts +20 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.js +218 -0
- package/dist/cjs/caching/Arweave/ArweaveClient.js.map +1 -0
- package/dist/cjs/caching/Arweave/index.d.ts +1 -0
- package/dist/cjs/caching/Arweave/index.js +5 -0
- package/dist/cjs/caching/Arweave/index.js.map +1 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.d.ts +11 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js +67 -0
- package/dist/cjs/caching/IPFS/PinataIPFSClient.js.map +1 -0
- package/dist/cjs/caching/IPFS/index.d.ts +1 -0
- package/dist/cjs/caching/IPFS/index.js +5 -0
- package/dist/cjs/caching/IPFS/index.js.map +1 -0
- package/dist/cjs/caching/index.d.ts +2 -0
- package/dist/cjs/caching/index.js +6 -0
- package/dist/cjs/caching/index.js.map +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +66 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +377 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.d.ts +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.js +5 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/index.js.map +1 -0
- package/dist/cjs/clients/BaseAbstractClient.d.ts +22 -0
- package/dist/cjs/clients/BaseAbstractClient.js +76 -0
- package/dist/cjs/clients/BaseAbstractClient.js.map +1 -0
- package/dist/cjs/clients/HubPoolClient.d.ts +111 -0
- package/dist/cjs/clients/HubPoolClient.js +758 -0
- package/dist/cjs/clients/HubPoolClient.js.map +1 -0
- package/dist/cjs/clients/SpokePoolClient.d.ts +117 -0
- package/dist/cjs/clients/SpokePoolClient.js +553 -0
- package/dist/cjs/clients/SpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/index.d.ts +4 -0
- package/dist/cjs/clients/index.js +14 -0
- package/dist/cjs/clients/index.js.map +1 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +20 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js +121 -0
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -0
- package/dist/cjs/clients/mocks/MockEvents.d.ts +27 -0
- package/dist/cjs/clients/mocks/MockEvents.js +117 -0
- package/dist/cjs/clients/mocks/MockEvents.js.map +1 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +35 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.js +222 -0
- package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +38 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +319 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/mocks/index.d.ts +3 -0
- package/dist/cjs/clients/mocks/index.js +7 -0
- package/dist/cjs/clients/mocks/index.js.map +1 -0
- package/dist/cjs/coingecko/Coingecko.d.ts +40 -0
- package/dist/cjs/coingecko/Coingecko.js +277 -0
- package/dist/cjs/coingecko/Coingecko.js.map +1 -0
- package/dist/cjs/coingecko/index.d.ts +1 -0
- package/dist/cjs/coingecko/index.js +5 -0
- package/dist/cjs/coingecko/index.js.map +1 -0
- package/dist/cjs/constants.d.ts +18 -0
- package/dist/cjs/constants.js +27 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/contracts/acrossConfigStore.d.ts +57 -0
- package/dist/cjs/contracts/acrossConfigStore.js +65 -0
- package/dist/cjs/contracts/acrossConfigStore.js.map +1 -0
- package/dist/cjs/contracts/hubPool.d.ts +17 -0
- package/dist/cjs/contracts/hubPool.js +61 -0
- package/dist/cjs/contracts/hubPool.js.map +1 -0
- package/dist/cjs/contracts/index.d.ts +2 -0
- package/dist/cjs/contracts/index.js +7 -0
- package/dist/cjs/contracts/index.js.map +1 -0
- package/dist/cjs/contracts/utils.d.ts +15 -0
- package/dist/cjs/contracts/utils.js +40 -0
- package/dist/cjs/contracts/utils.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +25 -0
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js +46 -0
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/index.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/index.js +7 -0
- package/dist/cjs/gasPriceOracle/adapters/index.js.map +1 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.js +77 -0
- package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -0
- package/dist/cjs/gasPriceOracle/index.d.ts +2 -0
- package/dist/cjs/gasPriceOracle/index.js +6 -0
- package/dist/cjs/gasPriceOracle/index.js.map +1 -0
- package/dist/cjs/gasPriceOracle/oracle.d.ts +3 -0
- package/dist/cjs/gasPriceOracle/oracle.js +45 -0
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -0
- package/dist/cjs/gasPriceOracle/types.d.ts +8 -0
- package/dist/cjs/gasPriceOracle/types.js +3 -0
- package/dist/cjs/gasPriceOracle/types.js.map +1 -0
- package/dist/cjs/gasPriceOracle/util.d.ts +2 -0
- package/dist/cjs/gasPriceOracle/util.js +8 -0
- package/dist/cjs/gasPriceOracle/util.js.map +1 -0
- package/dist/cjs/index.d.ts +15 -0
- package/dist/cjs/index.js +20 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/interfaces/Bridge.d.ts +9 -0
- package/dist/cjs/interfaces/Bridge.js +3 -0
- package/dist/cjs/interfaces/Bridge.js.map +1 -0
- package/dist/cjs/interfaces/CachingMechanism.d.ts +5 -0
- package/dist/cjs/interfaces/CachingMechanism.js +3 -0
- package/dist/cjs/interfaces/CachingMechanism.js.map +1 -0
- package/dist/cjs/interfaces/Common.d.ts +10 -0
- package/dist/cjs/interfaces/Common.js +3 -0
- package/dist/cjs/interfaces/Common.js.map +1 -0
- package/dist/cjs/interfaces/ConfigStore.d.ts +81 -0
- package/dist/cjs/interfaces/ConfigStore.js +3 -0
- package/dist/cjs/interfaces/ConfigStore.js.map +1 -0
- package/dist/cjs/interfaces/Error.d.ts +5 -0
- package/dist/cjs/interfaces/Error.js +3 -0
- package/dist/cjs/interfaces/Error.js.map +1 -0
- package/dist/cjs/interfaces/HubPool.d.ts +98 -0
- package/dist/cjs/interfaces/HubPool.js +3 -0
- package/dist/cjs/interfaces/HubPool.js.map +1 -0
- package/dist/cjs/interfaces/SpokePool.d.ts +103 -0
- package/dist/cjs/interfaces/SpokePool.js +16 -0
- package/dist/cjs/interfaces/SpokePool.js.map +1 -0
- package/dist/cjs/interfaces/TypedData.d.ts +19 -0
- package/dist/cjs/interfaces/TypedData.js +3 -0
- package/dist/cjs/interfaces/TypedData.js.map +1 -0
- package/dist/cjs/interfaces/index.d.ts +8 -0
- package/dist/cjs/interfaces/index.js +12 -0
- package/dist/cjs/interfaces/index.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/index.d.ts +1 -0
- package/dist/cjs/lpFeeCalculator/index.js +5 -0
- package/dist/cjs/lpFeeCalculator/index.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.d.ts +19 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js +79 -0
- package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js.map +1 -0
- package/dist/cjs/lpFeeCalculator/rateModel.d.ts +28 -0
- package/dist/cjs/lpFeeCalculator/rateModel.js +103 -0
- package/dist/cjs/lpFeeCalculator/rateModel.js.map +1 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.d.ts +8 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.js +25 -0
- package/dist/cjs/merkleDistributor/MerkleDistributor.js.map +1 -0
- package/dist/cjs/merkleDistributor/index.d.ts +2 -0
- package/dist/cjs/merkleDistributor/index.js +6 -0
- package/dist/cjs/merkleDistributor/index.js.map +1 -0
- package/dist/cjs/merkleDistributor/model/Distribution.d.ts +17 -0
- package/dist/cjs/merkleDistributor/model/Distribution.js +3 -0
- package/dist/cjs/merkleDistributor/model/Distribution.js.map +1 -0
- package/dist/cjs/merkleDistributor/model/index.d.ts +1 -0
- package/dist/cjs/merkleDistributor/model/index.js +5 -0
- package/dist/cjs/merkleDistributor/model/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/pool/TransactionManager.d.ts +12 -0
- package/dist/cjs/pool/TransactionManager.js +121 -0
- package/dist/cjs/pool/TransactionManager.js.map +1 -0
- package/dist/cjs/pool/index.d.ts +1 -0
- package/dist/cjs/pool/index.js +5 -0
- package/dist/cjs/pool/index.js.map +1 -0
- package/dist/cjs/pool/poolClient.d.ts +232 -0
- package/dist/cjs/pool/poolClient.js +869 -0
- package/dist/cjs/pool/poolClient.js.map +1 -0
- package/dist/cjs/priceClient/adapters/acrossApi.d.ts +13 -0
- package/dist/cjs/priceClient/adapters/acrossApi.js +48 -0
- package/dist/cjs/priceClient/adapters/acrossApi.js.map +1 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.d.ts +17 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.js +81 -0
- package/dist/cjs/priceClient/adapters/baseAdapter.js.map +1 -0
- package/dist/cjs/priceClient/adapters/coingecko.d.ts +14 -0
- package/dist/cjs/priceClient/adapters/coingecko.js +75 -0
- package/dist/cjs/priceClient/adapters/coingecko.js.map +1 -0
- package/dist/cjs/priceClient/adapters/defiLlama.d.ts +17 -0
- package/dist/cjs/priceClient/adapters/defiLlama.js +95 -0
- package/dist/cjs/priceClient/adapters/defiLlama.js.map +1 -0
- package/dist/cjs/priceClient/adapters/index.d.ts +3 -0
- package/dist/cjs/priceClient/adapters/index.js +8 -0
- package/dist/cjs/priceClient/adapters/index.js.map +1 -0
- package/dist/cjs/priceClient/index.d.ts +2 -0
- package/dist/cjs/priceClient/index.js +7 -0
- package/dist/cjs/priceClient/index.js.map +1 -0
- package/dist/cjs/priceClient/priceClient.d.ts +32 -0
- package/dist/cjs/priceClient/priceClient.js +197 -0
- package/dist/cjs/priceClient/priceClient.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +29 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +62 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +151 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +35 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +3 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js +7 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.d.ts +152 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js +43 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/index.d.ts +2 -0
- package/dist/cjs/relayFeeCalculator/index.js +6 -0
- package/dist/cjs/relayFeeCalculator/index.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +231 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +224 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -0
- package/dist/cjs/typechain.d.ts +17 -0
- package/dist/cjs/typechain.js +20 -0
- package/dist/cjs/typechain.js.map +1 -0
- package/dist/cjs/typeguards/error.d.ts +3 -0
- package/dist/cjs/typeguards/error.js +11 -0
- package/dist/cjs/typeguards/error.js.map +1 -0
- package/dist/cjs/typeguards/index.d.ts +1 -0
- package/dist/cjs/typeguards/index.js +5 -0
- package/dist/cjs/typeguards/index.js.map +1 -0
- package/dist/cjs/utils/AddressUtils.d.ts +2 -0
- package/dist/cjs/utils/AddressUtils.js +24 -0
- package/dist/cjs/utils/AddressUtils.js.map +1 -0
- package/dist/cjs/utils/ArrayUtils.d.ts +12 -0
- package/dist/cjs/utils/ArrayUtils.js +125 -0
- package/dist/cjs/utils/ArrayUtils.js.map +1 -0
- package/dist/cjs/utils/BigNumberUtils.d.ts +8 -0
- package/dist/cjs/utils/BigNumberUtils.js +26 -0
- package/dist/cjs/utils/BigNumberUtils.js.map +1 -0
- package/dist/cjs/utils/BlockExplorerUtils.d.ts +3 -0
- package/dist/cjs/utils/BlockExplorerUtils.js +52 -0
- package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -0
- package/dist/cjs/utils/BlockUtils.d.ts +28 -0
- package/dist/cjs/utils/BlockUtils.js +251 -0
- package/dist/cjs/utils/BlockUtils.js.map +1 -0
- package/dist/cjs/utils/BundleUtils.d.ts +5 -0
- package/dist/cjs/utils/BundleUtils.js +62 -0
- package/dist/cjs/utils/BundleUtils.js.map +1 -0
- package/dist/cjs/utils/CachingUtils.d.ts +5 -0
- package/dist/cjs/utils/CachingUtils.js +59 -0
- package/dist/cjs/utils/CachingUtils.js.map +1 -0
- package/dist/cjs/utils/DeploymentUtils.d.ts +1 -0
- package/dist/cjs/utils/DeploymentUtils.js +8 -0
- package/dist/cjs/utils/DeploymentUtils.js.map +1 -0
- package/dist/cjs/utils/DepositUtils.d.ts +19 -0
- package/dist/cjs/utils/DepositUtils.js +107 -0
- package/dist/cjs/utils/DepositUtils.js.map +1 -0
- package/dist/cjs/utils/EventUtils.d.ts +18 -0
- package/dist/cjs/utils/EventUtils.js +169 -0
- package/dist/cjs/utils/EventUtils.js.map +1 -0
- package/dist/cjs/utils/FlowUtils.d.ts +7 -0
- package/dist/cjs/utils/FlowUtils.js +42 -0
- package/dist/cjs/utils/FlowUtils.js.map +1 -0
- package/dist/cjs/utils/FormattingUtils.d.ts +15 -0
- package/dist/cjs/utils/FormattingUtils.js +107 -0
- package/dist/cjs/utils/FormattingUtils.js.map +1 -0
- package/dist/cjs/utils/IPFSUtils.d.ts +4 -0
- package/dist/cjs/utils/IPFSUtils.js +48 -0
- package/dist/cjs/utils/IPFSUtils.js.map +1 -0
- package/dist/cjs/utils/JSONUtils.d.ts +4 -0
- package/dist/cjs/utils/JSONUtils.js +53 -0
- package/dist/cjs/utils/JSONUtils.js.map +1 -0
- package/dist/cjs/utils/LogUtils.d.ts +14 -0
- package/dist/cjs/utils/LogUtils.js +18 -0
- package/dist/cjs/utils/LogUtils.js.map +1 -0
- package/dist/cjs/utils/Multicall.d.ts +13 -0
- package/dist/cjs/utils/Multicall.js +73 -0
- package/dist/cjs/utils/Multicall.js.map +1 -0
- package/dist/cjs/utils/NetworkUtils.d.ts +10 -0
- package/dist/cjs/utils/NetworkUtils.js +70 -0
- package/dist/cjs/utils/NetworkUtils.js.map +1 -0
- package/dist/cjs/utils/NumberUtils.d.ts +2 -0
- package/dist/cjs/utils/NumberUtils.js +12 -0
- package/dist/cjs/utils/NumberUtils.js.map +1 -0
- package/dist/cjs/utils/ObjectUtils.d.ts +5 -0
- package/dist/cjs/utils/ObjectUtils.js +65 -0
- package/dist/cjs/utils/ObjectUtils.js.map +1 -0
- package/dist/cjs/utils/ReviverUtils.d.ts +3 -0
- package/dist/cjs/utils/ReviverUtils.js +23 -0
- package/dist/cjs/utils/ReviverUtils.js.map +1 -0
- package/dist/cjs/utils/SpokeUtils.d.ts +16 -0
- package/dist/cjs/utils/SpokeUtils.js +299 -0
- package/dist/cjs/utils/SpokeUtils.js.map +1 -0
- package/dist/cjs/utils/TimeUtils.d.ts +1 -0
- package/dist/cjs/utils/TimeUtils.js +8 -0
- package/dist/cjs/utils/TimeUtils.js.map +1 -0
- package/dist/cjs/utils/TokenUtils.d.ts +303 -0
- package/dist/cjs/utils/TokenUtils.js +74 -0
- package/dist/cjs/utils/TokenUtils.js.map +1 -0
- package/dist/cjs/utils/TypeGuards.d.ts +3 -0
- package/dist/cjs/utils/TypeGuards.js +16 -0
- package/dist/cjs/utils/TypeGuards.js.map +1 -0
- package/dist/cjs/utils/TypeUtils.d.ts +5 -0
- package/dist/cjs/utils/TypeUtils.js +3 -0
- package/dist/cjs/utils/TypeUtils.js.map +1 -0
- package/dist/cjs/utils/V3Utils.d.ts +4 -0
- package/dist/cjs/utils/V3Utils.js +15 -0
- package/dist/cjs/utils/V3Utils.js.map +1 -0
- package/dist/cjs/utils/ValidatorUtils.d.ts +2 -0
- package/dist/cjs/utils/ValidatorUtils.js +39 -0
- package/dist/cjs/utils/ValidatorUtils.js.map +1 -0
- package/dist/cjs/utils/abi/contracts/Multicall3.json +440 -0
- package/dist/cjs/utils/abi/index.d.ts +3 -0
- package/dist/cjs/utils/abi/index.js +31 -0
- package/dist/cjs/utils/abi/index.js.map +1 -0
- package/dist/cjs/utils/common.d.ts +79 -0
- package/dist/cjs/utils/common.js +220 -0
- package/dist/cjs/utils/common.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +29 -0
- package/dist/cjs/utils/index.js +33 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/esm/apiClient/abstractClient.d.ts +66 -0
- package/dist/esm/apiClient/abstractClient.js +31 -0
- package/dist/esm/apiClient/abstractClient.js.map +1 -0
- package/dist/esm/apiClient/index.d.ts +2 -0
- package/dist/esm/apiClient/index.js +3 -0
- package/dist/esm/apiClient/index.js.map +1 -0
- package/dist/esm/apiClient/mockedClient.d.ts +24 -0
- package/dist/esm/apiClient/mockedClient.js +69 -0
- package/dist/esm/apiClient/mockedClient.js.map +1 -0
- package/dist/esm/apiClient/productionClient.d.ts +16 -0
- package/dist/esm/apiClient/productionClient.js +114 -0
- package/dist/esm/apiClient/productionClient.js.map +1 -0
- package/dist/esm/apiClient/types.d.ts +44 -0
- package/dist/esm/apiClient/types.js +2 -0
- package/dist/esm/apiClient/types.js.map +1 -0
- package/dist/esm/caching/Arweave/ArweaveClient.d.ts +61 -0
- package/dist/esm/caching/Arweave/ArweaveClient.js +265 -0
- package/dist/esm/caching/Arweave/ArweaveClient.js.map +1 -0
- package/dist/esm/caching/Arweave/index.d.ts +1 -0
- package/dist/esm/caching/Arweave/index.js +2 -0
- package/dist/esm/caching/Arweave/index.js.map +1 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.d.ts +37 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.js +81 -0
- package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -0
- package/dist/esm/caching/IPFS/index.d.ts +1 -0
- package/dist/esm/caching/IPFS/index.js +2 -0
- package/dist/esm/caching/IPFS/index.js.map +1 -0
- package/dist/esm/caching/index.d.ts +2 -0
- package/dist/esm/caching/index.js +3 -0
- package/dist/esm/caching/index.js.map +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +108 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +467 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.d.ts +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.js +2 -0
- package/dist/esm/clients/AcrossConfigStoreClient/index.js.map +1 -0
- package/dist/esm/clients/BaseAbstractClient.d.ts +51 -0
- package/dist/esm/clients/BaseAbstractClient.js +101 -0
- package/dist/esm/clients/BaseAbstractClient.js.map +1 -0
- package/dist/esm/clients/HubPoolClient.d.ts +134 -0
- package/dist/esm/clients/HubPoolClient.js +862 -0
- package/dist/esm/clients/HubPoolClient.js.map +1 -0
- package/dist/esm/clients/SpokePoolClient.d.ts +318 -0
- package/dist/esm/clients/SpokePoolClient.js +780 -0
- package/dist/esm/clients/SpokePoolClient.js.map +1 -0
- package/dist/esm/clients/index.d.ts +4 -0
- package/dist/esm/clients/index.js +6 -0
- package/dist/esm/clients/index.js.map +1 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +20 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.js +122 -0
- package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -0
- package/dist/esm/clients/mocks/MockEvents.d.ts +34 -0
- package/dist/esm/clients/mocks/MockEvents.js +126 -0
- package/dist/esm/clients/mocks/MockEvents.js.map +1 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +35 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.js +223 -0
- package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +38 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +322 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -0
- package/dist/esm/clients/mocks/index.d.ts +3 -0
- package/dist/esm/clients/mocks/index.js +4 -0
- package/dist/esm/clients/mocks/index.js.map +1 -0
- package/dist/esm/coingecko/Coingecko.d.ts +40 -0
- package/dist/esm/coingecko/Coingecko.js +283 -0
- package/dist/esm/coingecko/Coingecko.js.map +1 -0
- package/dist/esm/coingecko/index.d.ts +1 -0
- package/dist/esm/coingecko/index.js +2 -0
- package/dist/esm/coingecko/index.js.map +1 -0
- package/dist/esm/constants.d.ts +29 -0
- package/dist/esm/constants.js +34 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/contracts/acrossConfigStore.d.ts +57 -0
- package/dist/esm/contracts/acrossConfigStore.js +62 -0
- package/dist/esm/contracts/acrossConfigStore.js.map +1 -0
- package/dist/esm/contracts/hubPool.d.ts +17 -0
- package/dist/esm/contracts/hubPool.js +55 -0
- package/dist/esm/contracts/hubPool.js.map +1 -0
- package/dist/esm/contracts/index.d.ts +2 -0
- package/dist/esm/contracts/index.js +5 -0
- package/dist/esm/contracts/index.js.map +1 -0
- package/dist/esm/contracts/utils.d.ts +23 -0
- package/dist/esm/contracts/utils.js +38 -0
- package/dist/esm/contracts/utils.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js +25 -0
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.js +41 -0
- package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/index.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/index.js +4 -0
- package/dist/esm/gasPriceOracle/adapters/index.js.map +1 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +3 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.js +78 -0
- package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -0
- package/dist/esm/gasPriceOracle/index.d.ts +2 -0
- package/dist/esm/gasPriceOracle/index.js +2 -0
- package/dist/esm/gasPriceOracle/index.js.map +1 -0
- package/dist/esm/gasPriceOracle/oracle.d.ts +10 -0
- package/dist/esm/gasPriceOracle/oracle.js +48 -0
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -0
- package/dist/esm/gasPriceOracle/types.d.ts +8 -0
- package/dist/esm/gasPriceOracle/types.js +2 -0
- package/dist/esm/gasPriceOracle/types.js.map +1 -0
- package/dist/esm/gasPriceOracle/util.d.ts +2 -0
- package/dist/esm/gasPriceOracle/util.js +4 -0
- package/dist/esm/gasPriceOracle/util.js.map +1 -0
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.js +31 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/interfaces/Bridge.d.ts +9 -0
- package/dist/esm/interfaces/Bridge.js +2 -0
- package/dist/esm/interfaces/Bridge.js.map +1 -0
- package/dist/esm/interfaces/CachingMechanism.d.ts +26 -0
- package/dist/esm/interfaces/CachingMechanism.js +2 -0
- package/dist/esm/interfaces/CachingMechanism.js.map +1 -0
- package/dist/esm/interfaces/Common.d.ts +10 -0
- package/dist/esm/interfaces/Common.js +2 -0
- package/dist/esm/interfaces/Common.js.map +1 -0
- package/dist/esm/interfaces/ConfigStore.d.ts +157 -0
- package/dist/esm/interfaces/ConfigStore.js +2 -0
- package/dist/esm/interfaces/ConfigStore.js.map +1 -0
- package/dist/esm/interfaces/Error.d.ts +5 -0
- package/dist/esm/interfaces/Error.js +2 -0
- package/dist/esm/interfaces/Error.js.map +1 -0
- package/dist/esm/interfaces/HubPool.d.ts +98 -0
- package/dist/esm/interfaces/HubPool.js +2 -0
- package/dist/esm/interfaces/HubPool.js.map +1 -0
- package/dist/esm/interfaces/SpokePool.d.ts +103 -0
- package/dist/esm/interfaces/SpokePool.js +13 -0
- package/dist/esm/interfaces/SpokePool.js.map +1 -0
- package/dist/esm/interfaces/TypedData.d.ts +19 -0
- package/dist/esm/interfaces/TypedData.js +2 -0
- package/dist/esm/interfaces/TypedData.js.map +1 -0
- package/dist/esm/interfaces/index.d.ts +8 -0
- package/dist/esm/interfaces/index.js +9 -0
- package/dist/esm/interfaces/index.js.map +1 -0
- package/dist/esm/lpFeeCalculator/index.d.ts +1 -0
- package/dist/esm/lpFeeCalculator/index.js +2 -0
- package/dist/esm/lpFeeCalculator/index.js.map +1 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.d.ts +66 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js +129 -0
- package/dist/esm/lpFeeCalculator/lpFeeCalculator.js.map +1 -0
- package/dist/esm/lpFeeCalculator/rateModel.d.ts +45 -0
- package/dist/esm/lpFeeCalculator/rateModel.js +138 -0
- package/dist/esm/lpFeeCalculator/rateModel.js.map +1 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.d.ts +20 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.js +34 -0
- package/dist/esm/merkleDistributor/MerkleDistributor.js.map +1 -0
- package/dist/esm/merkleDistributor/index.d.ts +2 -0
- package/dist/esm/merkleDistributor/index.js +3 -0
- package/dist/esm/merkleDistributor/index.js.map +1 -0
- package/dist/esm/merkleDistributor/model/Distribution.d.ts +17 -0
- package/dist/esm/merkleDistributor/model/Distribution.js +2 -0
- package/dist/esm/merkleDistributor/model/Distribution.js.map +1 -0
- package/dist/esm/merkleDistributor/model/index.d.ts +1 -0
- package/dist/esm/merkleDistributor/model/index.js +2 -0
- package/dist/esm/merkleDistributor/model/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/pool/TransactionManager.d.ts +12 -0
- package/dist/esm/pool/TransactionManager.js +122 -0
- package/dist/esm/pool/TransactionManager.js.map +1 -0
- package/dist/esm/pool/index.d.ts +1 -0
- package/dist/esm/pool/index.js +2 -0
- package/dist/esm/pool/index.js.map +1 -0
- package/dist/esm/pool/poolClient.d.ts +242 -0
- package/dist/esm/pool/poolClient.js +899 -0
- package/dist/esm/pool/poolClient.js.map +1 -0
- package/dist/esm/priceClient/adapters/acrossApi.d.ts +14 -0
- package/dist/esm/priceClient/adapters/acrossApi.js +49 -0
- package/dist/esm/priceClient/adapters/acrossApi.js.map +1 -0
- package/dist/esm/priceClient/adapters/baseAdapter.d.ts +17 -0
- package/dist/esm/priceClient/adapters/baseAdapter.js +78 -0
- package/dist/esm/priceClient/adapters/baseAdapter.js.map +1 -0
- package/dist/esm/priceClient/adapters/coingecko.d.ts +14 -0
- package/dist/esm/priceClient/adapters/coingecko.js +73 -0
- package/dist/esm/priceClient/adapters/coingecko.js.map +1 -0
- package/dist/esm/priceClient/adapters/defiLlama.d.ts +17 -0
- package/dist/esm/priceClient/adapters/defiLlama.js +93 -0
- package/dist/esm/priceClient/adapters/defiLlama.js.map +1 -0
- package/dist/esm/priceClient/adapters/index.d.ts +3 -0
- package/dist/esm/priceClient/adapters/index.js +7 -0
- package/dist/esm/priceClient/adapters/index.js.map +1 -0
- package/dist/esm/priceClient/index.d.ts +2 -0
- package/dist/esm/priceClient/index.js +4 -0
- package/dist/esm/priceClient/index.js.map +1 -0
- package/dist/esm/priceClient/priceClient.d.ts +32 -0
- package/dist/esm/priceClient/priceClient.js +206 -0
- package/dist/esm/priceClient/priceClient.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +61 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +91 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +151 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js +38 -0
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +3 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js +4 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.d.ts +152 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js +40 -0
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js.map +1 -0
- package/dist/esm/relayFeeCalculator/index.d.ts +2 -0
- package/dist/esm/relayFeeCalculator/index.js +3 -0
- package/dist/esm/relayFeeCalculator/index.js.map +1 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +282 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +298 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -0
- package/dist/esm/typechain.d.ts +22 -0
- package/dist/esm/typechain.js +9 -0
- package/dist/esm/typechain.js.map +1 -0
- package/dist/esm/typeguards/error.d.ts +3 -0
- package/dist/esm/typeguards/error.js +6 -0
- package/dist/esm/typeguards/error.js.map +1 -0
- package/dist/esm/typeguards/index.d.ts +1 -0
- package/dist/esm/typeguards/index.js +2 -0
- package/dist/esm/typeguards/index.js.map +1 -0
- package/dist/esm/utils/AddressUtils.d.ts +8 -0
- package/dist/esm/utils/AddressUtils.js +28 -0
- package/dist/esm/utils/AddressUtils.js.map +1 -0
- package/dist/esm/utils/ArrayUtils.d.ts +98 -0
- package/dist/esm/utils/ArrayUtils.js +196 -0
- package/dist/esm/utils/ArrayUtils.js.map +1 -0
- package/dist/esm/utils/BigNumberUtils.d.ts +31 -0
- package/dist/esm/utils/BigNumberUtils.js +52 -0
- package/dist/esm/utils/BigNumberUtils.js.map +1 -0
- package/dist/esm/utils/BlockExplorerUtils.d.ts +21 -0
- package/dist/esm/utils/BlockExplorerUtils.js +91 -0
- package/dist/esm/utils/BlockExplorerUtils.js.map +1 -0
- package/dist/esm/utils/BlockUtils.d.ts +46 -0
- package/dist/esm/utils/BlockUtils.js +294 -0
- package/dist/esm/utils/BlockUtils.js.map +1 -0
- package/dist/esm/utils/BundleUtils.d.ts +29 -0
- package/dist/esm/utils/BundleUtils.js +89 -0
- package/dist/esm/utils/BundleUtils.js.map +1 -0
- package/dist/esm/utils/CachingUtils.d.ts +17 -0
- package/dist/esm/utils/CachingUtils.js +66 -0
- package/dist/esm/utils/CachingUtils.js.map +1 -0
- package/dist/esm/utils/DeploymentUtils.d.ts +1 -0
- package/dist/esm/utils/DeploymentUtils.js +2 -0
- package/dist/esm/utils/DeploymentUtils.js.map +1 -0
- package/dist/esm/utils/DepositUtils.d.ts +46 -0
- package/dist/esm/utils/DepositUtils.js +138 -0
- package/dist/esm/utils/DepositUtils.js.map +1 -0
- package/dist/esm/utils/EventUtils.d.ts +32 -0
- package/dist/esm/utils/EventUtils.js +194 -0
- package/dist/esm/utils/EventUtils.js.map +1 -0
- package/dist/esm/utils/FlowUtils.d.ts +8 -0
- package/dist/esm/utils/FlowUtils.js +39 -0
- package/dist/esm/utils/FlowUtils.js.map +1 -0
- package/dist/esm/utils/FormattingUtils.d.ts +61 -0
- package/dist/esm/utils/FormattingUtils.js +167 -0
- package/dist/esm/utils/FormattingUtils.js.map +1 -0
- package/dist/esm/utils/IPFSUtils.d.ts +24 -0
- package/dist/esm/utils/IPFSUtils.js +65 -0
- package/dist/esm/utils/IPFSUtils.js.map +1 -0
- package/dist/esm/utils/JSONUtils.d.ts +31 -0
- package/dist/esm/utils/JSONUtils.js +82 -0
- package/dist/esm/utils/JSONUtils.js.map +1 -0
- package/dist/esm/utils/LogUtils.d.ts +20 -0
- package/dist/esm/utils/LogUtils.js +19 -0
- package/dist/esm/utils/LogUtils.js.map +1 -0
- package/dist/esm/utils/Multicall.d.ts +13 -0
- package/dist/esm/utils/Multicall.js +70 -0
- package/dist/esm/utils/Multicall.js.map +1 -0
- package/dist/esm/utils/NetworkUtils.d.ts +60 -0
- package/dist/esm/utils/NetworkUtils.js +109 -0
- package/dist/esm/utils/NetworkUtils.js.map +1 -0
- package/dist/esm/utils/NumberUtils.d.ts +12 -0
- package/dist/esm/utils/NumberUtils.js +17 -0
- package/dist/esm/utils/NumberUtils.js.map +1 -0
- package/dist/esm/utils/ObjectUtils.d.ts +10 -0
- package/dist/esm/utils/ObjectUtils.js +72 -0
- package/dist/esm/utils/ObjectUtils.js.map +1 -0
- package/dist/esm/utils/ReviverUtils.d.ts +15 -0
- package/dist/esm/utils/ReviverUtils.js +33 -0
- package/dist/esm/utils/ReviverUtils.js.map +1 -0
- package/dist/esm/utils/SpokeUtils.d.ts +64 -0
- package/dist/esm/utils/SpokeUtils.js +370 -0
- package/dist/esm/utils/SpokeUtils.js.map +1 -0
- package/dist/esm/utils/TimeUtils.d.ts +5 -0
- package/dist/esm/utils/TimeUtils.js +8 -0
- package/dist/esm/utils/TimeUtils.js.map +1 -0
- package/dist/esm/utils/TokenUtils.d.ts +325 -0
- package/dist/esm/utils/TokenUtils.js +88 -0
- package/dist/esm/utils/TokenUtils.js.map +1 -0
- package/dist/esm/utils/TypeGuards.d.ts +3 -0
- package/dist/esm/utils/TypeGuards.js +10 -0
- package/dist/esm/utils/TypeGuards.js.map +1 -0
- package/dist/esm/utils/TypeUtils.d.ts +5 -0
- package/dist/esm/utils/TypeUtils.js +2 -0
- package/dist/esm/utils/TypeUtils.js.map +1 -0
- package/dist/esm/utils/V3Utils.d.ts +4 -0
- package/dist/esm/utils/V3Utils.js +10 -0
- package/dist/esm/utils/V3Utils.js.map +1 -0
- package/dist/esm/utils/ValidatorUtils.d.ts +2 -0
- package/dist/esm/utils/ValidatorUtils.js +35 -0
- package/dist/esm/utils/ValidatorUtils.js.map +1 -0
- package/dist/esm/utils/abi/contracts/Multicall3.json +440 -0
- package/dist/esm/utils/abi/index.d.ts +18 -0
- package/dist/esm/utils/abi/index.js +41 -0
- package/dist/esm/utils/abi/index.js.map +1 -0
- package/dist/esm/utils/common.d.ts +204 -0
- package/dist/esm/utils/common.js +325 -0
- package/dist/esm/utils/common.js.map +1 -0
- package/dist/esm/utils/index.d.ts +29 -0
- package/dist/esm/utils/index.js +30 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/types/apiClient/abstractClient.d.ts +67 -0
- package/dist/types/apiClient/abstractClient.d.ts.map +1 -0
- package/dist/types/apiClient/index.d.ts +3 -0
- package/dist/types/apiClient/index.d.ts.map +1 -0
- package/dist/types/apiClient/mockedClient.d.ts +25 -0
- package/dist/types/apiClient/mockedClient.d.ts.map +1 -0
- package/dist/types/apiClient/productionClient.d.ts +17 -0
- package/dist/types/apiClient/productionClient.d.ts.map +1 -0
- package/dist/types/apiClient/types.d.ts +45 -0
- package/dist/types/apiClient/types.d.ts.map +1 -0
- package/dist/types/caching/Arweave/ArweaveClient.d.ts +62 -0
- package/dist/types/caching/Arweave/ArweaveClient.d.ts.map +1 -0
- package/dist/types/caching/Arweave/index.d.ts +2 -0
- package/dist/types/caching/Arweave/index.d.ts.map +1 -0
- package/dist/types/caching/IPFS/PinataIPFSClient.d.ts +38 -0
- package/dist/types/caching/IPFS/PinataIPFSClient.d.ts.map +1 -0
- package/dist/types/caching/IPFS/index.d.ts +2 -0
- package/dist/types/caching/IPFS/index.d.ts.map +1 -0
- package/dist/types/caching/index.d.ts +3 -0
- package/dist/types/caching/index.d.ts.map +1 -0
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +109 -0
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -0
- package/dist/types/clients/AcrossConfigStoreClient/index.d.ts +2 -0
- package/dist/types/clients/AcrossConfigStoreClient/index.d.ts.map +1 -0
- package/dist/types/clients/BaseAbstractClient.d.ts +52 -0
- package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -0
- package/dist/types/clients/HubPoolClient.d.ts +135 -0
- package/dist/types/clients/HubPoolClient.d.ts.map +1 -0
- package/dist/types/clients/SpokePoolClient.d.ts +319 -0
- package/dist/types/clients/SpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/index.d.ts +5 -0
- package/dist/types/clients/index.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +21 -0
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockEvents.d.ts +35 -0
- package/dist/types/clients/mocks/MockEvents.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts +36 -0
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +39 -0
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/index.d.ts +4 -0
- package/dist/types/clients/mocks/index.d.ts.map +1 -0
- package/dist/types/coingecko/Coingecko.d.ts +41 -0
- package/dist/types/coingecko/Coingecko.d.ts.map +1 -0
- package/dist/types/coingecko/index.d.ts +2 -0
- package/dist/types/coingecko/index.d.ts.map +1 -0
- package/dist/types/constants.d.ts +30 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/contracts/acrossConfigStore.d.ts +58 -0
- package/dist/types/contracts/acrossConfigStore.d.ts.map +1 -0
- package/dist/types/contracts/hubPool.d.ts +18 -0
- package/dist/types/contracts/hubPool.d.ts.map +1 -0
- package/dist/types/contracts/index.d.ts +3 -0
- package/dist/types/contracts/index.d.ts.map +1 -0
- package/dist/types/contracts/utils.d.ts +24 -0
- package/dist/types/contracts/utils.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +5 -0
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/index.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/index.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -0
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/index.d.ts +3 -0
- package/dist/types/gasPriceOracle/index.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/oracle.d.ts +11 -0
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/types.d.ts +9 -0
- package/dist/types/gasPriceOracle/types.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/util.d.ts +3 -0
- package/dist/types/gasPriceOracle/util.d.ts.map +1 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/interfaces/Bridge.d.ts +10 -0
- package/dist/types/interfaces/Bridge.d.ts.map +1 -0
- package/dist/types/interfaces/CachingMechanism.d.ts +27 -0
- package/dist/types/interfaces/CachingMechanism.d.ts.map +1 -0
- package/dist/types/interfaces/Common.d.ts +11 -0
- package/dist/types/interfaces/Common.d.ts.map +1 -0
- package/dist/types/interfaces/ConfigStore.d.ts +158 -0
- package/dist/types/interfaces/ConfigStore.d.ts.map +1 -0
- package/dist/types/interfaces/Error.d.ts +6 -0
- package/dist/types/interfaces/Error.d.ts.map +1 -0
- package/dist/types/interfaces/HubPool.d.ts +99 -0
- package/dist/types/interfaces/HubPool.d.ts.map +1 -0
- package/dist/types/interfaces/SpokePool.d.ts +104 -0
- package/dist/types/interfaces/SpokePool.d.ts.map +1 -0
- package/dist/types/interfaces/TypedData.d.ts +20 -0
- package/dist/types/interfaces/TypedData.d.ts.map +1 -0
- package/dist/types/interfaces/index.d.ts +9 -0
- package/dist/types/interfaces/index.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/index.d.ts +2 -0
- package/dist/types/lpFeeCalculator/index.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/lpFeeCalculator.d.ts +67 -0
- package/dist/types/lpFeeCalculator/lpFeeCalculator.d.ts.map +1 -0
- package/dist/types/lpFeeCalculator/rateModel.d.ts +46 -0
- package/dist/types/lpFeeCalculator/rateModel.d.ts.map +1 -0
- package/dist/types/merkleDistributor/MerkleDistributor.d.ts +21 -0
- package/dist/types/merkleDistributor/MerkleDistributor.d.ts.map +1 -0
- package/dist/types/merkleDistributor/index.d.ts +3 -0
- package/dist/types/merkleDistributor/index.d.ts.map +1 -0
- package/dist/types/merkleDistributor/model/Distribution.d.ts +18 -0
- package/dist/types/merkleDistributor/model/Distribution.d.ts.map +1 -0
- package/dist/types/merkleDistributor/model/index.d.ts +2 -0
- package/dist/types/merkleDistributor/model/index.d.ts.map +1 -0
- package/dist/types/pool/TransactionManager.d.ts +13 -0
- package/dist/types/pool/TransactionManager.d.ts.map +1 -0
- package/dist/types/pool/index.d.ts +2 -0
- package/dist/types/pool/index.d.ts.map +1 -0
- package/dist/types/pool/poolClient.d.ts +243 -0
- package/dist/types/pool/poolClient.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/acrossApi.d.ts +15 -0
- package/dist/types/priceClient/adapters/acrossApi.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/baseAdapter.d.ts +18 -0
- package/dist/types/priceClient/adapters/baseAdapter.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/coingecko.d.ts +15 -0
- package/dist/types/priceClient/adapters/coingecko.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/defiLlama.d.ts +18 -0
- package/dist/types/priceClient/adapters/defiLlama.d.ts.map +1 -0
- package/dist/types/priceClient/adapters/index.d.ts +4 -0
- package/dist/types/priceClient/adapters/index.d.ts.map +1 -0
- package/dist/types/priceClient/index.d.ts +3 -0
- package/dist/types/priceClient/index.d.ts.map +1 -0
- package/dist/types/priceClient/priceClient.d.ts +33 -0
- package/dist/types/priceClient/priceClient.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +62 -0
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +152 -0
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +4 -0
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts +153 -0
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/index.d.ts +3 -0
- package/dist/types/relayFeeCalculator/index.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +283 -0
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -0
- package/dist/types/typechain.d.ts +23 -0
- package/dist/types/typechain.d.ts.map +1 -0
- package/dist/types/typeguards/error.d.ts +4 -0
- package/dist/types/typeguards/error.d.ts.map +1 -0
- package/dist/types/typeguards/index.d.ts +2 -0
- package/dist/types/typeguards/index.d.ts.map +1 -0
- package/dist/types/utils/AddressUtils.d.ts +9 -0
- package/dist/types/utils/AddressUtils.d.ts.map +1 -0
- package/dist/types/utils/ArrayUtils.d.ts +99 -0
- package/dist/types/utils/ArrayUtils.d.ts.map +1 -0
- package/dist/types/utils/BigNumberUtils.d.ts +32 -0
- package/dist/types/utils/BigNumberUtils.d.ts.map +1 -0
- package/dist/types/utils/BlockExplorerUtils.d.ts +22 -0
- package/dist/types/utils/BlockExplorerUtils.d.ts.map +1 -0
- package/dist/types/utils/BlockUtils.d.ts +47 -0
- package/dist/types/utils/BlockUtils.d.ts.map +1 -0
- package/dist/types/utils/BundleUtils.d.ts +30 -0
- package/dist/types/utils/BundleUtils.d.ts.map +1 -0
- package/dist/types/utils/CachingUtils.d.ts +18 -0
- package/dist/types/utils/CachingUtils.d.ts.map +1 -0
- package/dist/types/utils/DeploymentUtils.d.ts +2 -0
- package/dist/types/utils/DeploymentUtils.d.ts.map +1 -0
- package/dist/types/utils/DepositUtils.d.ts +47 -0
- package/dist/types/utils/DepositUtils.d.ts.map +1 -0
- package/dist/types/utils/EventUtils.d.ts +33 -0
- package/dist/types/utils/EventUtils.d.ts.map +1 -0
- package/dist/types/utils/FlowUtils.d.ts +9 -0
- package/dist/types/utils/FlowUtils.d.ts.map +1 -0
- package/dist/types/utils/FormattingUtils.d.ts +62 -0
- package/dist/types/utils/FormattingUtils.d.ts.map +1 -0
- package/dist/types/utils/IPFSUtils.d.ts +25 -0
- package/dist/types/utils/IPFSUtils.d.ts.map +1 -0
- package/dist/types/utils/JSONUtils.d.ts +32 -0
- package/dist/types/utils/JSONUtils.d.ts.map +1 -0
- package/dist/types/utils/LogUtils.d.ts +21 -0
- package/dist/types/utils/LogUtils.d.ts.map +1 -0
- package/dist/types/utils/Multicall.d.ts +14 -0
- package/dist/types/utils/Multicall.d.ts.map +1 -0
- package/dist/types/utils/NetworkUtils.d.ts +61 -0
- package/dist/types/utils/NetworkUtils.d.ts.map +1 -0
- package/dist/types/utils/NumberUtils.d.ts +13 -0
- package/dist/types/utils/NumberUtils.d.ts.map +1 -0
- package/dist/types/utils/ObjectUtils.d.ts +11 -0
- package/dist/types/utils/ObjectUtils.d.ts.map +1 -0
- package/dist/types/utils/ReviverUtils.d.ts +16 -0
- package/dist/types/utils/ReviverUtils.d.ts.map +1 -0
- package/dist/types/utils/SpokeUtils.d.ts +65 -0
- package/dist/types/utils/SpokeUtils.d.ts.map +1 -0
- package/dist/types/utils/TimeUtils.d.ts +6 -0
- package/dist/types/utils/TimeUtils.d.ts.map +1 -0
- package/dist/types/utils/TokenUtils.d.ts +326 -0
- package/dist/types/utils/TokenUtils.d.ts.map +1 -0
- package/dist/types/utils/TypeGuards.d.ts +4 -0
- package/dist/types/utils/TypeGuards.d.ts.map +1 -0
- package/dist/types/utils/TypeUtils.d.ts +6 -0
- package/dist/types/utils/TypeUtils.d.ts.map +1 -0
- package/dist/types/utils/V3Utils.d.ts +5 -0
- package/dist/types/utils/V3Utils.d.ts.map +1 -0
- package/dist/types/utils/ValidatorUtils.d.ts +3 -0
- package/dist/types/utils/ValidatorUtils.d.ts.map +1 -0
- package/dist/types/utils/abi/index.d.ts +19 -0
- package/dist/types/utils/abi/index.d.ts.map +1 -0
- package/dist/types/utils/common.d.ts +205 -0
- package/dist/types/utils/common.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +30 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/package.json +144 -0
- package/src/apiClient/abstractClient.ts +95 -0
- package/src/apiClient/index.ts +2 -0
- package/src/apiClient/mockedClient.ts +90 -0
- package/src/apiClient/productionClient.ts +98 -0
- package/src/apiClient/types.ts +49 -0
- package/src/caching/Arweave/ArweaveClient.ts +238 -0
- package/src/caching/Arweave/index.ts +1 -0
- package/src/caching/IPFS/PinataIPFSClient.ts +92 -0
- package/src/caching/IPFS/index.ts +1 -0
- package/src/caching/index.ts +2 -0
- package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +526 -0
- package/src/clients/AcrossConfigStoreClient/index.ts +1 -0
- package/src/clients/BaseAbstractClient.ts +94 -0
- package/src/clients/HubPoolClient.ts +1010 -0
- package/src/clients/SpokePoolClient.ts +894 -0
- package/src/clients/index.ts +9 -0
- package/src/clients/mocks/MockConfigStoreClient.ts +129 -0
- package/src/clients/mocks/MockEvents.ts +156 -0
- package/src/clients/mocks/MockHubPoolClient.ts +257 -0
- package/src/clients/mocks/MockSpokePoolClient.ts +341 -0
- package/src/clients/mocks/index.ts +3 -0
- package/src/coingecko/Coingecko.ts +277 -0
- package/src/coingecko/index.ts +1 -0
- package/src/constants.ts +53 -0
- package/src/contracts/acrossConfigStore.ts +49 -0
- package/src/contracts/hubPool.ts +90 -0
- package/src/contracts/index.ts +2 -0
- package/src/contracts/utils.ts +56 -0
- package/src/gasPriceOracle/adapters/arbitrum.ts +21 -0
- package/src/gasPriceOracle/adapters/ethereum.ts +27 -0
- package/src/gasPriceOracle/adapters/index.ts +3 -0
- package/src/gasPriceOracle/adapters/polygon.ts +77 -0
- package/src/gasPriceOracle/index.ts +2 -0
- package/src/gasPriceOracle/oracle.ts +42 -0
- package/src/gasPriceOracle/types.ts +10 -0
- package/src/gasPriceOracle/util.ts +5 -0
- package/src/index.ts +15 -0
- package/src/interfaces/Bridge.ts +10 -0
- package/src/interfaces/CachingMechanism.ts +37 -0
- package/src/interfaces/Common.ts +12 -0
- package/src/interfaces/ConfigStore.ts +173 -0
- package/src/interfaces/Error.ts +5 -0
- package/src/interfaces/HubPool.ts +118 -0
- package/src/interfaces/SpokePool.ts +119 -0
- package/src/interfaces/TypedData.ts +21 -0
- package/src/interfaces/index.ts +8 -0
- package/src/lpFeeCalculator/README.md +27 -0
- package/src/lpFeeCalculator/index.ts +1 -0
- package/src/lpFeeCalculator/lpFeeCalculator.ts +169 -0
- package/src/lpFeeCalculator/rateModel.ts +183 -0
- package/src/merkleDistributor/MerkleDistributor.ts +37 -0
- package/src/merkleDistributor/README.md +30 -0
- package/src/merkleDistributor/index.ts +2 -0
- package/src/merkleDistributor/model/Distribution.ts +17 -0
- package/src/merkleDistributor/model/index.ts +1 -0
- package/src/pool/TransactionManager.ts +73 -0
- package/src/pool/index.ts +1 -0
- package/src/pool/poolClient.ts +840 -0
- package/src/priceClient/README.md +36 -0
- package/src/priceClient/adapters/acrossApi.ts +44 -0
- package/src/priceClient/adapters/baseAdapter.ts +65 -0
- package/src/priceClient/adapters/coingecko.ts +67 -0
- package/src/priceClient/adapters/defiLlama.ts +96 -0
- package/src/priceClient/adapters/index.ts +3 -0
- package/src/priceClient/index.ts +2 -0
- package/src/priceClient/priceClient.ts +192 -0
- package/src/relayFeeCalculator/README.md +34 -0
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +98 -0
- package/src/relayFeeCalculator/chain-queries/factory.ts +58 -0
- package/src/relayFeeCalculator/chain-queries/index.ts +3 -0
- package/src/relayFeeCalculator/chain-queries/polygon.ts +45 -0
- package/src/relayFeeCalculator/index.ts +2 -0
- package/src/relayFeeCalculator/relayFeeCalculator.ts +410 -0
- package/src/typechain.ts +46 -0
- package/src/typeguards/error.ts +7 -0
- package/src/typeguards/index.ts +1 -0
- package/src/utils/AddressUtils.ts +18 -0
- package/src/utils/ArrayUtils.ts +170 -0
- package/src/utils/BigNumberUtils.ts +58 -0
- package/src/utils/BlockExplorerUtils.ts +91 -0
- package/src/utils/BlockUtils.ts +265 -0
- package/src/utils/BundleUtils.ts +109 -0
- package/src/utils/CachingUtils.ts +56 -0
- package/src/utils/DeploymentUtils.ts +5 -0
- package/src/utils/DepositUtils.ts +144 -0
- package/src/utils/EventUtils.ts +227 -0
- package/src/utils/FlowUtils.ts +48 -0
- package/src/utils/FormattingUtils.ts +186 -0
- package/src/utils/IPFSUtils.ts +48 -0
- package/src/utils/JSONUtils.ts +85 -0
- package/src/utils/LogUtils.ts +38 -0
- package/src/utils/Multicall.ts +64 -0
- package/src/utils/NetworkUtils.ts +117 -0
- package/src/utils/NumberUtils.ts +17 -0
- package/src/utils/ObjectUtils.ts +77 -0
- package/src/utils/ReviverUtils.ts +31 -0
- package/src/utils/SpokeUtils.ts +372 -0
- package/src/utils/TimeUtils.ts +7 -0
- package/src/utils/TokenUtils.ts +94 -0
- package/src/utils/TypeGuards.ts +15 -0
- package/src/utils/TypeUtils.ts +9 -0
- package/src/utils/V3Utils.ts +12 -0
- package/src/utils/ValidatorUtils.ts +38 -0
- package/src/utils/abi/contracts/Multicall3.json +440 -0
- package/src/utils/abi/index.ts +33 -0
- package/src/utils/common.ts +392 -0
- package/src/utils/index.ts +29 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { ethers } from "ethers";
|
|
2
|
+
import { isDefined } from "../utils";
|
|
3
|
+
var expectedRateModelKeys = ["UBar", "R0", "R1", "R2"];
|
|
4
|
+
var RateModelDictionary = /** @class */ (function () {
|
|
5
|
+
function RateModelDictionary() {
|
|
6
|
+
this.rateModelDictionary = {};
|
|
7
|
+
}
|
|
8
|
+
RateModelDictionary.prototype._throwIfNotInitialized = function () {
|
|
9
|
+
if (Object.keys(this.rateModelDictionary).length == 0)
|
|
10
|
+
throw new Error("RateModelUtility method called before updating rate model dictionary!");
|
|
11
|
+
};
|
|
12
|
+
RateModelDictionary.prototype.updateWithEvents = function (rateModelEvents) {
|
|
13
|
+
this.rateModelDictionary = createRateModelEventDictionary(rateModelEvents);
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Return the rate model for L1 token set at the block height.
|
|
17
|
+
* @param l1Token L1 token address to get rate model for.
|
|
18
|
+
* @param blockNumber Block height to get rate model for.
|
|
19
|
+
* @returns Rate model object.
|
|
20
|
+
*/
|
|
21
|
+
RateModelDictionary.prototype.getRateModelForBlockNumber = function (l1Token, blockNumber) {
|
|
22
|
+
this._throwIfNotInitialized();
|
|
23
|
+
var l1TokenNormalized = ethers.utils.getAddress(l1Token);
|
|
24
|
+
if (!this.rateModelDictionary[l1TokenNormalized] || this.rateModelDictionary[l1TokenNormalized].length === 0)
|
|
25
|
+
throw new Error("No updated rate model events for L1 token: ".concat(l1TokenNormalized));
|
|
26
|
+
if (!blockNumber) {
|
|
27
|
+
// If block number is undefined, use latest updated rate model.
|
|
28
|
+
return parseAndReturnRateModelFromString(this.rateModelDictionary[l1TokenNormalized].slice(-1)[0].rateModel);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
var firstEventBlockNumber = this.rateModelDictionary[l1TokenNormalized][0].blockNumber;
|
|
32
|
+
if (blockNumber < firstEventBlockNumber) {
|
|
33
|
+
throw new Error("Block number #".concat(blockNumber, " is before first UpdatedRateModel event block ").concat(firstEventBlockNumber));
|
|
34
|
+
}
|
|
35
|
+
// We're looking for the latest rate model update that occurred at or before the block number.
|
|
36
|
+
// Rate model events are inserted into the array from oldest at index 0 to newest at index length-1, so we'll
|
|
37
|
+
// reverse the array so it goes from newest at index 0 to oldest at index length-1, and then find the first event
|
|
38
|
+
// who's block number is less than or equal to the target block number.
|
|
39
|
+
var rateModel = this.rateModelDictionary[l1TokenNormalized]
|
|
40
|
+
.slice()
|
|
41
|
+
.reverse() // reverse() modifies memory in place so create a copy first.
|
|
42
|
+
.find(function (event) { return event.blockNumber <= blockNumber; });
|
|
43
|
+
if (!rateModel)
|
|
44
|
+
throw new Error("No updated rate model events before block #".concat(blockNumber, " for L1 token: ").concat(l1TokenNormalized));
|
|
45
|
+
return parseAndReturnRateModelFromString(rateModel === null || rateModel === void 0 ? void 0 : rateModel.rateModel);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* @notice Return all L1 tokens that had a rate model associated with it at the block number.
|
|
50
|
+
* @param blockNumber Returns l1 tokens that were mapped to a rate model at this block height. If undefined,
|
|
51
|
+
* this function will return all L1 tokens that have a block number as of the latest block height.
|
|
52
|
+
* @returns array of L1 token addresses.
|
|
53
|
+
*/
|
|
54
|
+
RateModelDictionary.prototype.getL1TokensFromRateModel = function (blockNumber) {
|
|
55
|
+
var _this = this;
|
|
56
|
+
if (blockNumber === void 0) { blockNumber = undefined; }
|
|
57
|
+
this._throwIfNotInitialized();
|
|
58
|
+
return Object.keys(this.rateModelDictionary)
|
|
59
|
+
.map(function (l1Token) {
|
|
60
|
+
var l1TokenNormalized = ethers.utils.getAddress(l1Token);
|
|
61
|
+
// Check that there is at least one UpdatedRateModel event before the provided block number, otherwise
|
|
62
|
+
// this L1 token didn't exist in the RateModel at the block height and we shouldn't include it in the returned
|
|
63
|
+
// array.
|
|
64
|
+
if (!blockNumber ||
|
|
65
|
+
_this.rateModelDictionary[l1TokenNormalized].find(function (event) { return event.blockNumber <= blockNumber; }))
|
|
66
|
+
return ethers.utils.getAddress(l1Token);
|
|
67
|
+
else
|
|
68
|
+
return null;
|
|
69
|
+
})
|
|
70
|
+
.filter(isDefined);
|
|
71
|
+
};
|
|
72
|
+
return RateModelDictionary;
|
|
73
|
+
}());
|
|
74
|
+
export { RateModelDictionary };
|
|
75
|
+
/**
|
|
76
|
+
* Helper method that returns parsed rate model from string, or throws.
|
|
77
|
+
* @param rateModelString Stringified rate model to parse.
|
|
78
|
+
* @returns Rate model object. Must conform to `expectedRateModelKeys` format.
|
|
79
|
+
*/
|
|
80
|
+
export var parseAndReturnRateModelFromString = function (rateModelString) {
|
|
81
|
+
var rateModelFromEvent = JSON.parse(rateModelString);
|
|
82
|
+
// Rate model must contain the exact same keys in `expectedRateModelKeys`.
|
|
83
|
+
for (var _i = 0, expectedRateModelKeys_1 = expectedRateModelKeys; _i < expectedRateModelKeys_1.length; _i++) {
|
|
84
|
+
var key = expectedRateModelKeys_1[_i];
|
|
85
|
+
if (!Object.keys(rateModelFromEvent).includes(key)) {
|
|
86
|
+
throw new Error("Rate model does not contain all expected keys. Expected keys: [".concat(expectedRateModelKeys, "], actual keys: [").concat(Object.keys(rateModelFromEvent), "]"));
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
for (var _a = 0, _b = Object.keys(rateModelFromEvent); _a < _b.length; _a++) {
|
|
90
|
+
var key = _b[_a];
|
|
91
|
+
if (!expectedRateModelKeys.includes(key)) {
|
|
92
|
+
throw new Error("Rate model contains unexpected keys. Expected keys: [".concat(expectedRateModelKeys, "], actual keys: [").concat(Object.keys(rateModelFromEvent), "]"));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
UBar: rateModelFromEvent.UBar,
|
|
97
|
+
R0: rateModelFromEvent.R0,
|
|
98
|
+
R1: rateModelFromEvent.R1,
|
|
99
|
+
R2: rateModelFromEvent.R2,
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Given an unsorted array of updated rate model events, return a dictionary mapping token addresses to sorted
|
|
104
|
+
* rate model events. This method is used internally to enforce chronological sorting of events and mapping rate models
|
|
105
|
+
* to token addresses.
|
|
106
|
+
* @param rateModelEvents Unsorted updated rate model events, each of which contains a token address, the stringified
|
|
107
|
+
* rate model for that token, and the block height of the update.
|
|
108
|
+
* @returns Dictionary mapping token addresses to chronologically sorted rate model updates.
|
|
109
|
+
*/
|
|
110
|
+
var createRateModelEventDictionary = function (rateModelEvents) {
|
|
111
|
+
var updatedRateModelEventsForToken = {};
|
|
112
|
+
// Sort events in-place from oldest to newest:
|
|
113
|
+
rateModelEvents.sort(function (a, b) {
|
|
114
|
+
if (a.blockNumber !== b.blockNumber) {
|
|
115
|
+
return a.blockNumber - b.blockNumber;
|
|
116
|
+
}
|
|
117
|
+
if (a.transactionIndex !== b.transactionIndex) {
|
|
118
|
+
return a.transactionIndex - b.transactionIndex;
|
|
119
|
+
}
|
|
120
|
+
return a.logIndex - b.logIndex;
|
|
121
|
+
});
|
|
122
|
+
for (var _i = 0, rateModelEvents_1 = rateModelEvents; _i < rateModelEvents_1.length; _i++) {
|
|
123
|
+
var updatedRateModelEvent = rateModelEvents_1[_i];
|
|
124
|
+
// The contract enforces that all rate models are mapped to addresses, therefore we do not need to check that
|
|
125
|
+
// `l1Token` is a valid address.
|
|
126
|
+
var l1TokenNormalized = ethers.utils.getAddress(updatedRateModelEvent.l1Token);
|
|
127
|
+
if (!updatedRateModelEventsForToken[l1TokenNormalized])
|
|
128
|
+
updatedRateModelEventsForToken[l1TokenNormalized] = [];
|
|
129
|
+
// We assume that events are returned from oldest to newest, so we can simply push events into the array and
|
|
130
|
+
// and maintain their time order.
|
|
131
|
+
updatedRateModelEventsForToken[l1TokenNormalized].push({
|
|
132
|
+
blockNumber: updatedRateModelEvent.blockNumber,
|
|
133
|
+
rateModel: updatedRateModelEvent.rateModel,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
return updatedRateModelEventsForToken;
|
|
137
|
+
};
|
|
138
|
+
//# sourceMappingURL=rateModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rateModel.js","sourceRoot":"","sources":["../../../src/lpFeeCalculator/rateModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DistributionRecipientsWithProofs, DistributionRecipient } from "./model";
|
|
2
|
+
export declare class MerkleDistributor {
|
|
3
|
+
/**
|
|
4
|
+
* Generate the Merkle root and the proofs for a collection of recipients.
|
|
5
|
+
*
|
|
6
|
+
* @param recipients An object which describes the recipients
|
|
7
|
+
* @param windowIndex Parameter to specify an window index. This allows using the same smart contract for multiple token distributions.
|
|
8
|
+
*/
|
|
9
|
+
static createMerkleDistributionProofs(recipients: DistributionRecipient[], windowIndex: number): {
|
|
10
|
+
recipientsWithProofs: DistributionRecipientsWithProofs;
|
|
11
|
+
merkleRoot: string;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Encode the account address, the amount and the account index into a Merkle Tree leaf.
|
|
15
|
+
* It is equivalent to Solidity's keccak256(abi.encode(account, amount))
|
|
16
|
+
* @param recipient The recipient of the token distribution
|
|
17
|
+
* @returns The Merkle Tree leaf
|
|
18
|
+
*/
|
|
19
|
+
static createLeaf(recipient: DistributionRecipient): string;
|
|
20
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { __assign } from "tslib";
|
|
2
|
+
import { MerkleTree } from "@across-protocol/contracts/dist/utils/MerkleTree";
|
|
3
|
+
import { ethers } from "ethers";
|
|
4
|
+
var MerkleDistributor = /** @class */ (function () {
|
|
5
|
+
function MerkleDistributor() {
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Generate the Merkle root and the proofs for a collection of recipients.
|
|
9
|
+
*
|
|
10
|
+
* @param recipients An object which describes the recipients
|
|
11
|
+
* @param windowIndex Parameter to specify an window index. This allows using the same smart contract for multiple token distributions.
|
|
12
|
+
*/
|
|
13
|
+
MerkleDistributor.createMerkleDistributionProofs = function (recipients, windowIndex) {
|
|
14
|
+
var merkleTree = new MerkleTree(recipients, MerkleDistributor.createLeaf);
|
|
15
|
+
var recipientsWithProofs = recipients.reduce(function (acc, recipient) {
|
|
16
|
+
var _a;
|
|
17
|
+
return __assign(__assign({}, acc), (_a = {}, _a[recipient.account] = __assign(__assign({}, recipient), { proof: merkleTree.getHexProof(recipient), windowIndex: windowIndex }), _a));
|
|
18
|
+
}, {});
|
|
19
|
+
return { recipientsWithProofs: recipientsWithProofs, merkleRoot: merkleTree.getHexRoot() };
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Encode the account address, the amount and the account index into a Merkle Tree leaf.
|
|
23
|
+
* It is equivalent to Solidity's keccak256(abi.encode(account, amount))
|
|
24
|
+
* @param recipient The recipient of the token distribution
|
|
25
|
+
* @returns The Merkle Tree leaf
|
|
26
|
+
*/
|
|
27
|
+
MerkleDistributor.createLeaf = function (recipient) {
|
|
28
|
+
var account = recipient.account, amount = recipient.amount, accountIndex = recipient.accountIndex;
|
|
29
|
+
return ethers.utils.solidityKeccak256(["address", "uint256", "uint256"], [account, amount, accountIndex]);
|
|
30
|
+
};
|
|
31
|
+
return MerkleDistributor;
|
|
32
|
+
}());
|
|
33
|
+
export { MerkleDistributor };
|
|
34
|
+
//# sourceMappingURL=MerkleDistributor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerkleDistributor.js","sourceRoot":"","sources":["../../../src/merkleDistributor/MerkleDistributor.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC;IAAA;IAgCA,CAAC;IA/BC;;;;;OAKG;IACI,gDAA8B,GAArC,UAAsC,UAAmC,EAAE,WAAmB;QAC5F,IAAM,UAAU,GAAG,IAAI,UAAU,CAAwB,UAAU,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACnG,IAAM,oBAAoB,GAAG,UAAU,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,SAAS;;YAC5D,6BACK,GAAG,gBACL,SAAS,CAAC,OAAO,0BACb,SAAS,KACZ,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,EACxC,WAAW,aAAA,UAEb;QACJ,CAAC,EAAE,EAAsC,CAAC,CAAC;QAC3C,OAAO,EAAE,oBAAoB,sBAAA,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACI,4BAAU,GAAjB,UAAkB,SAAgC;QACxC,IAAA,OAAO,GAA2B,SAAS,QAApC,EAAE,MAAM,GAAmB,SAAS,OAA5B,EAAE,YAAY,GAAK,SAAS,aAAd,CAAe;QACpD,OAAO,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAC5G,CAAC;IACH,wBAAC;AAAD,CAAC,AAhCD,IAgCC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/merkleDistributor/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type DistributionRecipientsWithProofs = {
|
|
2
|
+
[address: string]: DistributionRecipientWithProof;
|
|
3
|
+
};
|
|
4
|
+
export type DistributionRecipient = {
|
|
5
|
+
amount: string;
|
|
6
|
+
account: string;
|
|
7
|
+
accountIndex: number;
|
|
8
|
+
metadata: {
|
|
9
|
+
amountBreakdown: {
|
|
10
|
+
[name: string]: string;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type DistributionRecipientWithProof = DistributionRecipient & {
|
|
15
|
+
windowIndex: number;
|
|
16
|
+
proof: string[];
|
|
17
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Distribution.js","sourceRoot":"","sources":["../../../../src/merkleDistributor/model/Distribution.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Distribution";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/merkleDistributor/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module","sideEffects":false}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Signer } from "ethers";
|
|
2
|
+
import { TransactionRequest, TransactionReceipt } from "@ethersproject/abstract-provider";
|
|
3
|
+
type Config = {
|
|
4
|
+
confirmations?: number;
|
|
5
|
+
};
|
|
6
|
+
export type Emit = (event: string, key: string, data: TransactionReceipt | string | TransactionRequest | Error) => void;
|
|
7
|
+
declare const _default: (config: Config, signer: Signer, emit?: Emit) => {
|
|
8
|
+
request: (unsignedTx: TransactionRequest) => string;
|
|
9
|
+
isMined: (key: string) => TransactionReceipt | undefined;
|
|
10
|
+
update: () => Promise<void>;
|
|
11
|
+
};
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import assert from "assert";
|
|
3
|
+
function makeKey(tx) {
|
|
4
|
+
return JSON.stringify(Object.entries(tx).map(function (_a) {
|
|
5
|
+
var key = _a[0], value = _a[1];
|
|
6
|
+
return [key, (value || "").toString()];
|
|
7
|
+
}));
|
|
8
|
+
}
|
|
9
|
+
export default (function (config, signer, emit) {
|
|
10
|
+
if (emit === void 0) { emit = function () { return null; }; }
|
|
11
|
+
assert(signer.provider, "signer requires a provider, use signer.connect(provider)");
|
|
12
|
+
var _a = config.confirmations, confirmations = _a === void 0 ? 3 : _a;
|
|
13
|
+
var requests = new Map();
|
|
14
|
+
var submissions = new Map();
|
|
15
|
+
var mined = new Map();
|
|
16
|
+
function request(unsignedTx) {
|
|
17
|
+
// this no longer calls signer.populateTransaction, to allow metamask to fill in missing details instead
|
|
18
|
+
// use overrides if you want to manually fill in other tx details, including the overrides.customData field.
|
|
19
|
+
var populated = unsignedTx;
|
|
20
|
+
var key = makeKey(populated);
|
|
21
|
+
assert(!requests.has(key), "Transaction already in progress");
|
|
22
|
+
requests.set(key, populated);
|
|
23
|
+
return key;
|
|
24
|
+
}
|
|
25
|
+
function processRequest(key) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
27
|
+
var request, sent, err_1;
|
|
28
|
+
return __generator(this, function (_a) {
|
|
29
|
+
switch (_a.label) {
|
|
30
|
+
case 0:
|
|
31
|
+
request = requests.get(key);
|
|
32
|
+
assert(request, "invalid request");
|
|
33
|
+
// always delete request, it should only be submitted once
|
|
34
|
+
requests.delete(key);
|
|
35
|
+
_a.label = 1;
|
|
36
|
+
case 1:
|
|
37
|
+
_a.trys.push([1, 3, , 4]);
|
|
38
|
+
return [4 /*yield*/, signer.sendTransaction(request)];
|
|
39
|
+
case 2:
|
|
40
|
+
sent = _a.sent();
|
|
41
|
+
submissions.set(key, sent.hash);
|
|
42
|
+
emit("submitted", key, sent.hash);
|
|
43
|
+
return [3 /*break*/, 4];
|
|
44
|
+
case 3:
|
|
45
|
+
err_1 = _a.sent();
|
|
46
|
+
emit("error", key, err_1);
|
|
47
|
+
return [3 /*break*/, 4];
|
|
48
|
+
case 4: return [2 /*return*/];
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function processSubmission(key) {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55
|
+
var hash, receipt;
|
|
56
|
+
return __generator(this, function (_a) {
|
|
57
|
+
switch (_a.label) {
|
|
58
|
+
case 0:
|
|
59
|
+
hash = submissions.get(key);
|
|
60
|
+
assert(hash, "invalid submission");
|
|
61
|
+
assert(signer.provider, "signer requires a provider, use signer.connect(provider)");
|
|
62
|
+
return [4 /*yield*/, signer.provider.getTransactionReceipt(hash).catch(function () { return undefined; })];
|
|
63
|
+
case 1:
|
|
64
|
+
receipt = _a.sent();
|
|
65
|
+
if (receipt == null)
|
|
66
|
+
return [2 /*return*/];
|
|
67
|
+
if (receipt.confirmations < confirmations)
|
|
68
|
+
return [2 /*return*/];
|
|
69
|
+
submissions.delete(key);
|
|
70
|
+
mined.set(key, receipt);
|
|
71
|
+
emit("mined", key, receipt);
|
|
72
|
+
return [2 /*return*/];
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
function isMined(key) {
|
|
78
|
+
return mined.get(key);
|
|
79
|
+
}
|
|
80
|
+
function update() {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
82
|
+
var _i, _a, key, _b, _c, key;
|
|
83
|
+
return __generator(this, function (_d) {
|
|
84
|
+
switch (_d.label) {
|
|
85
|
+
case 0:
|
|
86
|
+
_i = 0, _a = Object.keys(requests);
|
|
87
|
+
_d.label = 1;
|
|
88
|
+
case 1:
|
|
89
|
+
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
90
|
+
key = _a[_i];
|
|
91
|
+
return [4 /*yield*/, processRequest(key)];
|
|
92
|
+
case 2:
|
|
93
|
+
_d.sent();
|
|
94
|
+
_d.label = 3;
|
|
95
|
+
case 3:
|
|
96
|
+
_i++;
|
|
97
|
+
return [3 /*break*/, 1];
|
|
98
|
+
case 4:
|
|
99
|
+
_b = 0, _c = Object.keys(submissions);
|
|
100
|
+
_d.label = 5;
|
|
101
|
+
case 5:
|
|
102
|
+
if (!(_b < _c.length)) return [3 /*break*/, 8];
|
|
103
|
+
key = _c[_b];
|
|
104
|
+
return [4 /*yield*/, processSubmission(key)];
|
|
105
|
+
case 6:
|
|
106
|
+
_d.sent();
|
|
107
|
+
_d.label = 7;
|
|
108
|
+
case 7:
|
|
109
|
+
_b++;
|
|
110
|
+
return [3 /*break*/, 5];
|
|
111
|
+
case 8: return [2 /*return*/];
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
return {
|
|
117
|
+
request: request,
|
|
118
|
+
isMined: isMined,
|
|
119
|
+
update: update,
|
|
120
|
+
};
|
|
121
|
+
});
|
|
122
|
+
//# sourceMappingURL=TransactionManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionManager.js","sourceRoot":"","sources":["../../../src/pool/TransactionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./poolClient";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pool/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import * as uma from "@uma/sdk";
|
|
2
|
+
import { BigNumberish } from "../utils";
|
|
3
|
+
import { Signer, BigNumber } from "ethers";
|
|
4
|
+
import type { Overrides } from "@ethersproject/contracts";
|
|
5
|
+
import { TransactionRequest, TransactionReceipt, Log } from "@ethersproject/abstract-provider";
|
|
6
|
+
import { Provider, Block } from "@ethersproject/providers";
|
|
7
|
+
import { hubPool } from "../contracts";
|
|
8
|
+
import { AcceleratingDistributor, MerkleDistributor } from "../typechain";
|
|
9
|
+
export type { Provider };
|
|
10
|
+
export type Awaited<T> = T extends PromiseLike<infer U> ? U : T;
|
|
11
|
+
export type Config = {
|
|
12
|
+
chainId?: number;
|
|
13
|
+
hubPoolAddress: string;
|
|
14
|
+
acceleratingDistributorAddress: string;
|
|
15
|
+
merkleDistributorAddress: string;
|
|
16
|
+
wethAddress: string;
|
|
17
|
+
configStoreAddress: string;
|
|
18
|
+
confirmations?: number;
|
|
19
|
+
blockDelta?: number;
|
|
20
|
+
hasArchive?: boolean;
|
|
21
|
+
hubPoolStartBlock?: number;
|
|
22
|
+
};
|
|
23
|
+
export type Dependencies = {
|
|
24
|
+
provider: Provider;
|
|
25
|
+
};
|
|
26
|
+
export type StakeData = {
|
|
27
|
+
cumulativeBalance: BigNumber;
|
|
28
|
+
amountAirdropped: BigNumber;
|
|
29
|
+
};
|
|
30
|
+
export type Pool = {
|
|
31
|
+
address: string;
|
|
32
|
+
totalPoolSize: string;
|
|
33
|
+
l1Token: string;
|
|
34
|
+
lpToken: string;
|
|
35
|
+
liquidReserves: string;
|
|
36
|
+
exchangeRateCurrent: string;
|
|
37
|
+
exchangeRatePrevious: string;
|
|
38
|
+
estimatedApy: string;
|
|
39
|
+
estimatedApr: string;
|
|
40
|
+
blocksElapsed: number;
|
|
41
|
+
secondsElapsed: number;
|
|
42
|
+
utilizedReserves: string;
|
|
43
|
+
projectedApr: string;
|
|
44
|
+
liquidityUtilizationCurrent: string;
|
|
45
|
+
};
|
|
46
|
+
export type User = {
|
|
47
|
+
address: string;
|
|
48
|
+
poolAddress: string;
|
|
49
|
+
lpTokens: string;
|
|
50
|
+
positionValue: string;
|
|
51
|
+
totalDeposited: string;
|
|
52
|
+
feesEarned: string;
|
|
53
|
+
};
|
|
54
|
+
export type Transaction = {
|
|
55
|
+
id: string;
|
|
56
|
+
state: "requested" | "submitted" | "mined" | "error";
|
|
57
|
+
toAddress: string;
|
|
58
|
+
fromAddress: string;
|
|
59
|
+
type: "Add Liquidity" | "Remove Liquidity";
|
|
60
|
+
description: string;
|
|
61
|
+
request?: TransactionRequest;
|
|
62
|
+
hash?: string;
|
|
63
|
+
receipt?: TransactionReceipt;
|
|
64
|
+
error?: Error;
|
|
65
|
+
};
|
|
66
|
+
export type Token = {
|
|
67
|
+
decimals: string;
|
|
68
|
+
symbol: string;
|
|
69
|
+
name: string;
|
|
70
|
+
};
|
|
71
|
+
export type State = {
|
|
72
|
+
pools: Record<string, Pool>;
|
|
73
|
+
users: Record<string, Record<string, User>>;
|
|
74
|
+
transactions: Record<string, Transaction>;
|
|
75
|
+
error?: Error;
|
|
76
|
+
};
|
|
77
|
+
export type EmitState = (path: string[], data: Pool | User | Transaction | Error) => void;
|
|
78
|
+
export type PooledToken = {
|
|
79
|
+
lpToken: string;
|
|
80
|
+
isEnabled: boolean;
|
|
81
|
+
lastLpFeeUpdate: number;
|
|
82
|
+
utilizedReserves: BigNumber;
|
|
83
|
+
liquidReserves: BigNumber;
|
|
84
|
+
undistributedLpFees: BigNumber;
|
|
85
|
+
};
|
|
86
|
+
type EventIdParams = {
|
|
87
|
+
blockNumber: number;
|
|
88
|
+
transactionIndex: number;
|
|
89
|
+
logIndex: number;
|
|
90
|
+
};
|
|
91
|
+
export declare class PoolEventState {
|
|
92
|
+
private contract;
|
|
93
|
+
private startBlock;
|
|
94
|
+
private seen;
|
|
95
|
+
private iface;
|
|
96
|
+
private events;
|
|
97
|
+
constructor(contract: hubPool.Instance, startBlock?: number);
|
|
98
|
+
private makeId;
|
|
99
|
+
hasEvent(params: EventIdParams): boolean;
|
|
100
|
+
private addEvent;
|
|
101
|
+
private filterSeen;
|
|
102
|
+
private processEvent;
|
|
103
|
+
private processEvents;
|
|
104
|
+
read(endBlock: number, l1TokenAddress?: string, userAddress?: string): Promise<hubPool.EventState>;
|
|
105
|
+
makeEventFromLog: (log: Log) => uma.SerializableEvent;
|
|
106
|
+
getL1TokenFromReceipt(receipt: TransactionReceipt): string;
|
|
107
|
+
readTxReceipt(receipt: TransactionReceipt): hubPool.EventState;
|
|
108
|
+
}
|
|
109
|
+
declare class UserState {
|
|
110
|
+
private contract;
|
|
111
|
+
private userAddress;
|
|
112
|
+
private startBlock;
|
|
113
|
+
private acceleratingDistributorContractAddress;
|
|
114
|
+
private seen;
|
|
115
|
+
private events;
|
|
116
|
+
constructor(contract: uma.clients.erc20.Instance, userAddress: string, startBlock?: number, acceleratingDistributorContractAddress?: string);
|
|
117
|
+
private makeId;
|
|
118
|
+
hasEvent(params: EventIdParams): boolean;
|
|
119
|
+
private addEvent;
|
|
120
|
+
private filterSeen;
|
|
121
|
+
/**
|
|
122
|
+
* readEvents. Fetch and cache events for the user.
|
|
123
|
+
*
|
|
124
|
+
* @param {number} endBlock
|
|
125
|
+
*/
|
|
126
|
+
readEvents(endBlock: number): Promise<uma.clients.erc20.Transfer[]>;
|
|
127
|
+
/**
|
|
128
|
+
* read. Reads the state for the user, building state from events as well as contract calls.
|
|
129
|
+
*
|
|
130
|
+
* @param {number} endBlock
|
|
131
|
+
*/
|
|
132
|
+
read(endBlock: number): Promise<{
|
|
133
|
+
transferEvents: import("@uma/contracts-frontend").TypedEventEthers<[string, string, uma.oracle.types.ethers.BigNumber] & {
|
|
134
|
+
from: string;
|
|
135
|
+
to: string;
|
|
136
|
+
value: uma.oracle.types.ethers.BigNumber;
|
|
137
|
+
}>[];
|
|
138
|
+
balanceTransferred: string;
|
|
139
|
+
address: string;
|
|
140
|
+
balanceOf: uma.oracle.types.ethers.BigNumber;
|
|
141
|
+
}>;
|
|
142
|
+
}
|
|
143
|
+
export declare function calculateRemoval(amountWei: BigNumber, percentWei: BigNumber): {
|
|
144
|
+
recieve: string;
|
|
145
|
+
remain: string;
|
|
146
|
+
};
|
|
147
|
+
export declare function previewRemoval(values: {
|
|
148
|
+
positionValue: BigNumberish;
|
|
149
|
+
feesEarned: BigNumberish;
|
|
150
|
+
totalDeposited: BigNumberish;
|
|
151
|
+
}, percentFloat: number): {
|
|
152
|
+
position: {
|
|
153
|
+
recieve: string;
|
|
154
|
+
remain: string;
|
|
155
|
+
};
|
|
156
|
+
fees: {
|
|
157
|
+
recieve: string;
|
|
158
|
+
remain: string;
|
|
159
|
+
};
|
|
160
|
+
total: {
|
|
161
|
+
recieve: string;
|
|
162
|
+
remain: string;
|
|
163
|
+
};
|
|
164
|
+
};
|
|
165
|
+
export declare class ReadPoolClient {
|
|
166
|
+
private address;
|
|
167
|
+
private provider;
|
|
168
|
+
private poolState;
|
|
169
|
+
private contract;
|
|
170
|
+
constructor(address: string, provider: Provider);
|
|
171
|
+
read(tokenAddress: string, latestBlock: number): Promise<{
|
|
172
|
+
lpToken: string;
|
|
173
|
+
isEnabled: boolean;
|
|
174
|
+
lastLpFeeUpdate: number;
|
|
175
|
+
utilizedReserves: uma.oracle.types.ethers.BigNumber;
|
|
176
|
+
liquidReserves: uma.oracle.types.ethers.BigNumber;
|
|
177
|
+
undistributedLpFees: uma.oracle.types.ethers.BigNumber;
|
|
178
|
+
address: string;
|
|
179
|
+
l1Token: string;
|
|
180
|
+
latestBlock: number;
|
|
181
|
+
previousBlock: number | undefined;
|
|
182
|
+
exchangeRatePrevious: uma.oracle.types.ethers.BigNumber;
|
|
183
|
+
exchangeRateCurrent: uma.oracle.types.ethers.BigNumber;
|
|
184
|
+
liquidityUtilizationCurrent: uma.oracle.types.ethers.BigNumber;
|
|
185
|
+
}>;
|
|
186
|
+
}
|
|
187
|
+
export declare function validateWithdraw(pool: Pool, user: User, lpTokenAmount: BigNumberish): {
|
|
188
|
+
lpTokenAmount: uma.oracle.types.ethers.BigNumberish;
|
|
189
|
+
l1TokensToReturn: string;
|
|
190
|
+
};
|
|
191
|
+
export declare class Client {
|
|
192
|
+
readonly config: Config;
|
|
193
|
+
readonly deps: Dependencies;
|
|
194
|
+
private emit;
|
|
195
|
+
private transactionManagers;
|
|
196
|
+
private hubPool;
|
|
197
|
+
private acceleratingDistributor;
|
|
198
|
+
private merkleDistributor;
|
|
199
|
+
readonly state: State;
|
|
200
|
+
private poolEvents;
|
|
201
|
+
private erc20s;
|
|
202
|
+
private intervalStarted;
|
|
203
|
+
private configStoreClient;
|
|
204
|
+
private exchangeRateTable;
|
|
205
|
+
private userServices;
|
|
206
|
+
constructor(config: Config, deps: Dependencies, emit: EmitState);
|
|
207
|
+
getOrCreateErc20Contract(address: string): uma.clients.erc20.Instance;
|
|
208
|
+
getOrCreatePoolContract(): hubPool.Instance;
|
|
209
|
+
createHubPoolContract(signerOrProvider: Signer | Provider): hubPool.Instance;
|
|
210
|
+
private getOrCreatePoolEvents;
|
|
211
|
+
createAcceleratingDistributorContract(signerOrProvider: Signer | Provider): AcceleratingDistributor;
|
|
212
|
+
createMerkleDistributorContract(signerOrProvider: Signer | Provider): MerkleDistributor;
|
|
213
|
+
getOrCreateAcceleratingDistributorContract(): AcceleratingDistributor;
|
|
214
|
+
getOrCreateMerkleDistributorContract(): MerkleDistributor;
|
|
215
|
+
private getOrCreateUserService;
|
|
216
|
+
private updateExchangeRateTable;
|
|
217
|
+
resolveStakingData(lpToken: string, l1TokenAddress: string, userState: Awaited<ReturnType<UserState["read"]>>): Promise<StakeData>;
|
|
218
|
+
calculateLpTransferValue(l1TokenAddress: string, userState: Awaited<ReturnType<UserState["read"]>>): Promise<uma.oracle.types.ethers.BigNumber>;
|
|
219
|
+
private getOrCreateTransactionManager;
|
|
220
|
+
addEthLiquidity(signer: Signer, l1TokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
221
|
+
addTokenLiquidity(signer: Signer, l1Token: string, l1TokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
222
|
+
validateWithdraw(l1Token: string, userAddress: string, lpAmount: BigNumberish): Promise<{
|
|
223
|
+
lpTokenAmount: uma.oracle.types.ethers.BigNumberish;
|
|
224
|
+
l1TokensToReturn: string;
|
|
225
|
+
}>;
|
|
226
|
+
removeTokenLiquidity(signer: Signer, l1Token: string, lpTokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
227
|
+
removeEthliquidity(signer: Signer, lpTokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
228
|
+
getPoolState(l1TokenAddress: string): Pool;
|
|
229
|
+
hasPoolState(l1TokenAddress: string): boolean;
|
|
230
|
+
setUserState(l1TokenAddress: string, userAddress: string, state: User): User;
|
|
231
|
+
getUserState(l1TokenAddress: string, userAddress: string): User;
|
|
232
|
+
hasUserState(l1TokenAddress: string, userAddress: string): boolean;
|
|
233
|
+
hasTxState(id: string): boolean;
|
|
234
|
+
getTxState(id: string): Transaction;
|
|
235
|
+
private updateAndEmitUser;
|
|
236
|
+
private updateUserWithTransaction;
|
|
237
|
+
updateUser(userAddress: string, l1TokenAddress: string): Promise<void>;
|
|
238
|
+
updatePool(l1TokenAddress: string, overrideLatestBlock?: Block): Promise<void>;
|
|
239
|
+
updateTransactions(): Promise<void>;
|
|
240
|
+
startInterval(delayMs?: number): void;
|
|
241
|
+
stopInterval(): void;
|
|
242
|
+
}
|