import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common"; export interface BlacksmithInterface extends utils.Interface { functions: { "addr()": FunctionFragment; "call(address,bytes)": FunctionFragment; "deal(uint256)": FunctionFragment; "pkey()": FunctionFragment; "sign(bytes32)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "addr" | "call" | "deal" | "pkey" | "sign"): FunctionFragment; encodeFunctionData(functionFragment: "addr", values?: undefined): string; encodeFunctionData(functionFragment: "call", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "deal", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "pkey", values?: undefined): string; encodeFunctionData(functionFragment: "sign", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; decodeFunctionResult(functionFragment: "call", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pkey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sign", data: BytesLike): Result; events: {}; } export interface Blacksmith extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: BlacksmithInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { addr(overrides?: CallOverrides): Promise<[string]>; call(_addr: PromiseOrValue, _calldata: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; deal(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pkey(overrides?: CallOverrides): Promise<[BigNumber]>; sign(_digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; addr(overrides?: CallOverrides): Promise; call(_addr: PromiseOrValue, _calldata: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; deal(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pkey(overrides?: CallOverrides): Promise; sign(_digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { addr(overrides?: CallOverrides): Promise; call(_addr: PromiseOrValue, _calldata: PromiseOrValue, overrides?: CallOverrides): Promise; deal(_amount: PromiseOrValue, overrides?: CallOverrides): Promise; pkey(overrides?: CallOverrides): Promise; sign(_digest: PromiseOrValue, overrides?: CallOverrides): Promise<[number, string, string]>; }; filters: {}; estimateGas: { addr(overrides?: CallOverrides): Promise; call(_addr: PromiseOrValue, _calldata: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; deal(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pkey(overrides?: CallOverrides): Promise; sign(_digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { addr(overrides?: CallOverrides): Promise; call(_addr: PromiseOrValue, _calldata: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; deal(_amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pkey(overrides?: CallOverrides): Promise; sign(_digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }