@unruggable/gateways
Version:
Trustless Ethereum Multichain CCIP-Read Gateway
61 lines • 2.76 kB
TypeScript
import type { RollupDeployment } from '../rollup.js';
import type { HexAddress, ProviderPair } from '../types.js';
import { Contract } from 'ethers/contract';
import { AbstractOPRollup, type AbstractOPCommit } from './AbstractOPRollup.js';
export declare const PORTAL_ABI: any;
export declare const GAME_FINDER_ABI: any;
export declare const GAME_ABI: any;
export type OPFaultConfig = {
OptimismPortal: HexAddress;
GameFinder: HexAddress;
};
export type OPFaultCommit = AbstractOPCommit & {
game: ABIFoundGame;
};
type ABIFoundGame = {
gameType: bigint;
created: bigint;
gameProxy: HexAddress;
l2BlockNumber: bigint;
rootClaim: string;
};
export declare class OPFaultRollup extends AbstractOPRollup<OPFaultCommit> {
minAgeSec: number;
static readonly mainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly sepoliaConfig: RollupDeployment<OPFaultConfig>;
static readonly baseMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly baseSepoliaConfig: RollupDeployment<OPFaultConfig>;
static readonly inkMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly inkSepoliaConfig: RollupDeployment<OPFaultConfig>;
static readonly unichainMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly unichainSepoliaConfig: RollupDeployment<OPFaultConfig>;
static readonly soneiumMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly soneiumMinatoConfig: RollupDeployment<OPFaultConfig>;
static readonly swellMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly swellSepoliaConfig: RollupDeployment<OPFaultConfig>;
static readonly worldMainnetConfig: RollupDeployment<OPFaultConfig>;
static readonly celoMainnetConfig: RollupDeployment<OPFaultConfig>;
readonly OptimismPortal: Contract;
readonly GameFinder: Contract;
gameTypes: number[];
unfinalizedRootClaimTimeoutMs: number;
constructor(providers: ProviderPair, config: OPFaultConfig, minAgeSec?: number);
get gameTypeBitMask(): number;
get unfinalized(): boolean;
fetchRespectedGameType(): Promise<bigint>;
private _ensureRootClaim;
fetchLatestCommitIndex(): Promise<bigint>;
protected _fetchParentCommitIndex(commit: OPFaultCommit): Promise<bigint>;
protected _fetchCommit(index: bigint): Promise<{
game: ABIFoundGame;
index: bigint;
prover: import("../index.js").EthProver;
blockHash: import("../types.js").HexString;
stateRoot: import("../types.js").HexString;
passerRoot: import("../types.js").HexString;
}>;
isCommitStillValid(commit: OPFaultCommit): Promise<boolean>;
windowFromSec(sec: number): number;
}
export {};
//# sourceMappingURL=OPFaultRollup.d.ts.map