import { Contract } from 'web3-eth-contract'; import { Contracts } from '../modules/Contracts'; import { BaseValue, BigNumberable, CallOptions, FundingRate, FundingRateBounds, SendOptions, TxResult, address } from '../lib/types'; export declare class FundingOracle { private contracts; private fundingOracle; constructor(contracts: Contracts, fundingOracle?: Contract); get address(): string; getBounds(options?: CallOptions): Promise; /** * Get the funding that would accumulate over a period of time at the current rate. * * This is simply the current funding rate multiplied by the time delta in seconds. */ getFunding(timeDeltaSeconds: BigNumberable, options?: CallOptions): Promise; /** * Get the current funding rate, represented as a per-second rate. */ getFundingRate(options?: CallOptions): Promise; /** * Get the address with permission to update the funding rate. */ getFundingRateProvider(options?: CallOptions): Promise
; /** * Simulates the result of calling setFundingRate() using `eth_call`. */ getBoundedFundingRate(fundingRate: FundingRate, options?: CallOptions): Promise; /** * Set the funding rate. * * Must be called by the funding rate provider. */ setFundingRate(fundingRate: FundingRate, options?: SendOptions): Promise; /** * Set the funding rate provider. * * Must be called by the contract owner. */ setFundingRateProvider(fundingRateProvider: address, options?: SendOptions): Promise; }