"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.symbol = exports.name = exports.initialize = exports.getWhitelistedPoolsByAccountWithData = exports.getWhitelistedPoolsByAccount = exports.getSupplyCapsForPool = exports.getSupplyCapsDataForPool = exports.getPublicPoolsWithData = exports.getPublicPoolsByVerificationWithData = exports.getPoolsOIonicrWithData = exports.getPoolsByAccountWithData = exports.getPoolSummary = exports.getPoolAssetsWithData = exports.getPoolAssetsByUser = exports.getHealthFactor = exports.getBorrowCapsForAsset = exports.getBorrowCapsDataForAsset = exports.directory = exports.Initialized = exports.ComptrollerError = void 0;
/**
 * Autogenerated file. Do not edit manually. */
exports.ComptrollerError = { inputs: [{ internalType: "uint256", name: "errCode", type: "uint256" }], name: "ComptrollerError", type: "error" };
exports.Initialized = { anonymous: false, inputs: [{ indexed: false, internalType: "uint8", name: "version", type: "uint8" }], name: "Initialized", type: "event" };
exports.directory = { inputs: [], name: "directory", outputs: [{ internalType: "contract PoolDirectory", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.getBorrowCapsDataForAsset = { inputs: [{ internalType: "contract ICErc20", name: "asset", type: "address" }], name: "getBorrowCapsDataForAsset", outputs: [{ internalType: "address[]", name: "collateral", type: "address[]" }, { internalType: "uint256[]", name: "borrowCapsPerCollateral", type: "uint256[]" }, { internalType: "bool[]", name: "collateralBlacklisted", type: "bool[]" }, { internalType: "uint256", name: "totalBorrowCap", type: "uint256" }, { internalType: "uint256", name: "nonWhitelistedTotalBorrows", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getBorrowCapsForAsset = { inputs: [{ internalType: "contract ICErc20", name: "asset", type: "address" }], name: "getBorrowCapsForAsset", outputs: [{ internalType: "address[]", name: "collateral", type: "address[]" }, { internalType: "uint256[]", name: "borrowCapsPerCollateral", type: "uint256[]" }, { internalType: "bool[]", name: "collateralBlacklisted", type: "bool[]" }, { internalType: "uint256", name: "totalBorrowCap", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getHealthFactor = { inputs: [{ internalType: "address", name: "user", type: "address" }, { internalType: "contract IonicComptroller", name: "pool", type: "address" }], name: "getHealthFactor", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getPoolAssetsByUser = { inputs: [{ internalType: "contract IonicComptroller", name: "comptroller", type: "address" }, { internalType: "address", name: "user", type: "address" }], name: "getPoolAssetsByUser", outputs: [{ components: [{ internalType: "address", name: "cToken", type: "address" }, { internalType: "address", name: "underlyingToken", type: "address" }, { internalType: "string", name: "underlyingName", type: "string" }, { internalType: "string", name: "underlyingSymbol", type: "string" }, { internalType: "uint256", name: "underlyingDecimals", type: "uint256" }, { internalType: "uint256", name: "underlyingBalance", type: "uint256" }, { internalType: "uint256", name: "supplyRatePerBlock", type: "uint256" }, { internalType: "uint256", name: "borrowRatePerBlock", type: "uint256" }, { internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "uint256", name: "supplyBalance", type: "uint256" }, { internalType: "uint256", name: "borrowBalance", type: "uint256" }, { internalType: "uint256", name: "liquidity", type: "uint256" }, { internalType: "bool", name: "membership", type: "bool" }, { internalType: "uint256", name: "exchangeRate", type: "uint256" }, { internalType: "uint256", name: "underlyingPrice", type: "uint256" }, { internalType: "address", name: "oracle", type: "address" }, { internalType: "uint256", name: "collateralFactor", type: "uint256" }, { internalType: "uint256", name: "reserveFactor", type: "uint256" }, { internalType: "uint256", name: "adminFee", type: "uint256" }, { internalType: "uint256", name: "ionicFee", type: "uint256" }, { internalType: "bool", name: "borrowGuardianPaused", type: "bool" }, { internalType: "bool", name: "mintGuardianPaused", type: "bool" }], internalType: "struct PoolLens.PoolAsset[]", name: "", type: "tuple[]" }], stateMutability: "nonpayable", type: "function" };
exports.getPoolAssetsWithData = { inputs: [{ internalType: "contract IonicComptroller", name: "comptroller", type: "address" }], name: "getPoolAssetsWithData", outputs: [{ components: [{ internalType: "address", name: "cToken", type: "address" }, { internalType: "address", name: "underlyingToken", type: "address" }, { internalType: "string", name: "underlyingName", type: "string" }, { internalType: "string", name: "underlyingSymbol", type: "string" }, { internalType: "uint256", name: "underlyingDecimals", type: "uint256" }, { internalType: "uint256", name: "underlyingBalance", type: "uint256" }, { internalType: "uint256", name: "supplyRatePerBlock", type: "uint256" }, { internalType: "uint256", name: "borrowRatePerBlock", type: "uint256" }, { internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "uint256", name: "supplyBalance", type: "uint256" }, { internalType: "uint256", name: "borrowBalance", type: "uint256" }, { internalType: "uint256", name: "liquidity", type: "uint256" }, { internalType: "bool", name: "membership", type: "bool" }, { internalType: "uint256", name: "exchangeRate", type: "uint256" }, { internalType: "uint256", name: "underlyingPrice", type: "uint256" }, { internalType: "address", name: "oracle", type: "address" }, { internalType: "uint256", name: "collateralFactor", type: "uint256" }, { internalType: "uint256", name: "reserveFactor", type: "uint256" }, { internalType: "uint256", name: "adminFee", type: "uint256" }, { internalType: "uint256", name: "ionicFee", type: "uint256" }, { internalType: "bool", name: "borrowGuardianPaused", type: "bool" }, { internalType: "bool", name: "mintGuardianPaused", type: "bool" }], internalType: "struct PoolLens.PoolAsset[]", name: "", type: "tuple[]" }], stateMutability: "nonpayable", type: "function" };
exports.getPoolSummary = { inputs: [{ internalType: "contract IonicComptroller", name: "comptroller", type: "address" }], name: "getPoolSummary", outputs: [{ internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "address[]", name: "", type: "address[]" }, { internalType: "string[]", name: "", type: "string[]" }, { internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.getPoolsByAccountWithData = { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "getPoolsByAccountWithData", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }, { components: [{ internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "address[]", name: "underlyingTokens", type: "address[]" }, { internalType: "string[]", name: "underlyingSymbols", type: "string[]" }, { internalType: "bool", name: "whitelistedAdmin", type: "bool" }], internalType: "struct PoolLens.IonicPoolData[]", name: "", type: "tuple[]" }, { internalType: "bool[]", name: "", type: "bool[]" }], stateMutability: "nonpayable", type: "function" };
exports.getPoolsOIonicrWithData = { inputs: [{ internalType: "address", name: "user", type: "address" }], name: "getPoolsOIonicrWithData", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }, { components: [{ internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "address[]", name: "underlyingTokens", type: "address[]" }, { internalType: "string[]", name: "underlyingSymbols", type: "string[]" }, { internalType: "bool", name: "whitelistedAdmin", type: "bool" }], internalType: "struct PoolLens.IonicPoolData[]", name: "", type: "tuple[]" }, { internalType: "bool[]", name: "", type: "bool[]" }], stateMutability: "nonpayable", type: "function" };
exports.getPublicPoolsByVerificationWithData = { inputs: [{ internalType: "bool", name: "whitelistedAdmin", type: "bool" }], name: "getPublicPoolsByVerificationWithData", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }, { components: [{ internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "address[]", name: "underlyingTokens", type: "address[]" }, { internalType: "string[]", name: "underlyingSymbols", type: "string[]" }, { internalType: "bool", name: "whitelistedAdmin", type: "bool" }], internalType: "struct PoolLens.IonicPoolData[]", name: "", type: "tuple[]" }, { internalType: "bool[]", name: "", type: "bool[]" }], stateMutability: "nonpayable", type: "function" };
exports.getPublicPoolsWithData = { inputs: [], name: "getPublicPoolsWithData", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }, { components: [{ internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "address[]", name: "underlyingTokens", type: "address[]" }, { internalType: "string[]", name: "underlyingSymbols", type: "string[]" }, { internalType: "bool", name: "whitelistedAdmin", type: "bool" }], internalType: "struct PoolLens.IonicPoolData[]", name: "", type: "tuple[]" }, { internalType: "bool[]", name: "", type: "bool[]" }], stateMutability: "nonpayable", type: "function" };
exports.getSupplyCapsDataForPool = { inputs: [{ internalType: "contract IonicComptroller", name: "comptroller", type: "address" }], name: "getSupplyCapsDataForPool", outputs: [{ internalType: "address[]", name: "", type: "address[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }], stateMutability: "view", type: "function" };
exports.getSupplyCapsForPool = { inputs: [{ internalType: "contract IonicComptroller", name: "comptroller", type: "address" }], name: "getSupplyCapsForPool", outputs: [{ internalType: "address[]", name: "", type: "address[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }], stateMutability: "view", type: "function" };
exports.getWhitelistedPoolsByAccount = { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "getWhitelistedPoolsByAccount", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }], stateMutability: "view", type: "function" };
exports.getWhitelistedPoolsByAccountWithData = { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "getWhitelistedPoolsByAccountWithData", outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }, { components: [{ internalType: "string", name: "name", type: "string" }, { internalType: "address", name: "creator", type: "address" }, { internalType: "address", name: "comptroller", type: "address" }, { internalType: "uint256", name: "blockPosted", type: "uint256" }, { internalType: "uint256", name: "timestampPosted", type: "uint256" }], internalType: "struct PoolDirectory.Pool[]", name: "", type: "tuple[]" }, { components: [{ internalType: "uint256", name: "totalSupply", type: "uint256" }, { internalType: "uint256", name: "totalBorrow", type: "uint256" }, { internalType: "address[]", name: "underlyingTokens", type: "address[]" }, { internalType: "string[]", name: "underlyingSymbols", type: "string[]" }, { internalType: "bool", name: "whitelistedAdmin", type: "bool" }], internalType: "struct PoolLens.IonicPoolData[]", name: "", type: "tuple[]" }, { internalType: "bool[]", name: "", type: "bool[]" }], stateMutability: "nonpayable", type: "function" };
exports.initialize = { inputs: [{ internalType: "contract PoolDirectory", name: "_directory", type: "address" }, { internalType: "string", name: "_name", type: "string" }, { internalType: "string", name: "_symbol", type: "string" }, { internalType: "address[]", name: "_hardcodedAddresses", type: "address[]" }, { internalType: "string[]", name: "_hardcodedNames", type: "string[]" }, { internalType: "string[]", name: "_hardcodedSymbols", type: "string[]" }, { internalType: "string[]", name: "_uniswapLPTokenNames", type: "string[]" }, { internalType: "string[]", name: "_uniswapLPTokenSymbols", type: "string[]" }, { internalType: "string[]", name: "_uniswapLPTokenDisplayNames", type: "string[]" }], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.name = { inputs: [], name: "name", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function" };
exports.symbol = { inputs: [], name: "symbol", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function" };
exports.default = [exports.ComptrollerError, exports.Initialized, exports.directory, exports.getBorrowCapsDataForAsset, exports.getBorrowCapsForAsset, exports.getHealthFactor, exports.getPoolAssetsByUser, exports.getPoolAssetsWithData, exports.getPoolSummary, exports.getPoolsByAccountWithData, exports.getPoolsOIonicrWithData, exports.getPublicPoolsByVerificationWithData, exports.getPublicPoolsWithData, exports.getSupplyCapsDataForPool, exports.getSupplyCapsForPool, exports.getWhitelistedPoolsByAccount, exports.getWhitelistedPoolsByAccountWithData, exports.initialize, exports.name, exports.symbol];
