@river-build/web3
Version:
Dapps for our Space and Registry contracts
28 lines • 1.56 kB
TypeScript
import { BytesLike, ethers } from 'ethers';
export type PromiseOrValue<T> = T | Promise<T>;
export declare const UNKNOWN_ERROR = "UNKNOWN_ERROR";
export declare class BaseContractShim<T_DEV_CONTRACT extends ethers.Contract, T_DEV_INTERFACE extends ethers.utils.Interface> {
readonly address: string;
readonly contractInterface: ethers.utils.Interface;
readonly provider: ethers.providers.Provider | undefined;
readonly signer: ethers.Signer | undefined;
private readonly abi;
private readContract?;
private writeContract?;
constructor(address: string, provider: ethers.providers.Provider | undefined, abi: ethers.ContractInterface);
get interface(): T_DEV_INTERFACE;
get read(): T_DEV_CONTRACT;
write(signer: ethers.Signer): T_DEV_CONTRACT;
decodeFunctionResult<FnName extends keyof T_DEV_CONTRACT['functions']>(functionName: FnName, data: BytesLike): ethers.utils.Result;
decodeFunctionData<FnName extends keyof T_DEV_CONTRACT['functions']>(functionName: FnName, data: BytesLike): ethers.utils.Result;
encodeFunctionData<FnName extends keyof T_DEV_CONTRACT['functions'], FnParams extends Parameters<T_DEV_CONTRACT['functions'][FnName]>>(functionName: FnName, args: FnParams): string;
parseError(error: unknown): Error & {
code?: string;
data?: unknown;
};
private getErrorData;
parseLog(log: ethers.providers.Log): ethers.utils.LogDescription;
private createReadContractInstance;
private createWriteContractInstance;
}
//# sourceMappingURL=BaseContractShim.d.ts.map