@hashflow/contracts-evm
Version:
EVM Smart Contracts for Solidity
180 lines (179 loc) • 9.93 kB
TypeScript
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common";
export interface WETH9Interface extends Interface {
getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "deposit" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom" | "withdraw"): FunctionFragment;
getEvent(nameOrSignatureOrTopic: "Approval" | "Deposit" | "Transfer" | "Withdrawal"): EventFragment;
encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string;
encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
encodeFunctionData(functionFragment: "deposit", values?: undefined): string;
encodeFunctionData(functionFragment: "name", values?: undefined): string;
encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "withdraw", values: [BigNumberish]): string;
decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
}
export declare namespace ApprovalEvent {
type InputTuple = [
src: AddressLike,
guy: AddressLike,
wad: BigNumberish
];
type OutputTuple = [src: string, guy: string, wad: bigint];
interface OutputObject {
src: string;
guy: string;
wad: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace DepositEvent {
type InputTuple = [dst: AddressLike, wad: BigNumberish];
type OutputTuple = [dst: string, wad: bigint];
interface OutputObject {
dst: string;
wad: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace TransferEvent {
type InputTuple = [
src: AddressLike,
dst: AddressLike,
wad: BigNumberish
];
type OutputTuple = [src: string, dst: string, wad: bigint];
interface OutputObject {
src: string;
dst: string;
wad: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace WithdrawalEvent {
type InputTuple = [src: AddressLike, wad: BigNumberish];
type OutputTuple = [src: string, wad: bigint];
interface OutputObject {
src: string;
wad: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export interface WETH9 extends BaseContract {
connect(runner?: ContractRunner | null): WETH9;
waitForDeployment(): Promise<this>;
interface: WETH9Interface;
queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
listeners(eventName?: string): Promise<Array<Listener>>;
removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
allowance: TypedContractMethod<[
arg0: AddressLike,
arg1: AddressLike
], [
bigint
], "view">;
approve: TypedContractMethod<[
guy: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
balanceOf: TypedContractMethod<[arg0: AddressLike], [bigint], "view">;
decimals: TypedContractMethod<[], [bigint], "view">;
deposit: TypedContractMethod<[], [void], "payable">;
name: TypedContractMethod<[], [string], "view">;
symbol: TypedContractMethod<[], [string], "view">;
totalSupply: TypedContractMethod<[], [bigint], "view">;
transfer: TypedContractMethod<[
dst: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
transferFrom: TypedContractMethod<[
src: AddressLike,
dst: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
withdraw: TypedContractMethod<[wad: BigNumberish], [void], "nonpayable">;
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
getFunction(nameOrSignature: "allowance"): TypedContractMethod<[
arg0: AddressLike,
arg1: AddressLike
], [
bigint
], "view">;
getFunction(nameOrSignature: "approve"): TypedContractMethod<[
guy: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[arg0: AddressLike], [bigint], "view">;
getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">;
getFunction(nameOrSignature: "deposit"): TypedContractMethod<[], [void], "payable">;
getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">;
getFunction(nameOrSignature: "transfer"): TypedContractMethod<[
dst: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[
src: AddressLike,
dst: AddressLike,
wad: BigNumberish
], [
boolean
], "nonpayable">;
getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[wad: BigNumberish], [void], "nonpayable">;
getEvent(key: "Approval"): TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
getEvent(key: "Deposit"): TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>;
getEvent(key: "Transfer"): TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
getEvent(key: "Withdrawal"): TypedContractEvent<WithdrawalEvent.InputTuple, WithdrawalEvent.OutputTuple, WithdrawalEvent.OutputObject>;
filters: {
"Approval(address,address,uint256)": TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
Approval: TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
"Deposit(address,uint256)": TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>;
Deposit: TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>;
"Transfer(address,address,uint256)": TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
Transfer: TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
"Withdrawal(address,uint256)": TypedContractEvent<WithdrawalEvent.InputTuple, WithdrawalEvent.OutputTuple, WithdrawalEvent.OutputObject>;
Withdrawal: TypedContractEvent<WithdrawalEvent.InputTuple, WithdrawalEvent.OutputTuple, WithdrawalEvent.OutputObject>;
};
}