UNPKG

@kleros/vea-contracts

Version:

Smart contracts for Vea

351 lines (350 loc) 21.2 kB
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 VeaOutboxGnosisToArbInterface extends Interface { getFunction(nameOrSignature: "BURN_ADDRESS" | "burn" | "challenge" | "challengePeriod" | "challengers" | "claim" | "claims" | "deposit" | "depositPlusReward" | "epochAt" | "epochNow" | "epochPeriod" | "isMsgRelayed" | "latestVerifiedEpoch" | "resolveDisputedClaim" | "routerGnosisToArb" | "sendMessage" | "sequencerDelayLimit" | "sequencerFutureLimit" | "stateRoot" | "timeoutEpochs" | "timestampDelayUpdated" | "timestampFutureUpdated" | "updateSequencerDelayLimit" | "updateSequencerFutureLimit" | "verifySnapshot" | "withdrawChallengeDeposit" | "withdrawChallengerEscapeHatch" | "withdrawClaimDeposit" | "withdrawClaimerEscapeHatch"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Challenged" | "Claimed" | "MessageRelayed" | "SequencerDelayLimitUpdateReceived" | "SequencerFutureLimitUpdateReceived" | "Verified"): EventFragment; encodeFunctionData(functionFragment: "BURN_ADDRESS", values?: undefined): string; encodeFunctionData(functionFragment: "burn", values?: undefined): string; encodeFunctionData(functionFragment: "challenge", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "challengePeriod", values?: undefined): string; encodeFunctionData(functionFragment: "challengers", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "claim", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "claims", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "deposit", values?: undefined): string; encodeFunctionData(functionFragment: "depositPlusReward", values?: undefined): string; encodeFunctionData(functionFragment: "epochAt", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "epochNow", values?: undefined): string; encodeFunctionData(functionFragment: "epochPeriod", values?: undefined): string; encodeFunctionData(functionFragment: "isMsgRelayed", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "latestVerifiedEpoch", values?: undefined): string; encodeFunctionData(functionFragment: "resolveDisputedClaim", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "routerGnosisToArb", values?: undefined): string; encodeFunctionData(functionFragment: "sendMessage", values: [BytesLike[], BigNumberish, AddressLike, BytesLike]): string; encodeFunctionData(functionFragment: "sequencerDelayLimit", values?: undefined): string; encodeFunctionData(functionFragment: "sequencerFutureLimit", values?: undefined): string; encodeFunctionData(functionFragment: "stateRoot", values?: undefined): string; encodeFunctionData(functionFragment: "timeoutEpochs", values?: undefined): string; encodeFunctionData(functionFragment: "timestampDelayUpdated", values?: undefined): string; encodeFunctionData(functionFragment: "timestampFutureUpdated", values?: undefined): string; encodeFunctionData(functionFragment: "updateSequencerDelayLimit", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "updateSequencerFutureLimit", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "verifySnapshot", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawChallengeDeposit", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawChallengerEscapeHatch", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawClaimDeposit", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawClaimerEscapeHatch", values: [BigNumberish]): string; decodeFunctionResult(functionFragment: "BURN_ADDRESS", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "challenge", data: BytesLike): Result; decodeFunctionResult(functionFragment: "challengePeriod", data: BytesLike): Result; decodeFunctionResult(functionFragment: "challengers", data: BytesLike): Result; decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; decodeFunctionResult(functionFragment: "claims", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositPlusReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "epochAt", data: BytesLike): Result; decodeFunctionResult(functionFragment: "epochNow", data: BytesLike): Result; decodeFunctionResult(functionFragment: "epochPeriod", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isMsgRelayed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "latestVerifiedEpoch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "resolveDisputedClaim", data: BytesLike): Result; decodeFunctionResult(functionFragment: "routerGnosisToArb", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendMessage", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sequencerDelayLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sequencerFutureLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stateRoot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "timeoutEpochs", data: BytesLike): Result; decodeFunctionResult(functionFragment: "timestampDelayUpdated", data: BytesLike): Result; decodeFunctionResult(functionFragment: "timestampFutureUpdated", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateSequencerDelayLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateSequencerFutureLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "verifySnapshot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawChallengeDeposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawChallengerEscapeHatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawClaimDeposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawClaimerEscapeHatch", data: BytesLike): Result; } export declare namespace ChallengedEvent { type InputTuple = [_epoch: BigNumberish, _challenger: AddressLike]; type OutputTuple = [_epoch: bigint, _challenger: string]; interface OutputObject { _epoch: bigint; _challenger: string; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace ClaimedEvent { type InputTuple = [ _claimer: AddressLike, _epoch: BigNumberish, _stateRoot: BytesLike ]; type OutputTuple = [ _claimer: string, _epoch: bigint, _stateRoot: string ]; interface OutputObject { _claimer: string; _epoch: bigint; _stateRoot: string; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace MessageRelayedEvent { type InputTuple = [_msgId: BigNumberish]; type OutputTuple = [_msgId: bigint]; interface OutputObject { _msgId: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SequencerDelayLimitUpdateReceivedEvent { type InputTuple = [_newSequencerDelayLimit: BigNumberish]; type OutputTuple = [_newSequencerDelayLimit: bigint]; interface OutputObject { _newSequencerDelayLimit: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SequencerFutureLimitUpdateReceivedEvent { type InputTuple = [_newSequencerFutureLimit: BigNumberish]; type OutputTuple = [_newSequencerFutureLimit: bigint]; interface OutputObject { _newSequencerFutureLimit: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace VerifiedEvent { type InputTuple = [_epoch: BigNumberish]; type OutputTuple = [_epoch: bigint]; interface OutputObject { _epoch: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export interface VeaOutboxGnosisToArb extends BaseContract { connect(runner?: ContractRunner | null): VeaOutboxGnosisToArb; waitForDeployment(): Promise<this>; interface: VeaOutboxGnosisToArbInterface; 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>; BURN_ADDRESS: TypedContractMethod<[], [string], "view">; burn: TypedContractMethod<[], [bigint], "view">; challenge: TypedContractMethod<[ _epoch: BigNumberish, _disputedStateRoot: BytesLike ], [ void ], "payable">; challengePeriod: TypedContractMethod<[], [bigint], "view">; challengers: TypedContractMethod<[epoch: BigNumberish], [string], "view">; claim: TypedContractMethod<[ _epoch: BigNumberish, _stateRoot: BytesLike ], [ void ], "payable">; claims: TypedContractMethod<[ epoch: BigNumberish ], [ [ string, string, bigint, bigint ] & { stateRoot: string; claimer: string; timestamp: bigint; honest: bigint; } ], "view">; deposit: TypedContractMethod<[], [bigint], "view">; depositPlusReward: TypedContractMethod<[], [bigint], "view">; epochAt: TypedContractMethod<[timestamp: BigNumberish], [bigint], "view">; epochNow: TypedContractMethod<[], [bigint], "view">; epochPeriod: TypedContractMethod<[], [bigint], "view">; isMsgRelayed: TypedContractMethod<[_msgId: BigNumberish], [boolean], "view">; latestVerifiedEpoch: TypedContractMethod<[], [bigint], "view">; resolveDisputedClaim: TypedContractMethod<[ _epoch: BigNumberish, _stateRoot: BytesLike ], [ void ], "nonpayable">; routerGnosisToArb: TypedContractMethod<[], [string], "view">; sendMessage: TypedContractMethod<[ _proof: BytesLike[], _msgId: BigNumberish, _to: AddressLike, _message: BytesLike ], [ void ], "nonpayable">; sequencerDelayLimit: TypedContractMethod<[], [bigint], "view">; sequencerFutureLimit: TypedContractMethod<[], [bigint], "view">; stateRoot: TypedContractMethod<[], [string], "view">; timeoutEpochs: TypedContractMethod<[], [bigint], "view">; timestampDelayUpdated: TypedContractMethod<[], [bigint], "view">; timestampFutureUpdated: TypedContractMethod<[], [bigint], "view">; updateSequencerDelayLimit: TypedContractMethod<[ _newSequencerDelayLimit: BigNumberish, _timestamp: BigNumberish ], [ void ], "nonpayable">; updateSequencerFutureLimit: TypedContractMethod<[ _newSequencerFutureLimit: BigNumberish, _timestamp: BigNumberish ], [ void ], "nonpayable">; verifySnapshot: TypedContractMethod<[ _epoch: BigNumberish ], [ void ], "nonpayable">; withdrawChallengeDeposit: TypedContractMethod<[ _epoch: BigNumberish ], [ void ], "nonpayable">; withdrawChallengerEscapeHatch: TypedContractMethod<[ _epoch: BigNumberish ], [ void ], "nonpayable">; withdrawClaimDeposit: TypedContractMethod<[ _epoch: BigNumberish ], [ void ], "nonpayable">; withdrawClaimerEscapeHatch: TypedContractMethod<[ _epoch: BigNumberish ], [ void ], "nonpayable">; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: "BURN_ADDRESS"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "burn"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "challenge"): TypedContractMethod<[ _epoch: BigNumberish, _disputedStateRoot: BytesLike ], [ void ], "payable">; getFunction(nameOrSignature: "challengePeriod"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "challengers"): TypedContractMethod<[epoch: BigNumberish], [string], "view">; getFunction(nameOrSignature: "claim"): TypedContractMethod<[ _epoch: BigNumberish, _stateRoot: BytesLike ], [ void ], "payable">; getFunction(nameOrSignature: "claims"): TypedContractMethod<[ epoch: BigNumberish ], [ [ string, string, bigint, bigint ] & { stateRoot: string; claimer: string; timestamp: bigint; honest: bigint; } ], "view">; getFunction(nameOrSignature: "deposit"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "depositPlusReward"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "epochAt"): TypedContractMethod<[timestamp: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "epochNow"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "epochPeriod"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "isMsgRelayed"): TypedContractMethod<[_msgId: BigNumberish], [boolean], "view">; getFunction(nameOrSignature: "latestVerifiedEpoch"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "resolveDisputedClaim"): TypedContractMethod<[ _epoch: BigNumberish, _stateRoot: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "routerGnosisToArb"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "sendMessage"): TypedContractMethod<[ _proof: BytesLike[], _msgId: BigNumberish, _to: AddressLike, _message: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "sequencerDelayLimit"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "sequencerFutureLimit"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "stateRoot"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "timeoutEpochs"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "timestampDelayUpdated"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "timestampFutureUpdated"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "updateSequencerDelayLimit"): TypedContractMethod<[ _newSequencerDelayLimit: BigNumberish, _timestamp: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "updateSequencerFutureLimit"): TypedContractMethod<[ _newSequencerFutureLimit: BigNumberish, _timestamp: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "verifySnapshot"): TypedContractMethod<[_epoch: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "withdrawChallengeDeposit"): TypedContractMethod<[_epoch: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "withdrawChallengerEscapeHatch"): TypedContractMethod<[_epoch: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "withdrawClaimDeposit"): TypedContractMethod<[_epoch: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "withdrawClaimerEscapeHatch"): TypedContractMethod<[_epoch: BigNumberish], [void], "nonpayable">; getEvent(key: "Challenged"): TypedContractEvent<ChallengedEvent.InputTuple, ChallengedEvent.OutputTuple, ChallengedEvent.OutputObject>; getEvent(key: "Claimed"): TypedContractEvent<ClaimedEvent.InputTuple, ClaimedEvent.OutputTuple, ClaimedEvent.OutputObject>; getEvent(key: "MessageRelayed"): TypedContractEvent<MessageRelayedEvent.InputTuple, MessageRelayedEvent.OutputTuple, MessageRelayedEvent.OutputObject>; getEvent(key: "SequencerDelayLimitUpdateReceived"): TypedContractEvent<SequencerDelayLimitUpdateReceivedEvent.InputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputObject>; getEvent(key: "SequencerFutureLimitUpdateReceived"): TypedContractEvent<SequencerFutureLimitUpdateReceivedEvent.InputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputObject>; getEvent(key: "Verified"): TypedContractEvent<VerifiedEvent.InputTuple, VerifiedEvent.OutputTuple, VerifiedEvent.OutputObject>; filters: { "Challenged(uint256,address)": TypedContractEvent<ChallengedEvent.InputTuple, ChallengedEvent.OutputTuple, ChallengedEvent.OutputObject>; Challenged: TypedContractEvent<ChallengedEvent.InputTuple, ChallengedEvent.OutputTuple, ChallengedEvent.OutputObject>; "Claimed(address,uint256,bytes32)": TypedContractEvent<ClaimedEvent.InputTuple, ClaimedEvent.OutputTuple, ClaimedEvent.OutputObject>; Claimed: TypedContractEvent<ClaimedEvent.InputTuple, ClaimedEvent.OutputTuple, ClaimedEvent.OutputObject>; "MessageRelayed(uint64)": TypedContractEvent<MessageRelayedEvent.InputTuple, MessageRelayedEvent.OutputTuple, MessageRelayedEvent.OutputObject>; MessageRelayed: TypedContractEvent<MessageRelayedEvent.InputTuple, MessageRelayedEvent.OutputTuple, MessageRelayedEvent.OutputObject>; "SequencerDelayLimitUpdateReceived(uint256)": TypedContractEvent<SequencerDelayLimitUpdateReceivedEvent.InputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputObject>; SequencerDelayLimitUpdateReceived: TypedContractEvent<SequencerDelayLimitUpdateReceivedEvent.InputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputTuple, SequencerDelayLimitUpdateReceivedEvent.OutputObject>; "SequencerFutureLimitUpdateReceived(uint256)": TypedContractEvent<SequencerFutureLimitUpdateReceivedEvent.InputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputObject>; SequencerFutureLimitUpdateReceived: TypedContractEvent<SequencerFutureLimitUpdateReceivedEvent.InputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputTuple, SequencerFutureLimitUpdateReceivedEvent.OutputObject>; "Verified(uint256)": TypedContractEvent<VerifiedEvent.InputTuple, VerifiedEvent.OutputTuple, VerifiedEvent.OutputObject>; Verified: TypedContractEvent<VerifiedEvent.InputTuple, VerifiedEvent.OutputTuple, VerifiedEvent.OutputObject>; }; }