import { Event, Log, RawAction, SmartContractDefinition, SmartContractIterOptions } from '@neo-one/client-common-esnext-esm'; import { Client } from './Client'; export interface SmartContract = Event> { readonly definition: SmartContractDefinition; readonly client: TClient; readonly iterEvents: (options?: SmartContractIterOptions) => AsyncIterable; readonly iterLogs: (options?: SmartContractIterOptions) => AsyncIterable; readonly iterActions: (options?: SmartContractIterOptions) => AsyncIterable; readonly convertAction: (action: RawAction) => TEvent | Log | undefined; } export interface SmartContractAny extends SmartContract { readonly [key: string]: any; }