import { AbiItem, Callback, CeloTxObject, Contract, EventLog } from "@celo/connect"; import { EventEmitter } from "events"; import Web3 from "web3"; import { EventOptions } from "./types"; export interface ISwap extends Contract { clone(): ISwap; methods: { paused(): CeloTxObject; getToken(index: number | string): CeloTxObject; getBalances(): CeloTxObject; getSwapFee(): CeloTxObject; getAPrecise(): CeloTxObject; swap(tokenIndexFrom: number | string, tokenIndexTo: number | string, dx: number | string, minDy: number | string, deadline: number | string): CeloTxObject; calculateSwap(tokenIndexFrom: number | string, tokenIndexTo: number | string, dx: number | string): CeloTxObject; }; events: { allEvents: (options?: EventOptions, cb?: Callback) => EventEmitter; }; } export declare const ABI: AbiItem[]; export declare function newISwap(web3: Web3, address: string): ISwap;