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 ArbSysInterface extends Interface { getFunction(nameOrSignature: "arbBlockHash" | "arbBlockNumber" | "arbChainID" | "arbOSVersion" | "getStorageGasAvailable" | "isTopLevelCall" | "mapL1SenderContractAddressToL2Alias" | "myCallersAddressWithoutAliasing" | "sendMerkleTreeState" | "sendTxToL1" | "wasMyCallersAddressAliased" | "withdrawEth"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "L2ToL1Transaction" | "L2ToL1Tx" | "SendMerkleUpdate"): EventFragment; encodeFunctionData(functionFragment: "arbBlockHash", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "arbBlockNumber", values?: undefined): string; encodeFunctionData(functionFragment: "arbChainID", values?: undefined): string; encodeFunctionData(functionFragment: "arbOSVersion", values?: undefined): string; encodeFunctionData(functionFragment: "getStorageGasAvailable", values?: undefined): string; encodeFunctionData(functionFragment: "isTopLevelCall", values?: undefined): string; encodeFunctionData(functionFragment: "mapL1SenderContractAddressToL2Alias", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "myCallersAddressWithoutAliasing", values?: undefined): string; encodeFunctionData(functionFragment: "sendMerkleTreeState", values?: undefined): string; encodeFunctionData(functionFragment: "sendTxToL1", values: [AddressLike, BytesLike]): string; encodeFunctionData(functionFragment: "wasMyCallersAddressAliased", values?: undefined): string; encodeFunctionData(functionFragment: "withdrawEth", values: [AddressLike]): string; decodeFunctionResult(functionFragment: "arbBlockHash", data: BytesLike): Result; decodeFunctionResult(functionFragment: "arbBlockNumber", data: BytesLike): Result; decodeFunctionResult(functionFragment: "arbChainID", data: BytesLike): Result; decodeFunctionResult(functionFragment: "arbOSVersion", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStorageGasAvailable", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isTopLevelCall", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mapL1SenderContractAddressToL2Alias", data: BytesLike): Result; decodeFunctionResult(functionFragment: "myCallersAddressWithoutAliasing", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendMerkleTreeState", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendTxToL1", data: BytesLike): Result; decodeFunctionResult(functionFragment: "wasMyCallersAddressAliased", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawEth", data: BytesLike): Result; } export declare namespace L2ToL1TransactionEvent { type InputTuple = [ caller: AddressLike, destination: AddressLike, uniqueId: BigNumberish, batchNumber: BigNumberish, indexInBatch: BigNumberish, arbBlockNum: BigNumberish, ethBlockNum: BigNumberish, timestamp: BigNumberish, callvalue: BigNumberish, data: BytesLike ]; type OutputTuple = [ caller: string, destination: string, uniqueId: bigint, batchNumber: bigint, indexInBatch: bigint, arbBlockNum: bigint, ethBlockNum: bigint, timestamp: bigint, callvalue: bigint, data: string ]; interface OutputObject { caller: string; destination: string; uniqueId: bigint; batchNumber: bigint; indexInBatch: bigint; arbBlockNum: bigint; ethBlockNum: bigint; timestamp: bigint; callvalue: bigint; data: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace L2ToL1TxEvent { type InputTuple = [ caller: AddressLike, destination: AddressLike, hash: BigNumberish, position: BigNumberish, arbBlockNum: BigNumberish, ethBlockNum: BigNumberish, timestamp: BigNumberish, callvalue: BigNumberish, data: BytesLike ]; type OutputTuple = [ caller: string, destination: string, hash: bigint, position: bigint, arbBlockNum: bigint, ethBlockNum: bigint, timestamp: bigint, callvalue: bigint, data: string ]; interface OutputObject { caller: string; destination: string; hash: bigint; position: bigint; arbBlockNum: bigint; ethBlockNum: bigint; timestamp: bigint; callvalue: bigint; data: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace SendMerkleUpdateEvent { type InputTuple = [ reserved: BigNumberish, hash: BytesLike, position: BigNumberish ]; type OutputTuple = [reserved: bigint, hash: string, position: bigint]; interface OutputObject { reserved: bigint; hash: string; position: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface ArbSys extends BaseContract { connect(runner?: ContractRunner | null): ArbSys; waitForDeployment(): Promise; interface: ArbSysInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; arbBlockHash: TypedContractMethod<[ arbBlockNum: BigNumberish ], [ string ], "view">; arbBlockNumber: TypedContractMethod<[], [bigint], "view">; arbChainID: TypedContractMethod<[], [bigint], "view">; arbOSVersion: TypedContractMethod<[], [bigint], "view">; getStorageGasAvailable: TypedContractMethod<[], [bigint], "view">; isTopLevelCall: TypedContractMethod<[], [boolean], "view">; mapL1SenderContractAddressToL2Alias: TypedContractMethod<[ sender: AddressLike, arg1: AddressLike ], [ string ], "view">; myCallersAddressWithoutAliasing: TypedContractMethod<[], [string], "view">; sendMerkleTreeState: TypedContractMethod<[ ], [ [bigint, string, string[]] ], "view">; sendTxToL1: TypedContractMethod<[ destination: AddressLike, data: BytesLike ], [ bigint ], "payable">; wasMyCallersAddressAliased: TypedContractMethod<[], [boolean], "view">; withdrawEth: TypedContractMethod<[ destination: AddressLike ], [ bigint ], "payable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "arbBlockHash"): TypedContractMethod<[arbBlockNum: BigNumberish], [string], "view">; getFunction(nameOrSignature: "arbBlockNumber"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "arbChainID"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "arbOSVersion"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getStorageGasAvailable"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "isTopLevelCall"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "mapL1SenderContractAddressToL2Alias"): TypedContractMethod<[ sender: AddressLike, arg1: AddressLike ], [ string ], "view">; getFunction(nameOrSignature: "myCallersAddressWithoutAliasing"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "sendMerkleTreeState"): TypedContractMethod<[], [[bigint, string, string[]]], "view">; getFunction(nameOrSignature: "sendTxToL1"): TypedContractMethod<[ destination: AddressLike, data: BytesLike ], [ bigint ], "payable">; getFunction(nameOrSignature: "wasMyCallersAddressAliased"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "withdrawEth"): TypedContractMethod<[destination: AddressLike], [bigint], "payable">; getEvent(key: "L2ToL1Transaction"): TypedContractEvent; getEvent(key: "L2ToL1Tx"): TypedContractEvent; getEvent(key: "SendMerkleUpdate"): TypedContractEvent; filters: { "L2ToL1Transaction(address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,bytes)": TypedContractEvent; L2ToL1Transaction: TypedContractEvent; "L2ToL1Tx(address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes)": TypedContractEvent; L2ToL1Tx: TypedContractEvent; "SendMerkleUpdate(uint256,bytes32,uint256)": TypedContractEvent; SendMerkleUpdate: TypedContractEvent; }; } //# sourceMappingURL=ArbSys.d.ts.map