import { Interface } from './interface'; import { Signer, MinimalProvider, BigNumber, ContractFunction, EventFilter, ParamType, Listener, TransactionRequest, TransactionResponse } from '../utils/types'; interface Bucket { [name: string]: T; } export declare class Contract { readonly address: string; readonly interface: Interface; readonly signer: Signer; readonly provider: MinimalProvider; readonly estimate: Bucket<(...params: Array) => Promise>; readonly functions: Bucket; readonly filters: Bucket<(...params: Array) => EventFilter>; readonly [name: string]: ContractFunction | any; readonly addressPromise: Promise; readonly deployTransaction: TransactionResponse; constructor(addressOrName: string, contractInterface: Array | string | Interface, signerOrProvider: Signer | MinimalProvider); deployed(): Promise; fallback(overrides?: TransactionRequest): Promise; connect(signerOrProvider: Signer | MinimalProvider): Contract; attach(addressOrName: string): Contract; deploy(bytecode: string, ...args: Array): Promise; private _events; private _getEventFilter; private _addEventListener; on(event: EventFilter | string, listener: Listener): Contract; once(event: EventFilter | string, listener: Listener): Contract; addEventLisener(eventName: EventFilter | string, listener: Listener): Contract; emit(eventName: EventFilter | string, ...args: Array): boolean; listenerCount(eventName?: EventFilter | string): number; listeners(eventName: EventFilter | string): Array; removeAllListeners(eventName: EventFilter | string): Contract; removeListener(eventName: any, listener: Listener): Contract; } export {}; //# sourceMappingURL=contract.d.ts.map