/** * @file Rifi * @desc This file defines the constructor of the `Rifi` class. * @hidden */ import { ethers } from "ethers"; import * as eth from "./eth"; import * as util from "./util"; import * as rifi from "./rifi"; import * as api from "./api"; import { Provider, RifiOptions, RifiInstance } from "./types"; /** * Creates an instance of the Rifi.js SDK. * * @param {Provider | string} [provider] Optional Ethereum network provider. * Defaults to Ethers.js fallback mainnet provider. * @param {object} [options] Optional provider options. * * @example * ``` * var rifi = new Rifi(window.ethereum); // web browser * * var rifi = new Rifi('http://127.0.0.1:8545'); // HTTP provider * * var rifi = new Rifi(); // Uses Ethers.js fallback mainnet (for testing only) * * var rifi = new Rifi('ropsten'); // Uses Ethers.js fallback (for testing only) * * // Init with private key (server side) * var rifi = new Rifi('https://mainnet.infura.io/v3/_your_project_id_', { * privateKey: '0x_your_private_key_', // preferably with environment variable * }); * * // Init with HD mnemonic (server side) * var rifi = new Rifi('mainnet' { * mnemonic: 'clutch captain shoe...', // preferably with environment variable * }); * ``` * * @returns {object} Returns an instance of the Rifi.js SDK. */ declare const Rifi: { (provider?: Provider | string, options?: RifiOptions): RifiInstance; eth: typeof eth; api: typeof api; util: typeof util; _ethers: typeof ethers; decimals: { RIFI: number; rBNB: number; BNB: number; rBUSD: number; BUSD: number; rUSDC: number; USDC: number; rUSDT: number; USDT: number; rDAI: number; DAI: number; rBTC: number; BTC: number; RIFItest: number; BUSDv: number; USDTv: number; USDTc: number; DAIc: number; DAIa: number; COMP: number; XVS: number; AAVE: number; ASTR: number; rASTR: number; }; rifi: { getRifiBalance: typeof rifi.getRifiBalance; getRifiAccrued: typeof rifi.getRifiAccrued; }; vaultConfig: { bsc_mainnet: { AirdropVaultT1: { depositToken: string; rewardToken: string; rewardLocker: string; }; VaultBusdVenusT1: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultUsdtVenusT1: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultUsdcVenusT1: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultDaiVenusT1: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultRifiTita: { depositToken: string; rewardToken: string; rewardLocker: string; }; VaultBusdVenus: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; AirdropVault: { depositToken: string; }; RifiFixedApyNoLock: { depositToken: string; rewardToken: string; }; }; mainnet: { VaultUsdcComp: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultUsdtAave: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; }; bsc_testnet: { VaultBusdVenus: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; VaultUsdtVenus: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; KabyNFTVault: { depositToken: string; rewardToken: string; isNFTVault: boolean; }; VaultRifiRifi: { depositToken: string; rewardToken: string; rewardLocker: string; }; VaultRifiTita: { depositToken: string; rewardToken: string; rewardLocker: string; }; VaultRifiAirdropT2: { depositToken: string; }; RifiFixedApyNoLock: { depositToken: string; rewardToken: string; }; RifiBUSDFixedApyNoLock: { depositToken: string; rewardToken: string; }; }; ropsten: { VaultUsdtComp: { depositToken: string; earnToken: string[]; }; }; kovan: { VaultDaiAave: { depositToken: string; rewardToken: string; earnToken: string[]; rewardLocker: string; }; }; }; }; export = Rifi;