@price-oracle/v1-core-interfaces
Version:
Price Oracle v1 Core Interfaces and needed integration files
228 lines (224 loc) • 4.55 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import { Contract, Signer, utils } from "ethers";
import type { Provider } from "@ethersproject/providers";
import type { IPriceOracle, IPriceOracleInterface } from "../IPriceOracle";
const _abi = [
{
inputs: [],
name: "PriceOracle_BaseAmountOverflow",
type: "error",
},
{
inputs: [],
name: "PriceOracle_ExceededVolatility",
type: "error",
},
{
inputs: [],
name: "POOL_MANAGER_FACTORY",
outputs: [
{
internalType: "contract IPoolManagerFactory",
name: "_poolManagerFactory",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "VOLATILITY_PRECISION",
outputs: [
{
internalType: "uint256",
name: "_volatilityPrecision",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "WETH",
outputs: [
{
internalType: "contract IERC20",
name: "_weth",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "contract IUniswapV3Pool",
name: "_pool",
type: "address",
},
],
name: "isManipulated",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "contract IERC20",
name: "_tokenA",
type: "address",
},
{
internalType: "contract IERC20",
name: "_tokenB",
type: "address",
},
],
name: "isPairSupported",
outputs: [
{
internalType: "bool",
name: "_isSupported",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_baseAmount",
type: "uint256",
},
{
internalType: "contract IERC20",
name: "_tokenA",
type: "address",
},
{
internalType: "contract IERC20",
name: "_tokenB",
type: "address",
},
{
internalType: "uint32",
name: "_period",
type: "uint32",
},
{
internalType: "uint24",
name: "_cacheExpiry",
type: "uint24",
},
],
name: "quotePeriodCache",
outputs: [
{
internalType: "uint256",
name: "_quoteAmount",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_baseAmount",
type: "uint256",
},
{
internalType: "contract IERC20",
name: "_tokenA",
type: "address",
},
{
internalType: "contract IERC20",
name: "_tokenB",
type: "address",
},
],
name: "quoteSpot",
outputs: [
{
internalType: "uint256",
name: "_quoteAmount",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_baseAmount",
type: "uint256",
},
{
internalType: "contract IERC20",
name: "_tokenA",
type: "address",
},
{
internalType: "contract IERC20",
name: "_tokenB",
type: "address",
},
{
internalType: "uint32",
name: "_period",
type: "uint32",
},
{
internalType: "uint256",
name: "_volatility",
type: "uint256",
},
{
internalType: "uint24",
name: "_cacheExpiry",
type: "uint24",
},
],
name: "quoteSpotPeriodProtectedVolatilityCache",
outputs: [
{
internalType: "uint256",
name: "_spotAmount",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
];
export class IPriceOracle__factory {
static readonly abi = _abi;
static createInterface(): IPriceOracleInterface {
return new utils.Interface(_abi) as IPriceOracleInterface;
}
static connect(
address: string,
signerOrProvider: Signer | Provider
): IPriceOracle {
return new Contract(address, _abi, signerOrProvider) as IPriceOracle;
}
}