import { AbiItem, Callback, CeloTxObject, Contract, EventLog } from "@celo/connect"; import { EventEmitter } from "events"; import Web3 from "web3"; import { EventOptions } from "./types"; export interface IReserve extends Contract { clone(): IReserve; methods: { setTobinTaxStalenessThreshold(arg0: number | string): CeloTxObject; addToken(arg0: string): CeloTxObject; removeToken(arg0: string, arg1: number | string): CeloTxObject; transferGold(arg0: string, arg1: number | string): CeloTxObject; transferExchangeGold(arg0: string, arg1: number | string): CeloTxObject; transferCollateralAsset(collateralAsset: string, to: string, value: number | string): CeloTxObject; getReserveGoldBalance(): CeloTxObject; getUnfrozenReserveGoldBalance(): CeloTxObject; getOrComputeTobinTax(): CeloTxObject<{ 0: string; 1: string; }>; getTokens(): CeloTxObject; getReserveRatio(): CeloTxObject; addExchangeSpender(arg0: string): CeloTxObject; removeExchangeSpender(arg0: string, arg1: number | string): CeloTxObject; addSpender(arg0: string): CeloTxObject; removeSpender(arg0: string): CeloTxObject; isStableAsset(arg0: string): CeloTxObject; isCollateralAsset(arg0: string): CeloTxObject; getDailySpendingRatioForCollateralAsset(collateralAsset: string): CeloTxObject; isExchangeSpender(exchange: string): CeloTxObject; addCollateralAsset(asset: string): CeloTxObject; transferExchangeCollateralAsset(collateralAsset: string, to: string, value: number | string): CeloTxObject; }; events: { allEvents: (options?: EventOptions, cb?: Callback) => EventEmitter; }; } export declare const ABI: AbiItem[]; export declare function newIReserve(web3: Web3, address: string): IReserve;