@dolomite-exchange/dolomite-margin
Version:
Ethereum Smart Contracts and TypeScript library used for the DolomiteMargin trading protocol
33 lines (32 loc) • 968 B
TypeScript
import { Decimal, Integer } from '../types';
interface ExtraData {
interestRateModel: string;
}
export interface AlwaysZeroData extends ExtraData {
interestRateModel: 'AlwaysZero';
}
export interface AAVECopyCatData extends ExtraData {
interestRateModel: 'AAVECopyCat';
isStableCoin: boolean;
}
export interface DoubleExponentData extends ExtraData {
interestRateModel: 'DoubleExponent';
maxAPR: Decimal;
coefficients: number[];
}
export declare class Interest {
private networkId;
constructor(networkId: number);
setNetworkId(networkId: number): void;
getEarningsRate(): Decimal;
getInterestPerSecondByMarket(marketId: Integer, totals: {
totalBorrowed: Integer;
totalSupply: Integer;
}, extraData?: AAVECopyCatData | DoubleExponentData): {
borrowInterestRate: Integer;
supplyInterestRate: Integer;
};
private getNetworkConstants;
private getMarketConstants;
}
export {};