///
import BN from "bn.js";
import { ContractOptions } from "web3-eth-contract";
import { EventLog } from "web3-core";
import { EventEmitter } from "events";
import { Callback, NonPayableTransactionObject, BlockType, ContractEventLog, BaseContract } from "./types";
export interface EventOptions {
filter?: object;
fromBlock?: BlockType;
topics?: string[];
}
export declare type NewExchange = ContractEventLog<{
token: string;
exchange: string;
0: string;
1: string;
}>;
export interface UniswapFactoryAbi extends BaseContract {
constructor(jsonInterface: any[], address?: string, options?: ContractOptions): UniswapFactoryAbi;
clone(): UniswapFactoryAbi;
methods: {
initializeFactory(template: string): NonPayableTransactionObject;
createExchange(token: string): NonPayableTransactionObject;
getExchange(token: string): NonPayableTransactionObject;
getToken(exchange: string): NonPayableTransactionObject;
getTokenWithId(token_id: number | string | BN): NonPayableTransactionObject;
exchangeTemplate(): NonPayableTransactionObject;
tokenCount(): NonPayableTransactionObject;
};
events: {
NewExchange(cb?: Callback): EventEmitter;
NewExchange(options?: EventOptions, cb?: Callback): EventEmitter;
allEvents(options?: EventOptions, cb?: Callback): EventEmitter;
};
once(event: "NewExchange", cb: Callback): void;
once(event: "NewExchange", options: EventOptions, cb: Callback): void;
}