@volare.finance/volare.js
Version:
The SDK for Volare Protocol
28 lines (27 loc) • 1.07 kB
TypeScript
/**
* @file Oracle.v2.ts
* @author astra <astra@volare.finance>
* @date 2022
*/
import { Address, BigNumber, Provider } from '@volare.finance/utils.js';
import { ContractInterface } from 'ethers';
export declare class OracleV2 extends Provider {
static ABI(): ContractInterface;
static GetExpiryPrice(oracle: Address, asset: Address, expiry: number): Promise<BigNumber>;
static GetPrice(oracle: Address, asset: Address): Promise<BigNumber>;
constructor(address: Address, endpoint: string);
/**
* @notice get a live asset price from the asset's pricer contract
* @param asset asset address
* @return price scaled by 1e8, denominated in USD
* e.g. 17568900000 => 175.689 USD
*/
getPrice(asset: Address): Promise<BigNumber>;
/**
* @notice get the asset price at specific expiry timestamp
* @param asset asset address
* @param expiryTimestamp expiry timestamp
* @return price scaled by 1e8, denominated in USD
*/
getExpiryPrice(asset: Address, expiryTimestamp: number): Promise<BigNumber>;
}