@unruggable/gateways
Version:
Trustless Ethereum Multichain CCIP-Read Gateway
28 lines • 1.29 kB
TypeScript
import { type RollupCommit, type RollupDeployment, AbstractRollup } from '../rollup.js';
import type { HexAddress, HexString, ProviderPair, ProofSequence } from '../types.js';
import { Contract } from 'ethers/contract';
import { EthProver } from '../eth/EthProver.js';
import { CachedValue } from '../cached.js';
export type EuclidConfig = {
ScrollChain: HexAddress;
};
export type EuclidCommit = RollupCommit<EthProver> & {
readonly l1BlockNumber: number;
};
export declare class EuclidRollup extends AbstractRollup<EuclidCommit> {
readonly beaconAPI: string;
static readonly mainnetConfig: RollupDeployment<EuclidConfig>;
static readonly sepoliaConfig: RollupDeployment<EuclidConfig>;
readonly ScrollChain: Contract;
readonly beaconConfig: CachedValue<{
genesisTime: bigint;
secondsPerSlot: bigint;
}>;
constructor(providers: ProviderPair, config: EuclidConfig, beaconAPI: string);
fetchLatestCommitIndex(): Promise<bigint>;
protected _fetchParentCommitIndex(commit: EuclidCommit): Promise<bigint>;
protected _fetchCommit(index: bigint): Promise<EuclidCommit>;
encodeWitness(commit: EuclidCommit, proofSeq: ProofSequence): HexString;
windowFromSec(sec: number): number;
}
//# sourceMappingURL=EuclidRollup.d.ts.map