/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ 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 const ABI: AbiItem[] = [ { inputs: [], name: "A", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "A_precise", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "fee", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "i", type: "uint256" }], name: "coins", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "i", type: "uint256" }], name: "balances", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "int128", name: "i", type: "int128" }, { internalType: "int128", name: "j", type: "int128" }, { internalType: "uint256", name: "dx", type: "uint256" }, { internalType: "uint256", name: "min_dy", type: "uint256" }, ], name: "exchange", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "int128", name: "i", type: "int128" }, { internalType: "int128", name: "j", type: "int128" }, { internalType: "uint256", name: "dx", type: "uint256" }, ], name: "get_dy", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "get_virtual_price", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, ]; export function newICurve(web3: Web3, address: string): ICurve { return new web3.eth.Contract(ABI, address) as any; }