import { ModuleMetadata } from '@nestjs/common'; import { Signer } from 'ethers'; import { Provider } from '@ethersproject/providers'; export interface ContractFactoryOptions { address?: string; provider?: Signer | Provider; } export interface ContractModuleSyncOptions extends ContractFactoryOptions { } export interface ContractModuleAsyncOptions extends Pick { useFactory: (...args: any[]) => Promise; inject?: any[]; }