@defisaver/positions-sdk 0.0.184 → 0.0.185-dev-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/cjs/aaveV3/index.js +1 -1
  2. package/cjs/compoundV3/index.js +11 -1
  3. package/cjs/config/contracts.d.ts +446 -216
  4. package/cjs/config/contracts.js +22 -0
  5. package/cjs/contracts.d.ts +1 -0
  6. package/cjs/contracts.js +2 -1
  7. package/cjs/markets/aave/marketAssets.js +1 -1
  8. package/cjs/markets/compound/index.d.ts +4 -0
  9. package/cjs/markets/compound/index.js +41 -1
  10. package/cjs/markets/compound/marketsAssets.d.ts +14 -0
  11. package/cjs/markets/compound/marketsAssets.js +17 -3
  12. package/cjs/markets/morphoBlue/index.d.ts +8 -0
  13. package/cjs/markets/morphoBlue/index.js +70 -1
  14. package/cjs/services/priceService.d.ts +1 -0
  15. package/cjs/services/priceService.js +23 -1
  16. package/cjs/types/compound.d.ts +3 -1
  17. package/cjs/types/compound.js +2 -0
  18. package/cjs/types/contracts/generated/CUSDSv3.d.ts +441 -0
  19. package/cjs/types/contracts/generated/CUSDSv3.js +5 -0
  20. package/cjs/types/contracts/generated/CWstETHv3.d.ts +441 -0
  21. package/cjs/types/contracts/generated/CWstETHv3.js +5 -0
  22. package/cjs/types/contracts/generated/WstETHPriceFeed.d.ts +39 -0
  23. package/cjs/types/contracts/generated/WstETHPriceFeed.js +5 -0
  24. package/cjs/types/contracts/generated/index.d.ts +3 -0
  25. package/cjs/types/morphoBlue.d.ts +5 -1
  26. package/cjs/types/morphoBlue.js +4 -0
  27. package/esm/aaveV3/index.js +1 -1
  28. package/esm/compoundV3/index.js +12 -2
  29. package/esm/config/contracts.d.ts +446 -216
  30. package/esm/config/contracts.js +22 -0
  31. package/esm/contracts.d.ts +1 -0
  32. package/esm/contracts.js +1 -0
  33. package/esm/markets/aave/marketAssets.js +1 -1
  34. package/esm/markets/compound/index.d.ts +4 -0
  35. package/esm/markets/compound/index.js +39 -1
  36. package/esm/markets/compound/marketsAssets.d.ts +14 -0
  37. package/esm/markets/compound/marketsAssets.js +16 -2
  38. package/esm/markets/morphoBlue/index.d.ts +8 -0
  39. package/esm/markets/morphoBlue/index.js +64 -0
  40. package/esm/services/priceService.d.ts +1 -0
  41. package/esm/services/priceService.js +22 -1
  42. package/esm/types/compound.d.ts +3 -1
  43. package/esm/types/compound.js +2 -0
  44. package/esm/types/contracts/generated/CUSDSv3.d.ts +441 -0
  45. package/esm/types/contracts/generated/CUSDSv3.js +4 -0
  46. package/esm/types/contracts/generated/CWstETHv3.d.ts +441 -0
  47. package/esm/types/contracts/generated/CWstETHv3.js +4 -0
  48. package/esm/types/contracts/generated/WstETHPriceFeed.d.ts +39 -0
  49. package/esm/types/contracts/generated/WstETHPriceFeed.js +4 -0
  50. package/esm/types/contracts/generated/index.d.ts +3 -0
  51. package/esm/types/morphoBlue.d.ts +5 -1
  52. package/esm/types/morphoBlue.js +4 -0
  53. package/package.json +2 -2
  54. package/src/aaveV3/index.ts +1 -1
  55. package/src/compoundV3/index.ts +15 -2
  56. package/src/config/contracts.js +22 -0
  57. package/src/contracts.ts +1 -0
  58. package/src/markets/aave/marketAssets.ts +1 -1
  59. package/src/markets/compound/index.ts +42 -2
  60. package/src/markets/compound/marketsAssets.ts +20 -2
  61. package/src/markets/morphoBlue/index.ts +69 -0
  62. package/src/services/priceService.ts +32 -1
  63. package/src/types/compound.ts +2 -0
  64. package/src/types/contracts/generated/CUSDSv3.ts +685 -0
  65. package/src/types/contracts/generated/CWstETHv3.ts +685 -0
  66. package/src/types/contracts/generated/WstETHPriceFeed.ts +59 -0
  67. package/src/types/contracts/generated/index.ts +3 -0
  68. package/src/types/morphoBlue.ts +4 -0
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = exports.MORPHO_BLUE_CBBTC_USDC_860_BASE = exports.MORPHO_BLUE_CBBTC_ETH_915_BASE = exports.MORPHO_BLUE_RETH_ETH_945_BASE = exports.MORPHO_BLUE_RETH_USDC_860_BASE = exports.MORPHO_BLUE_ETH_USDC_860_BASE = exports.MORPHO_BLUE_CBETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE_13c42741 = exports.MORPHO_BLUE_WSTETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d = exports.MORPHO_BLUE_CBETH_USDC_860_BASE = exports.MORPHO_BLUE_RETH_ETH_945 = exports.MORPHO_BLUE_USDE_DAI_945 = exports.MORPHO_BLUE_USDE_DAI_915 = exports.MORPHO_BLUE_USDE_DAI_860 = exports.MORPHO_BLUE_USDE_DAI_770 = exports.MORPHO_BLUE_SUSDE_DAI_945 = exports.MORPHO_BLUE_SUSDE_DAI_915 = exports.MORPHO_BLUE_SUSDE_DAI_860 = exports.MORPHO_BLUE_SUSDE_DAI_770 = exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_860 = exports.MORPHO_BLUE_EZETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_860 = exports.MORPHO_BLUE_SUSDE_USDC_915 = exports.MORPHO_BLUE_CBBTC_USDC_860 = exports.MORPHO_BLUE_CBBTC_ETH_915 = exports.MORPHO_BLUE_TBTC_USDC = exports.MORPHO_BLUE_MKR_USDC = exports.MORPHO_BLUE_SDAI_ETH = exports.MORPHO_BLUE_SUSDE_USDT = exports.MORPHO_BLUE_USDE_USDT = exports.MORPHO_BLUE_WSTETH_PYUSD = exports.MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_USDT = exports.MORPHO_BLUE_WBTC_ETH = exports.MORPHO_BLUE_WBTC_PYUSD = exports.MORPHO_BLUE_WBTC_USDT = exports.MORPHO_BLUE_ETH_USDC = exports.MORPHO_BLUE_WBTC_USDC = exports.MORPHO_BLUE_SDAI_USDC = exports.MORPHO_BLUE_WSTETH_USDC = void 0;
3
+ exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE = exports.MORPHO_BLUE_LBTC_WBTC_945 = exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = exports.MORPHO_BLUE_CBBTC_USDC_860_BASE = exports.MORPHO_BLUE_CBBTC_ETH_915_BASE = exports.MORPHO_BLUE_RETH_ETH_945_BASE = exports.MORPHO_BLUE_RETH_USDC_860_BASE = exports.MORPHO_BLUE_ETH_USDC_860_BASE = exports.MORPHO_BLUE_CBETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE_13c42741 = exports.MORPHO_BLUE_WSTETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d = exports.MORPHO_BLUE_CBETH_USDC_860_BASE = exports.MORPHO_BLUE_RETH_ETH_945 = exports.MORPHO_BLUE_USDE_DAI_945 = exports.MORPHO_BLUE_USDE_DAI_915 = exports.MORPHO_BLUE_USDE_DAI_860 = exports.MORPHO_BLUE_USDE_DAI_770 = exports.MORPHO_BLUE_SUSDE_DAI_945 = exports.MORPHO_BLUE_SUSDE_DAI_915 = exports.MORPHO_BLUE_SUSDE_DAI_860 = exports.MORPHO_BLUE_SUSDE_DAI_770 = exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_860 = exports.MORPHO_BLUE_EZETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_860 = exports.MORPHO_BLUE_SUSDE_USDC_915 = exports.MORPHO_BLUE_CBBTC_USDC_860 = exports.MORPHO_BLUE_CBBTC_ETH_915 = exports.MORPHO_BLUE_TBTC_USDC = exports.MORPHO_BLUE_MKR_USDC = exports.MORPHO_BLUE_SDAI_ETH = exports.MORPHO_BLUE_SUSDE_USDT = exports.MORPHO_BLUE_USDE_USDT = exports.MORPHO_BLUE_WSTETH_PYUSD = exports.MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_USDT = exports.MORPHO_BLUE_WBTC_ETH = exports.MORPHO_BLUE_WBTC_PYUSD = exports.MORPHO_BLUE_WBTC_USDT = exports.MORPHO_BLUE_ETH_USDC = exports.MORPHO_BLUE_WBTC_USDC = exports.MORPHO_BLUE_SDAI_USDC = exports.MORPHO_BLUE_WSTETH_USDC = void 0;
4
+ exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.MORPHO_BLUE_CBBTC_EURC_860_BASE = exports.MORPHO_BLUE_WSTETH_EURC_860_BASE = void 0;
4
5
  const utils_1 = require("../../services/utils");
5
6
  const types_1 = require("../../types");
6
7
  const common_1 = require("../../types/common");
@@ -778,6 +779,70 @@ const MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = (networkId = common_1.NetworkNumbe
778
779
  protocolName: 'morpho-blue',
779
780
  });
780
781
  exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE;
782
+ const MORPHO_BLUE_LBTC_WBTC_945 = (networkId = common_1.NetworkNumber.Eth) => ({
783
+ chainIds: [common_1.NetworkNumber.Eth],
784
+ label: 'Morpho',
785
+ shortLabel: 'LBTC/WBTC',
786
+ value: types_1.MorphoBlueVersions.MorphoBlueLBTCWBTC_945,
787
+ url: 'lbtcwbtc-f6a05662',
788
+ loanToken: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599',
789
+ collateralToken: '0x8236a87084f8B84306f72007F36F2618A5634494',
790
+ oracle: '0xa98105B8227E0f2157816Feb7A331364A9B74F80',
791
+ oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
792
+ irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
793
+ lltv: 0.945,
794
+ marketId: '0xf6a056627a51e511ec7f48332421432ea6971fc148d8f3c451e14ea108026549',
795
+ protocolName: 'morpho-blue',
796
+ });
797
+ exports.MORPHO_BLUE_LBTC_WBTC_945 = MORPHO_BLUE_LBTC_WBTC_945;
798
+ const MORPHO_BLUE_LBTC_CBBTC_945_BASE = (networkId = common_1.NetworkNumber.Eth) => ({
799
+ chainIds: [common_1.NetworkNumber.Base],
800
+ label: 'Morpho',
801
+ shortLabel: 'LBTC/cbBTC',
802
+ value: types_1.MorphoBlueVersions.MorphoBlueLBTCCbBTC_945_Base,
803
+ url: 'lbtccbbtc-30767836',
804
+ loanToken: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',
805
+ collateralToken: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
806
+ oracle: '0x9Ae0E86e88AEE94B700240eBE0BD17D969BAD0EA',
807
+ oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
808
+ irm: '0x46415998764C29aB2a25CbeA6254146D50D22687',
809
+ lltv: 0.945,
810
+ marketId: '0x30767836635facec1282e6ef4a5981406ed4e72727b3a63a3a72c74e8279a8d7',
811
+ protocolName: 'morpho-blue',
812
+ });
813
+ exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE = MORPHO_BLUE_LBTC_CBBTC_945_BASE;
814
+ const MORPHO_BLUE_WSTETH_EURC_860_BASE = (networkId = common_1.NetworkNumber.Eth) => ({
815
+ chainIds: [common_1.NetworkNumber.Base],
816
+ label: 'Morpho',
817
+ shortLabel: 'wstETH/EURC',
818
+ value: types_1.MorphoBlueVersions.MorphoBlueWstEthEURC_860_Base,
819
+ url: 'wstetheurc-f7e40290',
820
+ loanToken: '0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42',
821
+ collateralToken: '0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452',
822
+ oracle: '0xa54122f0E0766258377Ffe732e454A3248f454F4',
823
+ oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
824
+ irm: '0x46415998764C29aB2a25CbeA6254146D50D22687',
825
+ lltv: 0.86,
826
+ marketId: '0xf7e40290f8ca1d5848b3c129502599aa0f0602eb5f5235218797a34242719561',
827
+ protocolName: 'morpho-blue',
828
+ });
829
+ exports.MORPHO_BLUE_WSTETH_EURC_860_BASE = MORPHO_BLUE_WSTETH_EURC_860_BASE;
830
+ const MORPHO_BLUE_CBBTC_EURC_860_BASE = (networkId = common_1.NetworkNumber.Eth) => ({
831
+ chainIds: [common_1.NetworkNumber.Base],
832
+ label: 'Morpho',
833
+ shortLabel: 'cbBTC/EURC',
834
+ value: types_1.MorphoBlueVersions.MorphoBlueCbBTCEURC_860_Base,
835
+ url: 'cbbtceurc-67ebd84b',
836
+ loanToken: '0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42',
837
+ collateralToken: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',
838
+ oracle: '0xA857411CB2231a6A87a3bEF987a4cED8A067d799',
839
+ oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
840
+ irm: '0x46415998764C29aB2a25CbeA6254146D50D22687',
841
+ lltv: 0.86,
842
+ marketId: '0x67ebd84b2fb39e3bc5a13d97e4c07abe1ea617e40654826e9abce252e95f049e',
843
+ protocolName: 'morpho-blue',
844
+ });
845
+ exports.MORPHO_BLUE_CBBTC_EURC_860_BASE = MORPHO_BLUE_CBBTC_EURC_860_BASE;
781
846
  const MorphoBlueMarkets = (networkId) => ({
782
847
  [types_1.MorphoBlueVersions.MorphoBlueWstEthUSDC]: (0, exports.MORPHO_BLUE_WSTETH_USDC)(networkId),
783
848
  [types_1.MorphoBlueVersions.MorphoBlueSDAIUSDC]: (0, exports.MORPHO_BLUE_SDAI_USDC)(networkId),
@@ -802,6 +867,7 @@ const MorphoBlueMarkets = (networkId) => ({
802
867
  [types_1.MorphoBlueVersions.MorphoBlueCbBTCUSDC_860]: (0, exports.MORPHO_BLUE_CBBTC_USDC_860)(networkId),
803
868
  [types_1.MorphoBlueVersions.MorphoBlueREthEth_945]: (0, exports.MORPHO_BLUE_RETH_ETH_945)(networkId),
804
869
  [types_1.MorphoBlueVersions.MorphoBlueSUSDeUSDC_915]: (0, exports.MORPHO_BLUE_SUSDE_USDC_915)(networkId),
870
+ [types_1.MorphoBlueVersions.MorphoBlueLBTCWBTC_945]: (0, exports.MORPHO_BLUE_LBTC_WBTC_945)(networkId),
805
871
  // wstETH/WETH
806
872
  [types_1.MorphoBlueVersions.MorphoBlueWstEthEth_945]: (0, exports.MORPHO_BLUE_WSTETH_ETH_945)(networkId),
807
873
  [types_1.MorphoBlueVersions.MorphoBlueWstEthEth_945_Exchange_Rate]: (0, exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE)(networkId),
@@ -826,6 +892,9 @@ const MorphoBlueMarkets = (networkId) => ({
826
892
  [types_1.MorphoBlueVersions.MorphoBlueREthEth_945_Base]: (0, exports.MORPHO_BLUE_RETH_ETH_945_BASE)(networkId),
827
893
  [types_1.MorphoBlueVersions.MorphoBlueCbBTCEth_915_Base]: (0, exports.MORPHO_BLUE_CBBTC_ETH_915_BASE)(networkId),
828
894
  [types_1.MorphoBlueVersions.MorphoBlueCbBTCUSDC_860_Base]: (0, exports.MORPHO_BLUE_CBBTC_USDC_860_BASE)(networkId),
895
+ [types_1.MorphoBlueVersions.MorphoBlueCbBTCEURC_860_Base]: (0, exports.MORPHO_BLUE_CBBTC_EURC_860_BASE)(networkId),
896
+ [types_1.MorphoBlueVersions.MorphoBlueWstEthEURC_860_Base]: (0, exports.MORPHO_BLUE_WSTETH_EURC_860_BASE)(networkId),
897
+ [types_1.MorphoBlueVersions.MorphoBlueLBTCCbBTC_945_Base]: (0, exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE)(networkId),
829
898
  // wsuperOETHb/WETH Base
830
899
  [types_1.MorphoBlueVersions.MorphoBlueWsuperOETHbWETH_915_Base]: (0, exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE)(networkId),
831
900
  // cbETH/WETH Base
@@ -2,3 +2,4 @@ import Web3 from 'web3';
2
2
  export declare const getEthPrice: (web3: Web3) => Promise<string>;
3
3
  export declare const getUSDCPrice: (web3: Web3) => Promise<string>;
4
4
  export declare const getCompPrice: (web3: Web3) => Promise<string>;
5
+ export declare const getWstETHPrice: (web3: Web3) => Promise<string>;
@@ -12,10 +12,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.getCompPrice = exports.getUSDCPrice = exports.getEthPrice = void 0;
15
+ exports.getWstETHPrice = exports.getCompPrice = exports.getUSDCPrice = exports.getEthPrice = void 0;
16
16
  const decimal_js_1 = __importDefault(require("decimal.js"));
17
17
  const contracts_1 = require("../contracts");
18
18
  const common_1 = require("../types/common");
19
+ const multicall_1 = require("../multicall");
19
20
  const getEthPrice = (web3) => __awaiter(void 0, void 0, void 0, function* () {
20
21
  const contract = (0, contracts_1.ETHPriceFeedContract)(web3, common_1.NetworkNumber.Eth);
21
22
  const price = yield contract.methods.latestAnswer().call();
@@ -34,3 +35,24 @@ const getCompPrice = (web3) => __awaiter(void 0, void 0, void 0, function* () {
34
35
  return new decimal_js_1.default(price).div(1e8).toString();
35
36
  });
36
37
  exports.getCompPrice = getCompPrice;
38
+ const getWstETHPrice = (web3) => __awaiter(void 0, void 0, void 0, function* () {
39
+ const wstETHFeedContract = (0, contracts_1.WstETHPriceFeedContract)(web3, common_1.NetworkNumber.Eth);
40
+ const ethFeedContract = (0, contracts_1.ETHPriceFeedContract)(web3, common_1.NetworkNumber.Eth);
41
+ const calls = [
42
+ {
43
+ target: ethFeedContract.options.address,
44
+ abiItem: ethFeedContract.options.jsonInterface.find(({ name }) => name === 'latestAnswer'),
45
+ params: [],
46
+ },
47
+ {
48
+ target: wstETHFeedContract.options.address,
49
+ abiItem: wstETHFeedContract.options.jsonInterface.find(({ name }) => name === 'latestRoundData'),
50
+ params: [],
51
+ },
52
+ ];
53
+ const multicallRes = yield (0, multicall_1.multicall)(calls, web3);
54
+ const ethPrice = new decimal_js_1.default(multicallRes[0][0]).div(1e8);
55
+ const wstETHRate = new decimal_js_1.default(multicallRes[1].answer).div(1e8);
56
+ return new decimal_js_1.default(ethPrice).mul(wstETHRate).toString();
57
+ });
58
+ exports.getWstETHPrice = getWstETHPrice;
@@ -5,7 +5,9 @@ export declare enum CompoundVersions {
5
5
  'CompoundV3USDCe' = "v3-USDC.e",
6
6
  'CompoundV3ETH' = "v3-ETH",
7
7
  'CompoundV3USDbC' = "v3-USDbC",
8
- 'CompoundV3USDT' = "v3-USDT"
8
+ 'CompoundV3USDT' = "v3-USDT",
9
+ 'CompoundV3USDS' = "v3-USDS",
10
+ 'CompoundV3wstETH' = "v3-wstETH"
9
11
  }
10
12
  export interface CompoundBulkerOptions {
11
13
  supply: number | string;
@@ -9,4 +9,6 @@ var CompoundVersions;
9
9
  CompoundVersions["CompoundV3ETH"] = "v3-ETH";
10
10
  CompoundVersions["CompoundV3USDbC"] = "v3-USDbC";
11
11
  CompoundVersions["CompoundV3USDT"] = "v3-USDT";
12
+ CompoundVersions["CompoundV3USDS"] = "v3-USDS";
13
+ CompoundVersions["CompoundV3wstETH"] = "v3-wstETH";
12
14
  })(CompoundVersions || (exports.CompoundVersions = CompoundVersions = {}));
@@ -0,0 +1,441 @@
1
+ /// <reference types="node" />
2
+ import type BN from "bn.js";
3
+ import type { ContractOptions } from "web3-eth-contract";
4
+ import type { EventLog } from "web3-core";
5
+ import type { EventEmitter } from "events";
6
+ import type { Callback, NonPayableTransactionObject, BlockType, ContractEventLog, BaseContract } from "./types";
7
+ export interface EventOptions {
8
+ filter?: object;
9
+ fromBlock?: BlockType;
10
+ topics?: string[];
11
+ }
12
+ export declare namespace CometConfiguration {
13
+ type AssetConfigStruct = [
14
+ string,
15
+ string,
16
+ number | string | BN,
17
+ number | string | BN,
18
+ number | string | BN,
19
+ number | string | BN,
20
+ number | string | BN
21
+ ] | {
22
+ asset: string;
23
+ priceFeed: string;
24
+ decimals: number | string | BN;
25
+ borrowCollateralFactor: number | string | BN;
26
+ liquidateCollateralFactor: number | string | BN;
27
+ liquidationFactor: number | string | BN;
28
+ supplyCap: number | string | BN;
29
+ };
30
+ type AssetConfigStructOutputArray = [
31
+ string,
32
+ string,
33
+ string,
34
+ string,
35
+ string,
36
+ string,
37
+ string
38
+ ];
39
+ type AssetConfigStructOutputStruct = {
40
+ asset: string;
41
+ priceFeed: string;
42
+ decimals: string;
43
+ borrowCollateralFactor: string;
44
+ liquidateCollateralFactor: string;
45
+ liquidationFactor: string;
46
+ supplyCap: string;
47
+ };
48
+ type AssetConfigStructOutput = AssetConfigStructOutputArray & AssetConfigStructOutputStruct;
49
+ type ConfigurationStruct = [
50
+ string,
51
+ string,
52
+ string,
53
+ string,
54
+ string,
55
+ number | string | BN,
56
+ number | string | BN,
57
+ number | string | BN,
58
+ number | string | BN,
59
+ number | string | BN,
60
+ number | string | BN,
61
+ number | string | BN,
62
+ number | string | BN,
63
+ number | string | BN,
64
+ number | string | BN,
65
+ number | string | BN,
66
+ number | string | BN,
67
+ number | string | BN,
68
+ number | string | BN,
69
+ number | string | BN,
70
+ CometConfiguration.AssetConfigStruct[]
71
+ ] | {
72
+ governor: string;
73
+ pauseGuardian: string;
74
+ baseToken: string;
75
+ baseTokenPriceFeed: string;
76
+ extensionDelegate: string;
77
+ supplyKink: number | string | BN;
78
+ supplyPerYearInterestRateSlopeLow: number | string | BN;
79
+ supplyPerYearInterestRateSlopeHigh: number | string | BN;
80
+ supplyPerYearInterestRateBase: number | string | BN;
81
+ borrowKink: number | string | BN;
82
+ borrowPerYearInterestRateSlopeLow: number | string | BN;
83
+ borrowPerYearInterestRateSlopeHigh: number | string | BN;
84
+ borrowPerYearInterestRateBase: number | string | BN;
85
+ storeFrontPriceFactor: number | string | BN;
86
+ trackingIndexScale: number | string | BN;
87
+ baseTrackingSupplySpeed: number | string | BN;
88
+ baseTrackingBorrowSpeed: number | string | BN;
89
+ baseMinForRewards: number | string | BN;
90
+ baseBorrowMin: number | string | BN;
91
+ targetReserves: number | string | BN;
92
+ assetConfigs: CometConfiguration.AssetConfigStruct[];
93
+ };
94
+ type ConfigurationStructOutputArray = [
95
+ string,
96
+ string,
97
+ string,
98
+ string,
99
+ string,
100
+ string,
101
+ string,
102
+ string,
103
+ string,
104
+ string,
105
+ string,
106
+ string,
107
+ string,
108
+ string,
109
+ string,
110
+ string,
111
+ string,
112
+ string,
113
+ string,
114
+ string,
115
+ CometConfiguration.AssetConfigStructOutput[]
116
+ ];
117
+ type ConfigurationStructOutputStruct = {
118
+ governor: string;
119
+ pauseGuardian: string;
120
+ baseToken: string;
121
+ baseTokenPriceFeed: string;
122
+ extensionDelegate: string;
123
+ supplyKink: string;
124
+ supplyPerYearInterestRateSlopeLow: string;
125
+ supplyPerYearInterestRateSlopeHigh: string;
126
+ supplyPerYearInterestRateBase: string;
127
+ borrowKink: string;
128
+ borrowPerYearInterestRateSlopeLow: string;
129
+ borrowPerYearInterestRateSlopeHigh: string;
130
+ borrowPerYearInterestRateBase: string;
131
+ storeFrontPriceFactor: string;
132
+ trackingIndexScale: string;
133
+ baseTrackingSupplySpeed: string;
134
+ baseTrackingBorrowSpeed: string;
135
+ baseMinForRewards: string;
136
+ baseBorrowMin: string;
137
+ targetReserves: string;
138
+ assetConfigs: CometConfiguration.AssetConfigStructOutput[];
139
+ };
140
+ type ConfigurationStructOutput = ConfigurationStructOutputArray & ConfigurationStructOutputStruct;
141
+ }
142
+ export declare namespace CometCore {
143
+ type AssetInfoStruct = [
144
+ number | string | BN,
145
+ string,
146
+ string,
147
+ number | string | BN,
148
+ number | string | BN,
149
+ number | string | BN,
150
+ number | string | BN,
151
+ number | string | BN
152
+ ] | {
153
+ offset: number | string | BN;
154
+ asset: string;
155
+ priceFeed: string;
156
+ scale: number | string | BN;
157
+ borrowCollateralFactor: number | string | BN;
158
+ liquidateCollateralFactor: number | string | BN;
159
+ liquidationFactor: number | string | BN;
160
+ supplyCap: number | string | BN;
161
+ };
162
+ type AssetInfoStructOutputArray = [
163
+ string,
164
+ string,
165
+ string,
166
+ string,
167
+ string,
168
+ string,
169
+ string,
170
+ string
171
+ ];
172
+ type AssetInfoStructOutputStruct = {
173
+ offset: string;
174
+ asset: string;
175
+ priceFeed: string;
176
+ scale: string;
177
+ borrowCollateralFactor: string;
178
+ liquidateCollateralFactor: string;
179
+ liquidationFactor: string;
180
+ supplyCap: string;
181
+ };
182
+ type AssetInfoStructOutput = AssetInfoStructOutputArray & AssetInfoStructOutputStruct;
183
+ }
184
+ export type AbsorbCollateral = ContractEventLog<{
185
+ absorber: string;
186
+ borrower: string;
187
+ asset: string;
188
+ collateralAbsorbed: string;
189
+ usdValue: string;
190
+ 0: string;
191
+ 1: string;
192
+ 2: string;
193
+ 3: string;
194
+ 4: string;
195
+ }>;
196
+ export type AbsorbDebt = ContractEventLog<{
197
+ absorber: string;
198
+ borrower: string;
199
+ basePaidOut: string;
200
+ usdValue: string;
201
+ 0: string;
202
+ 1: string;
203
+ 2: string;
204
+ 3: string;
205
+ }>;
206
+ export type BuyCollateral = ContractEventLog<{
207
+ buyer: string;
208
+ asset: string;
209
+ baseAmount: string;
210
+ collateralAmount: string;
211
+ 0: string;
212
+ 1: string;
213
+ 2: string;
214
+ 3: string;
215
+ }>;
216
+ export type PauseAction = ContractEventLog<{
217
+ supplyPaused: boolean;
218
+ transferPaused: boolean;
219
+ withdrawPaused: boolean;
220
+ absorbPaused: boolean;
221
+ buyPaused: boolean;
222
+ 0: boolean;
223
+ 1: boolean;
224
+ 2: boolean;
225
+ 3: boolean;
226
+ 4: boolean;
227
+ }>;
228
+ export type Supply = ContractEventLog<{
229
+ from: string;
230
+ dst: string;
231
+ amount: string;
232
+ 0: string;
233
+ 1: string;
234
+ 2: string;
235
+ }>;
236
+ export type SupplyCollateral = ContractEventLog<{
237
+ from: string;
238
+ dst: string;
239
+ asset: string;
240
+ amount: string;
241
+ 0: string;
242
+ 1: string;
243
+ 2: string;
244
+ 3: string;
245
+ }>;
246
+ export type Transfer = ContractEventLog<{
247
+ from: string;
248
+ to: string;
249
+ amount: string;
250
+ 0: string;
251
+ 1: string;
252
+ 2: string;
253
+ }>;
254
+ export type TransferCollateral = ContractEventLog<{
255
+ from: string;
256
+ to: string;
257
+ asset: string;
258
+ amount: string;
259
+ 0: string;
260
+ 1: string;
261
+ 2: string;
262
+ 3: string;
263
+ }>;
264
+ export type Withdraw = ContractEventLog<{
265
+ src: string;
266
+ to: string;
267
+ amount: string;
268
+ 0: string;
269
+ 1: string;
270
+ 2: string;
271
+ }>;
272
+ export type WithdrawCollateral = ContractEventLog<{
273
+ src: string;
274
+ to: string;
275
+ asset: string;
276
+ amount: string;
277
+ 0: string;
278
+ 1: string;
279
+ 2: string;
280
+ 3: string;
281
+ }>;
282
+ export type WithdrawReserves = ContractEventLog<{
283
+ to: string;
284
+ amount: string;
285
+ 0: string;
286
+ 1: string;
287
+ }>;
288
+ export interface CUSDSv3 extends BaseContract {
289
+ constructor(jsonInterface: any[], address?: string, options?: ContractOptions): CUSDSv3;
290
+ clone(): CUSDSv3;
291
+ methods: {
292
+ absorb(absorber: string, accounts: string[]): NonPayableTransactionObject<void>;
293
+ accrueAccount(account: string): NonPayableTransactionObject<void>;
294
+ approveThis(manager: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
295
+ balanceOf(account: string): NonPayableTransactionObject<string>;
296
+ baseBorrowMin(): NonPayableTransactionObject<string>;
297
+ baseMinForRewards(): NonPayableTransactionObject<string>;
298
+ baseScale(): NonPayableTransactionObject<string>;
299
+ baseToken(): NonPayableTransactionObject<string>;
300
+ baseTokenPriceFeed(): NonPayableTransactionObject<string>;
301
+ baseTrackingBorrowSpeed(): NonPayableTransactionObject<string>;
302
+ baseTrackingSupplySpeed(): NonPayableTransactionObject<string>;
303
+ borrowBalanceOf(account: string): NonPayableTransactionObject<string>;
304
+ borrowKink(): NonPayableTransactionObject<string>;
305
+ borrowPerSecondInterestRateBase(): NonPayableTransactionObject<string>;
306
+ borrowPerSecondInterestRateSlopeHigh(): NonPayableTransactionObject<string>;
307
+ borrowPerSecondInterestRateSlopeLow(): NonPayableTransactionObject<string>;
308
+ buyCollateral(asset: string, minAmount: number | string | BN, baseAmount: number | string | BN, recipient: string): NonPayableTransactionObject<void>;
309
+ decimals(): NonPayableTransactionObject<string>;
310
+ extensionDelegate(): NonPayableTransactionObject<string>;
311
+ getAssetInfo(i: number | string | BN): NonPayableTransactionObject<CometCore.AssetInfoStructOutput>;
312
+ getAssetInfoByAddress(asset: string): NonPayableTransactionObject<CometCore.AssetInfoStructOutput>;
313
+ getBorrowRate(utilization: number | string | BN): NonPayableTransactionObject<string>;
314
+ getCollateralReserves(asset: string): NonPayableTransactionObject<string>;
315
+ getPrice(priceFeed: string): NonPayableTransactionObject<string>;
316
+ getReserves(): NonPayableTransactionObject<string>;
317
+ getSupplyRate(utilization: number | string | BN): NonPayableTransactionObject<string>;
318
+ getUtilization(): NonPayableTransactionObject<string>;
319
+ governor(): NonPayableTransactionObject<string>;
320
+ hasPermission(owner: string, manager: string): NonPayableTransactionObject<boolean>;
321
+ initializeStorage(): NonPayableTransactionObject<void>;
322
+ isAbsorbPaused(): NonPayableTransactionObject<boolean>;
323
+ isAllowed(arg0: string, arg1: string): NonPayableTransactionObject<boolean>;
324
+ isBorrowCollateralized(account: string): NonPayableTransactionObject<boolean>;
325
+ isBuyPaused(): NonPayableTransactionObject<boolean>;
326
+ isLiquidatable(account: string): NonPayableTransactionObject<boolean>;
327
+ isSupplyPaused(): NonPayableTransactionObject<boolean>;
328
+ isTransferPaused(): NonPayableTransactionObject<boolean>;
329
+ isWithdrawPaused(): NonPayableTransactionObject<boolean>;
330
+ liquidatorPoints(arg0: string): NonPayableTransactionObject<[
331
+ string,
332
+ string,
333
+ string,
334
+ string
335
+ ] & {
336
+ numAbsorbs: string;
337
+ numAbsorbed: string;
338
+ approxSpend: string;
339
+ _reserved: string;
340
+ }>;
341
+ numAssets(): NonPayableTransactionObject<string>;
342
+ pause(supplyPaused: boolean, transferPaused: boolean, withdrawPaused: boolean, absorbPaused: boolean, buyPaused: boolean): NonPayableTransactionObject<void>;
343
+ pauseGuardian(): NonPayableTransactionObject<string>;
344
+ quoteCollateral(asset: string, baseAmount: number | string | BN): NonPayableTransactionObject<string>;
345
+ storeFrontPriceFactor(): NonPayableTransactionObject<string>;
346
+ supply(asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
347
+ supplyFrom(from: string, dst: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
348
+ supplyKink(): NonPayableTransactionObject<string>;
349
+ supplyPerSecondInterestRateBase(): NonPayableTransactionObject<string>;
350
+ supplyPerSecondInterestRateSlopeHigh(): NonPayableTransactionObject<string>;
351
+ supplyPerSecondInterestRateSlopeLow(): NonPayableTransactionObject<string>;
352
+ supplyTo(dst: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
353
+ targetReserves(): NonPayableTransactionObject<string>;
354
+ totalBorrow(): NonPayableTransactionObject<string>;
355
+ totalSupply(): NonPayableTransactionObject<string>;
356
+ totalsCollateral(arg0: string): NonPayableTransactionObject<[
357
+ string,
358
+ string
359
+ ] & {
360
+ totalSupplyAsset: string;
361
+ _reserved: string;
362
+ }>;
363
+ trackingIndexScale(): NonPayableTransactionObject<string>;
364
+ transfer(dst: string, amount: number | string | BN): NonPayableTransactionObject<boolean>;
365
+ transferAsset(dst: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
366
+ transferAssetFrom(src: string, dst: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
367
+ transferFrom(src: string, dst: string, amount: number | string | BN): NonPayableTransactionObject<boolean>;
368
+ userBasic(arg0: string): NonPayableTransactionObject<[
369
+ string,
370
+ string,
371
+ string,
372
+ string,
373
+ string
374
+ ] & {
375
+ principal: string;
376
+ baseTrackingIndex: string;
377
+ baseTrackingAccrued: string;
378
+ assetsIn: string;
379
+ _reserved: string;
380
+ }>;
381
+ userCollateral(arg0: string, arg1: string): NonPayableTransactionObject<[
382
+ string,
383
+ string
384
+ ] & {
385
+ balance: string;
386
+ _reserved: string;
387
+ }>;
388
+ userNonce(arg0: string): NonPayableTransactionObject<string>;
389
+ withdraw(asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
390
+ withdrawFrom(src: string, to: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
391
+ withdrawReserves(to: string, amount: number | string | BN): NonPayableTransactionObject<void>;
392
+ withdrawTo(to: string, asset: string, amount: number | string | BN): NonPayableTransactionObject<void>;
393
+ };
394
+ events: {
395
+ AbsorbCollateral(cb?: Callback<AbsorbCollateral>): EventEmitter;
396
+ AbsorbCollateral(options?: EventOptions, cb?: Callback<AbsorbCollateral>): EventEmitter;
397
+ AbsorbDebt(cb?: Callback<AbsorbDebt>): EventEmitter;
398
+ AbsorbDebt(options?: EventOptions, cb?: Callback<AbsorbDebt>): EventEmitter;
399
+ BuyCollateral(cb?: Callback<BuyCollateral>): EventEmitter;
400
+ BuyCollateral(options?: EventOptions, cb?: Callback<BuyCollateral>): EventEmitter;
401
+ PauseAction(cb?: Callback<PauseAction>): EventEmitter;
402
+ PauseAction(options?: EventOptions, cb?: Callback<PauseAction>): EventEmitter;
403
+ Supply(cb?: Callback<Supply>): EventEmitter;
404
+ Supply(options?: EventOptions, cb?: Callback<Supply>): EventEmitter;
405
+ SupplyCollateral(cb?: Callback<SupplyCollateral>): EventEmitter;
406
+ SupplyCollateral(options?: EventOptions, cb?: Callback<SupplyCollateral>): EventEmitter;
407
+ Transfer(cb?: Callback<Transfer>): EventEmitter;
408
+ Transfer(options?: EventOptions, cb?: Callback<Transfer>): EventEmitter;
409
+ TransferCollateral(cb?: Callback<TransferCollateral>): EventEmitter;
410
+ TransferCollateral(options?: EventOptions, cb?: Callback<TransferCollateral>): EventEmitter;
411
+ Withdraw(cb?: Callback<Withdraw>): EventEmitter;
412
+ Withdraw(options?: EventOptions, cb?: Callback<Withdraw>): EventEmitter;
413
+ WithdrawCollateral(cb?: Callback<WithdrawCollateral>): EventEmitter;
414
+ WithdrawCollateral(options?: EventOptions, cb?: Callback<WithdrawCollateral>): EventEmitter;
415
+ WithdrawReserves(cb?: Callback<WithdrawReserves>): EventEmitter;
416
+ WithdrawReserves(options?: EventOptions, cb?: Callback<WithdrawReserves>): EventEmitter;
417
+ allEvents(options?: EventOptions, cb?: Callback<EventLog>): EventEmitter;
418
+ };
419
+ once(event: "AbsorbCollateral", cb: Callback<AbsorbCollateral>): void;
420
+ once(event: "AbsorbCollateral", options: EventOptions, cb: Callback<AbsorbCollateral>): void;
421
+ once(event: "AbsorbDebt", cb: Callback<AbsorbDebt>): void;
422
+ once(event: "AbsorbDebt", options: EventOptions, cb: Callback<AbsorbDebt>): void;
423
+ once(event: "BuyCollateral", cb: Callback<BuyCollateral>): void;
424
+ once(event: "BuyCollateral", options: EventOptions, cb: Callback<BuyCollateral>): void;
425
+ once(event: "PauseAction", cb: Callback<PauseAction>): void;
426
+ once(event: "PauseAction", options: EventOptions, cb: Callback<PauseAction>): void;
427
+ once(event: "Supply", cb: Callback<Supply>): void;
428
+ once(event: "Supply", options: EventOptions, cb: Callback<Supply>): void;
429
+ once(event: "SupplyCollateral", cb: Callback<SupplyCollateral>): void;
430
+ once(event: "SupplyCollateral", options: EventOptions, cb: Callback<SupplyCollateral>): void;
431
+ once(event: "Transfer", cb: Callback<Transfer>): void;
432
+ once(event: "Transfer", options: EventOptions, cb: Callback<Transfer>): void;
433
+ once(event: "TransferCollateral", cb: Callback<TransferCollateral>): void;
434
+ once(event: "TransferCollateral", options: EventOptions, cb: Callback<TransferCollateral>): void;
435
+ once(event: "Withdraw", cb: Callback<Withdraw>): void;
436
+ once(event: "Withdraw", options: EventOptions, cb: Callback<Withdraw>): void;
437
+ once(event: "WithdrawCollateral", cb: Callback<WithdrawCollateral>): void;
438
+ once(event: "WithdrawCollateral", options: EventOptions, cb: Callback<WithdrawCollateral>): void;
439
+ once(event: "WithdrawReserves", cb: Callback<WithdrawReserves>): void;
440
+ once(event: "WithdrawReserves", options: EventOptions, cb: Callback<WithdrawReserves>): void;
441
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ /* tslint:disable */
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });