morpho-contracts-helper 0.0.12 → 0.0.14

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 (52) hide show
  1. package/contracts/MorphoMarketDataFetcher.sol +179 -0
  2. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.d.ts +48 -0
  3. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.d.ts.map +1 -0
  4. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.js +3 -0
  5. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.js.map +1 -0
  6. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.d.ts +84 -0
  7. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.d.ts.map +1 -0
  8. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.js +3 -0
  9. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.js.map +1 -0
  10. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.d.ts +62 -0
  11. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.d.ts.map +1 -0
  12. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.js +3 -0
  13. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.js.map +1 -0
  14. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.d.ts +135 -0
  15. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.d.ts.map +1 -0
  16. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.js +3 -0
  17. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.js.map +1 -0
  18. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.d.ts +5 -0
  19. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.d.ts.map +1 -0
  20. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.js +3 -0
  21. package/dist/typechain-types/contracts/MorphoMarketDataFetcher.sol/index.js.map +1 -0
  22. package/dist/typechain-types/contracts/index.d.ts +2 -0
  23. package/dist/typechain-types/contracts/index.d.ts.map +1 -1
  24. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.d.ts +56 -0
  25. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.d.ts.map +1 -0
  26. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.js +84 -0
  27. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata__factory.js.map +1 -0
  28. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.d.ts +108 -0
  29. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.d.ts.map +1 -0
  30. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.js +151 -0
  31. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2__factory.js.map +1 -0
  32. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.d.ts +69 -0
  33. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.d.ts.map +1 -0
  34. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.js +101 -0
  35. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/IMorpho__factory.js.map +1 -0
  36. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.d.ts +293 -0
  37. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.d.ts.map +1 -0
  38. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.js +389 -0
  39. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher__factory.js.map +1 -0
  40. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.d.ts +5 -0
  41. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.d.ts.map +1 -0
  42. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.js +16 -0
  43. package/dist/typechain-types/factories/contracts/MorphoMarketDataFetcher.sol/index.js.map +1 -0
  44. package/dist/typechain-types/factories/contracts/index.d.ts +1 -0
  45. package/dist/typechain-types/factories/contracts/index.d.ts.map +1 -1
  46. package/dist/typechain-types/factories/contracts/index.js +2 -1
  47. package/dist/typechain-types/factories/contracts/index.js.map +1 -1
  48. package/dist/typechain-types/index.d.ts +2 -0
  49. package/dist/typechain-types/index.d.ts.map +1 -1
  50. package/dist/typechain-types/index.js +4 -2
  51. package/dist/typechain-types/index.js.map +1 -1
  52. package/package.json +1 -1
@@ -0,0 +1,179 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity ^0.8.20;
3
+
4
+ struct MarketParams {
5
+ address loanToken;
6
+ address collateralToken;
7
+ address oracle;
8
+ address irm;
9
+ uint256 lltv;
10
+ }
11
+
12
+ interface IChainlinkAggregator {
13
+ function decimals() external view returns (uint8);
14
+
15
+ function latestRoundData()
16
+ external
17
+ view
18
+ returns (
19
+ uint80 roundId,
20
+ int256 answer,
21
+ uint256 startedAt,
22
+ uint256 updatedAt,
23
+ uint80 answeredInRound
24
+ );
25
+ }
26
+
27
+ interface IERC20Metadata {
28
+ function name() external view returns (string memory);
29
+ function symbol() external view returns (string memory);
30
+ function decimals() external view returns (uint8);
31
+ function allowance(address owner, address spender) external view returns (uint256);
32
+ }
33
+
34
+ interface IMorphoChainlinkOracleV2 {
35
+ function BASE_FEED_1() external view returns (address);
36
+ function BASE_FEED_2() external view returns (address);
37
+ function BASE_VAULT() external view returns (address);
38
+ function BASE_VAULT_CONVERSION_SAMPLE() external view returns (address);
39
+ function QUOTE_FEED_1() external view returns (address);
40
+ function QUOTE_FEED_2() external view returns (address);
41
+ function QUOTE_VAULT() external view returns (address);
42
+ function QUOTE_VAULT_CONVERSION_SAMPLE() external view returns (address);
43
+ function SCALE_FACTOR() external view returns (uint256);
44
+ function price() external view returns (uint256);
45
+ }
46
+
47
+ interface IMorpho {
48
+ function position(bytes32 marketId, address account) external view returns (uint128 supplyShares, uint128 borrowShares, uint128 collateral);
49
+ function idToMarketParams(bytes32 marketId) external view returns (MarketParams memory);
50
+ }
51
+
52
+ contract MorphoMarketDataFetcher {
53
+
54
+ address public immutable morphoAddress;
55
+
56
+ constructor(address _morphoAddress) {
57
+ morphoAddress = _morphoAddress;
58
+ }
59
+
60
+ struct TokenInfo {
61
+ address tokenAddress;
62
+ string name;
63
+ string symbol;
64
+ uint8 decimals;
65
+ uint256 userAllowance;
66
+ }
67
+
68
+ struct MockOracleInfo {
69
+ address oracleAddress;
70
+ uint256 price;
71
+ string symbol;
72
+ uint8 decimals;
73
+ }
74
+
75
+ struct OracleInfo {
76
+ address oracleAddress;
77
+ address baseFeed1;
78
+ address baseFeed2;
79
+ address baseVault;
80
+ address baseVaultConversionSample;
81
+ address quoteFeed1;
82
+ address quoteFeed2;
83
+ address quoteVault;
84
+ address quoteVaultConversionSample;
85
+ uint256 scaleFactor;
86
+ uint256 currentPrice;
87
+ MockOracleInfo baseFeed;
88
+ MockOracleInfo quoteFeed;
89
+ }
90
+
91
+ struct MarketData {
92
+ TokenInfo loanToken;
93
+ TokenInfo collateralToken;
94
+ OracleInfo oracle;
95
+ uint256 deadAddressSupply;
96
+ }
97
+
98
+ function getMarketDetailsById(bytes32 marketId) external view returns (MarketData memory) {
99
+ MarketParams memory params = IMorpho(morphoAddress).idToMarketParams(marketId);
100
+
101
+ return this.getMarketDetails(
102
+ params.loanToken,
103
+ params.collateralToken,
104
+ params.oracle,
105
+ marketId,
106
+ msg.sender
107
+ );
108
+ }
109
+
110
+ function getMarketDetails(
111
+ address loanToken,
112
+ address collateralToken,
113
+ address oracle,
114
+ bytes32 marketId,
115
+ address connectedAddress
116
+ ) external view returns (MarketData memory data) {
117
+
118
+ data.loanToken.tokenAddress = loanToken;
119
+ try IERC20Metadata(loanToken).name() returns (string memory _name) { data.loanToken.name = _name; } catch {}
120
+ try IERC20Metadata(loanToken).symbol() returns (string memory _sym) { data.loanToken.symbol = _sym; } catch {}
121
+ try IERC20Metadata(loanToken).decimals() returns (uint8 _dec) { data.loanToken.decimals = _dec; } catch {}
122
+
123
+ if (connectedAddress != address(0) && morphoAddress != address(0)) {
124
+ try IERC20Metadata(loanToken).allowance(connectedAddress, morphoAddress) returns (uint256 _allow) { data.loanToken.userAllowance = _allow; } catch {}
125
+ }
126
+
127
+ data.collateralToken.tokenAddress = collateralToken;
128
+ try IERC20Metadata(collateralToken).name() returns (string memory _name) { data.collateralToken.name = _name; } catch {}
129
+ try IERC20Metadata(collateralToken).symbol() returns (string memory _sym) { data.collateralToken.symbol = _sym; } catch {}
130
+ try IERC20Metadata(collateralToken).decimals() returns (uint8 _dec) { data.collateralToken.decimals = _dec; } catch {}
131
+
132
+ if (oracle != address(0)) {
133
+ data.oracle.oracleAddress = oracle;
134
+ try IMorphoChainlinkOracleV2(oracle).BASE_FEED_1() returns (address a) { data.oracle.baseFeed1 = a; } catch {}
135
+ try IMorphoChainlinkOracleV2(oracle).BASE_FEED_2() returns (address a) { data.oracle.baseFeed2 = a; } catch {}
136
+ try IMorphoChainlinkOracleV2(oracle).BASE_VAULT() returns (address a) { data.oracle.baseVault = a; } catch {}
137
+ try IMorphoChainlinkOracleV2(oracle).BASE_VAULT_CONVERSION_SAMPLE() returns (address a) { data.oracle.baseVaultConversionSample = a; } catch {}
138
+ try IMorphoChainlinkOracleV2(oracle).QUOTE_FEED_1() returns (address a) { data.oracle.quoteFeed1 = a; } catch {}
139
+ try IMorphoChainlinkOracleV2(oracle).QUOTE_FEED_2() returns (address a) { data.oracle.quoteFeed2 = a; } catch {}
140
+ try IMorphoChainlinkOracleV2(oracle).QUOTE_VAULT() returns (address a) { data.oracle.quoteVault = a; } catch {}
141
+ try IMorphoChainlinkOracleV2(oracle).QUOTE_VAULT_CONVERSION_SAMPLE() returns (address a) { data.oracle.quoteVaultConversionSample = a; } catch {}
142
+ try IMorphoChainlinkOracleV2(oracle).SCALE_FACTOR() returns (uint256 s) { data.oracle.scaleFactor = s; } catch {}
143
+ try IMorphoChainlinkOracleV2(oracle).price() returns (uint256 p) { data.oracle.currentPrice = p; } catch {}
144
+ }
145
+
146
+ if (data.oracle.baseFeed1 != address(0)) {
147
+ data.oracle.baseFeed.oracleAddress = data.oracle.baseFeed1;
148
+
149
+ try IChainlinkAggregator(data.oracle.baseFeed1).latestRoundData() returns (
150
+ uint80, int256 answer, uint256, uint256, uint80
151
+ ) {
152
+ data.oracle.baseFeed.price = answer > 0 ? uint256(answer) : 0;
153
+ } catch {}
154
+
155
+ try IChainlinkAggregator(data.oracle.baseFeed1).decimals() returns (uint8 _dec) { data.oracle.baseFeed.decimals = _dec; } catch {}
156
+ try IERC20Metadata(data.oracle.baseFeed1).symbol() returns (string memory _sym) { data.oracle.baseFeed.symbol = _sym; } catch {}
157
+ }
158
+
159
+ if (data.oracle.quoteFeed1 != address(0)) {
160
+ data.oracle.quoteFeed.oracleAddress = data.oracle.quoteFeed1;
161
+
162
+ try IChainlinkAggregator(data.oracle.quoteFeed1).latestRoundData() returns (
163
+ uint80, int256 answer, uint256, uint256, uint80
164
+ ) {
165
+ data.oracle.quoteFeed.price = answer > 0 ? uint256(answer) : 0;
166
+ } catch {}
167
+
168
+ try IChainlinkAggregator(data.oracle.quoteFeed1).decimals() returns (uint8 _dec) { data.oracle.quoteFeed.decimals = _dec; } catch {}
169
+ try IERC20Metadata(data.oracle.quoteFeed1).symbol() returns (string memory _sym) { data.oracle.quoteFeed.symbol = _sym; } catch {}
170
+ }
171
+
172
+ if (morphoAddress != address(0) && marketId != bytes32(0)) {
173
+ address deadAddress = 0x000000000000000000000000000000000000dEaD;
174
+ try IMorpho(morphoAddress).position(marketId, deadAddress) returns (uint128 supplyShares, uint128, uint128) {
175
+ data.deadAddressSupply = uint256(supplyShares);
176
+ } catch {}
177
+ }
178
+ }
179
+ }
@@ -0,0 +1,48 @@
1
+ import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export interface IERC20MetadataInterface extends Interface {
4
+ getFunction(nameOrSignature: "allowance" | "decimals" | "name" | "symbol"): FunctionFragment;
5
+ encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string;
6
+ encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
7
+ encodeFunctionData(functionFragment: "name", values?: undefined): string;
8
+ encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
9
+ decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
10
+ decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
11
+ decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
12
+ decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
13
+ }
14
+ export interface IERC20Metadata extends BaseContract {
15
+ connect(runner?: ContractRunner | null): IERC20Metadata;
16
+ waitForDeployment(): Promise<this>;
17
+ interface: IERC20MetadataInterface;
18
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
19
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
20
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
21
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
22
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
23
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
24
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
25
+ listeners(eventName?: string): Promise<Array<Listener>>;
26
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
27
+ allowance: TypedContractMethod<[
28
+ owner: AddressLike,
29
+ spender: AddressLike
30
+ ], [
31
+ bigint
32
+ ], "view">;
33
+ decimals: TypedContractMethod<[], [bigint], "view">;
34
+ name: TypedContractMethod<[], [string], "view">;
35
+ symbol: TypedContractMethod<[], [string], "view">;
36
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
37
+ getFunction(nameOrSignature: "allowance"): TypedContractMethod<[
38
+ owner: AddressLike,
39
+ spender: AddressLike
40
+ ], [
41
+ bigint
42
+ ], "view">;
43
+ getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">;
44
+ getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">;
45
+ getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">;
46
+ filters: {};
47
+ }
48
+ //# sourceMappingURL=IERC20Metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IERC20Metadata.d.ts","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IERC20Metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IERC20Metadata.js","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IERC20Metadata.ts"],"names":[],"mappings":""}
@@ -0,0 +1,84 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export type MarketParamsStruct = {
4
+ loanToken: AddressLike;
5
+ collateralToken: AddressLike;
6
+ oracle: AddressLike;
7
+ irm: AddressLike;
8
+ lltv: BigNumberish;
9
+ };
10
+ export type MarketParamsStructOutput = [
11
+ loanToken: string,
12
+ collateralToken: string,
13
+ oracle: string,
14
+ irm: string,
15
+ lltv: bigint
16
+ ] & {
17
+ loanToken: string;
18
+ collateralToken: string;
19
+ oracle: string;
20
+ irm: string;
21
+ lltv: bigint;
22
+ };
23
+ export interface IMorphoInterface extends Interface {
24
+ getFunction(nameOrSignature: "idToMarketParams" | "position"): FunctionFragment;
25
+ encodeFunctionData(functionFragment: "idToMarketParams", values: [BytesLike]): string;
26
+ encodeFunctionData(functionFragment: "position", values: [BytesLike, AddressLike]): string;
27
+ decodeFunctionResult(functionFragment: "idToMarketParams", data: BytesLike): Result;
28
+ decodeFunctionResult(functionFragment: "position", data: BytesLike): Result;
29
+ }
30
+ export interface IMorpho extends BaseContract {
31
+ connect(runner?: ContractRunner | null): IMorpho;
32
+ waitForDeployment(): Promise<this>;
33
+ interface: IMorphoInterface;
34
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
35
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
36
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
37
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
38
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
39
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
40
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
41
+ listeners(eventName?: string): Promise<Array<Listener>>;
42
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
43
+ idToMarketParams: TypedContractMethod<[
44
+ marketId: BytesLike
45
+ ], [
46
+ MarketParamsStructOutput
47
+ ], "view">;
48
+ position: TypedContractMethod<[
49
+ marketId: BytesLike,
50
+ account: AddressLike
51
+ ], [
52
+ [
53
+ bigint,
54
+ bigint,
55
+ bigint
56
+ ] & {
57
+ supplyShares: bigint;
58
+ borrowShares: bigint;
59
+ collateral: bigint;
60
+ }
61
+ ], "view">;
62
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
63
+ getFunction(nameOrSignature: "idToMarketParams"): TypedContractMethod<[
64
+ marketId: BytesLike
65
+ ], [
66
+ MarketParamsStructOutput
67
+ ], "view">;
68
+ getFunction(nameOrSignature: "position"): TypedContractMethod<[
69
+ marketId: BytesLike,
70
+ account: AddressLike
71
+ ], [
72
+ [
73
+ bigint,
74
+ bigint,
75
+ bigint
76
+ ] & {
77
+ supplyShares: bigint;
78
+ borrowShares: bigint;
79
+ collateral: bigint;
80
+ }
81
+ ], "view">;
82
+ filters: {};
83
+ }
84
+ //# sourceMappingURL=IMorpho.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMorpho.d.ts","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IMorpho.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMorpho.js","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorpho.ts"],"names":[],"mappings":""}
@@ -0,0 +1,62 @@
1
+ import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export interface IMorphoChainlinkOracleV2Interface extends Interface {
4
+ getFunction(nameOrSignature: "BASE_FEED_1" | "BASE_FEED_2" | "BASE_VAULT" | "BASE_VAULT_CONVERSION_SAMPLE" | "QUOTE_FEED_1" | "QUOTE_FEED_2" | "QUOTE_VAULT" | "QUOTE_VAULT_CONVERSION_SAMPLE" | "SCALE_FACTOR" | "price"): FunctionFragment;
5
+ encodeFunctionData(functionFragment: "BASE_FEED_1", values?: undefined): string;
6
+ encodeFunctionData(functionFragment: "BASE_FEED_2", values?: undefined): string;
7
+ encodeFunctionData(functionFragment: "BASE_VAULT", values?: undefined): string;
8
+ encodeFunctionData(functionFragment: "BASE_VAULT_CONVERSION_SAMPLE", values?: undefined): string;
9
+ encodeFunctionData(functionFragment: "QUOTE_FEED_1", values?: undefined): string;
10
+ encodeFunctionData(functionFragment: "QUOTE_FEED_2", values?: undefined): string;
11
+ encodeFunctionData(functionFragment: "QUOTE_VAULT", values?: undefined): string;
12
+ encodeFunctionData(functionFragment: "QUOTE_VAULT_CONVERSION_SAMPLE", values?: undefined): string;
13
+ encodeFunctionData(functionFragment: "SCALE_FACTOR", values?: undefined): string;
14
+ encodeFunctionData(functionFragment: "price", values?: undefined): string;
15
+ decodeFunctionResult(functionFragment: "BASE_FEED_1", data: BytesLike): Result;
16
+ decodeFunctionResult(functionFragment: "BASE_FEED_2", data: BytesLike): Result;
17
+ decodeFunctionResult(functionFragment: "BASE_VAULT", data: BytesLike): Result;
18
+ decodeFunctionResult(functionFragment: "BASE_VAULT_CONVERSION_SAMPLE", data: BytesLike): Result;
19
+ decodeFunctionResult(functionFragment: "QUOTE_FEED_1", data: BytesLike): Result;
20
+ decodeFunctionResult(functionFragment: "QUOTE_FEED_2", data: BytesLike): Result;
21
+ decodeFunctionResult(functionFragment: "QUOTE_VAULT", data: BytesLike): Result;
22
+ decodeFunctionResult(functionFragment: "QUOTE_VAULT_CONVERSION_SAMPLE", data: BytesLike): Result;
23
+ decodeFunctionResult(functionFragment: "SCALE_FACTOR", data: BytesLike): Result;
24
+ decodeFunctionResult(functionFragment: "price", data: BytesLike): Result;
25
+ }
26
+ export interface IMorphoChainlinkOracleV2 extends BaseContract {
27
+ connect(runner?: ContractRunner | null): IMorphoChainlinkOracleV2;
28
+ waitForDeployment(): Promise<this>;
29
+ interface: IMorphoChainlinkOracleV2Interface;
30
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
31
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
32
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
33
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
34
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
35
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
36
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
37
+ listeners(eventName?: string): Promise<Array<Listener>>;
38
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
39
+ BASE_FEED_1: TypedContractMethod<[], [string], "view">;
40
+ BASE_FEED_2: TypedContractMethod<[], [string], "view">;
41
+ BASE_VAULT: TypedContractMethod<[], [string], "view">;
42
+ BASE_VAULT_CONVERSION_SAMPLE: TypedContractMethod<[], [string], "view">;
43
+ QUOTE_FEED_1: TypedContractMethod<[], [string], "view">;
44
+ QUOTE_FEED_2: TypedContractMethod<[], [string], "view">;
45
+ QUOTE_VAULT: TypedContractMethod<[], [string], "view">;
46
+ QUOTE_VAULT_CONVERSION_SAMPLE: TypedContractMethod<[], [string], "view">;
47
+ SCALE_FACTOR: TypedContractMethod<[], [bigint], "view">;
48
+ price: TypedContractMethod<[], [bigint], "view">;
49
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
50
+ getFunction(nameOrSignature: "BASE_FEED_1"): TypedContractMethod<[], [string], "view">;
51
+ getFunction(nameOrSignature: "BASE_FEED_2"): TypedContractMethod<[], [string], "view">;
52
+ getFunction(nameOrSignature: "BASE_VAULT"): TypedContractMethod<[], [string], "view">;
53
+ getFunction(nameOrSignature: "BASE_VAULT_CONVERSION_SAMPLE"): TypedContractMethod<[], [string], "view">;
54
+ getFunction(nameOrSignature: "QUOTE_FEED_1"): TypedContractMethod<[], [string], "view">;
55
+ getFunction(nameOrSignature: "QUOTE_FEED_2"): TypedContractMethod<[], [string], "view">;
56
+ getFunction(nameOrSignature: "QUOTE_VAULT"): TypedContractMethod<[], [string], "view">;
57
+ getFunction(nameOrSignature: "QUOTE_VAULT_CONVERSION_SAMPLE"): TypedContractMethod<[], [string], "view">;
58
+ getFunction(nameOrSignature: "SCALE_FACTOR"): TypedContractMethod<[], [bigint], "view">;
59
+ getFunction(nameOrSignature: "price"): TypedContractMethod<[], [bigint], "view">;
60
+ filters: {};
61
+ }
62
+ //# sourceMappingURL=IMorphoChainlinkOracleV2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMorphoChainlinkOracleV2.d.ts","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IMorphoChainlinkOracleV2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMorphoChainlinkOracleV2.js","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/IMorphoChainlinkOracleV2.ts"],"names":[],"mappings":""}
@@ -0,0 +1,135 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common";
3
+ export declare namespace MorphoMarketDataFetcher {
4
+ type TokenInfoStruct = {
5
+ tokenAddress: AddressLike;
6
+ name: string;
7
+ symbol: string;
8
+ decimals: BigNumberish;
9
+ userAllowance: BigNumberish;
10
+ };
11
+ type TokenInfoStructOutput = [
12
+ tokenAddress: string,
13
+ name: string,
14
+ symbol: string,
15
+ decimals: bigint,
16
+ userAllowance: bigint
17
+ ] & {
18
+ tokenAddress: string;
19
+ name: string;
20
+ symbol: string;
21
+ decimals: bigint;
22
+ userAllowance: bigint;
23
+ };
24
+ type OracleInfoStruct = {
25
+ oracleAddress: AddressLike;
26
+ baseFeed1: AddressLike;
27
+ baseFeed2: AddressLike;
28
+ baseVault: AddressLike;
29
+ baseVaultConversionSample: AddressLike;
30
+ quoteFeed1: AddressLike;
31
+ quoteFeed2: AddressLike;
32
+ quoteVault: AddressLike;
33
+ quoteVaultConversionSample: AddressLike;
34
+ scaleFactor: BigNumberish;
35
+ currentPrice: BigNumberish;
36
+ };
37
+ type OracleInfoStructOutput = [
38
+ oracleAddress: string,
39
+ baseFeed1: string,
40
+ baseFeed2: string,
41
+ baseVault: string,
42
+ baseVaultConversionSample: string,
43
+ quoteFeed1: string,
44
+ quoteFeed2: string,
45
+ quoteVault: string,
46
+ quoteVaultConversionSample: string,
47
+ scaleFactor: bigint,
48
+ currentPrice: bigint
49
+ ] & {
50
+ oracleAddress: string;
51
+ baseFeed1: string;
52
+ baseFeed2: string;
53
+ baseVault: string;
54
+ baseVaultConversionSample: string;
55
+ quoteFeed1: string;
56
+ quoteFeed2: string;
57
+ quoteVault: string;
58
+ quoteVaultConversionSample: string;
59
+ scaleFactor: bigint;
60
+ currentPrice: bigint;
61
+ };
62
+ type MarketDataStruct = {
63
+ loanToken: MorphoMarketDataFetcher.TokenInfoStruct;
64
+ collateralToken: MorphoMarketDataFetcher.TokenInfoStruct;
65
+ oracle: MorphoMarketDataFetcher.OracleInfoStruct;
66
+ deadAddressSupply: BigNumberish;
67
+ };
68
+ type MarketDataStructOutput = [
69
+ loanToken: MorphoMarketDataFetcher.TokenInfoStructOutput,
70
+ collateralToken: MorphoMarketDataFetcher.TokenInfoStructOutput,
71
+ oracle: MorphoMarketDataFetcher.OracleInfoStructOutput,
72
+ deadAddressSupply: bigint
73
+ ] & {
74
+ loanToken: MorphoMarketDataFetcher.TokenInfoStructOutput;
75
+ collateralToken: MorphoMarketDataFetcher.TokenInfoStructOutput;
76
+ oracle: MorphoMarketDataFetcher.OracleInfoStructOutput;
77
+ deadAddressSupply: bigint;
78
+ };
79
+ }
80
+ export interface MorphoMarketDataFetcherInterface extends Interface {
81
+ getFunction(nameOrSignature: "getMarketDetails" | "getMarketDetailsById" | "morphoAddress"): FunctionFragment;
82
+ encodeFunctionData(functionFragment: "getMarketDetails", values: [AddressLike, AddressLike, AddressLike, BytesLike, AddressLike]): string;
83
+ encodeFunctionData(functionFragment: "getMarketDetailsById", values: [BytesLike]): string;
84
+ encodeFunctionData(functionFragment: "morphoAddress", values?: undefined): string;
85
+ decodeFunctionResult(functionFragment: "getMarketDetails", data: BytesLike): Result;
86
+ decodeFunctionResult(functionFragment: "getMarketDetailsById", data: BytesLike): Result;
87
+ decodeFunctionResult(functionFragment: "morphoAddress", data: BytesLike): Result;
88
+ }
89
+ export interface MorphoMarketDataFetcher extends BaseContract {
90
+ connect(runner?: ContractRunner | null): MorphoMarketDataFetcher;
91
+ waitForDeployment(): Promise<this>;
92
+ interface: MorphoMarketDataFetcherInterface;
93
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
94
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
95
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
96
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
97
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
98
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
99
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
100
+ listeners(eventName?: string): Promise<Array<Listener>>;
101
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
102
+ getMarketDetails: TypedContractMethod<[
103
+ loanToken: AddressLike,
104
+ collateralToken: AddressLike,
105
+ oracle: AddressLike,
106
+ marketId: BytesLike,
107
+ connectedAddress: AddressLike
108
+ ], [
109
+ MorphoMarketDataFetcher.MarketDataStructOutput
110
+ ], "view">;
111
+ getMarketDetailsById: TypedContractMethod<[
112
+ marketId: BytesLike
113
+ ], [
114
+ MorphoMarketDataFetcher.MarketDataStructOutput
115
+ ], "view">;
116
+ morphoAddress: TypedContractMethod<[], [string], "view">;
117
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
118
+ getFunction(nameOrSignature: "getMarketDetails"): TypedContractMethod<[
119
+ loanToken: AddressLike,
120
+ collateralToken: AddressLike,
121
+ oracle: AddressLike,
122
+ marketId: BytesLike,
123
+ connectedAddress: AddressLike
124
+ ], [
125
+ MorphoMarketDataFetcher.MarketDataStructOutput
126
+ ], "view">;
127
+ getFunction(nameOrSignature: "getMarketDetailsById"): TypedContractMethod<[
128
+ marketId: BytesLike
129
+ ], [
130
+ MorphoMarketDataFetcher.MarketDataStructOutput
131
+ ], "view">;
132
+ getFunction(nameOrSignature: "morphoAddress"): TypedContractMethod<[], [string], "view">;
133
+ filters: {};
134
+ }
135
+ //# sourceMappingURL=MorphoMarketDataFetcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoMarketDataFetcher.d.ts","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=MorphoMarketDataFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphoMarketDataFetcher.js","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/MorphoMarketDataFetcher.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export type { IERC20Metadata } from "./IERC20Metadata";
2
+ export type { IMorpho } from "./IMorpho";
3
+ export type { IMorphoChainlinkOracleV2 } from "./IMorphoChainlinkOracleV2";
4
+ export type { MorphoMarketDataFetcher } from "./MorphoMarketDataFetcher";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/index.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../typechain-types/contracts/MorphoMarketDataFetcher.sol/index.ts"],"names":[],"mappings":""}
@@ -1,3 +1,5 @@
1
+ import type * as morphoMarketDataFetcherSol from "./MorphoMarketDataFetcher.sol";
2
+ export type { morphoMarketDataFetcherSol };
1
3
  import type * as oracleFactorySol from "./OracleFactory.sol";
2
4
  export type { oracleFactorySol };
3
5
  import type * as tokenFactorySol from "./TokenFactory.sol";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,eAAe,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;AAChC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../typechain-types/contracts/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC;AAC3C,OAAO,KAAK,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,eAAe,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;AAChC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}