import { Interface, JsonFragment } from '@ethersproject/abi';
import { EventData } from '../types';
import { Provider } from '../publicTypes';
export default class Contract {
    readonly abi: JsonFragment[];
    readonly coder: Interface;
    readonly address: string;
    readonly provider: Provider;
    constructor(abi: JsonFragment[], address: string, provider: Provider);
    call(method: string, args: (string | string[])[]): Promise<ReadonlyArray<any>>;
    fetchLogs(eventName: string, tokenId: string, fromBlock?: string): Promise<EventData[]>;
    private callEth;
}
