import { AbiItem, Callback, CeloTxObject, Contract, EventLog } from "@celo/connect"; import { EventEmitter } from "events"; import Web3 from "web3"; import { EventOptions } from "./types"; export interface ICurve extends Contract { clone(): ICurve; methods: { A(): CeloTxObject; A_precise(): CeloTxObject; fee(): CeloTxObject; coins(i: number | string): CeloTxObject; balances(i: number | string): CeloTxObject; exchange(i: number | string, j: number | string, dx: number | string, min_dy: number | string): CeloTxObject; get_dy(i: number | string, j: number | string, dx: number | string): CeloTxObject; get_virtual_price(): CeloTxObject; }; events: { allEvents: (options?: EventOptions, cb?: Callback) => EventEmitter; }; } export declare const ABI: AbiItem[]; export declare function newICurve(web3: Web3, address: string): ICurve;