import { TimelockController } from '@hyperlane-xyz/core'; import { Address } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../../providers/MultiProvider.js'; import { EvmEventLogsReader, EvmEventLogsReaderConfig } from '../../rpc/evm/EvmEventLogsReader.js'; import { ChainNameOrId } from '../../types.js'; import { ExecutableTimelockTx, TimelockTx } from '../types.js'; export type EvmTimelockReaderConfig = { chain: Readonly; timelockAddress: Readonly
; multiProvider: Readonly; } & EvmEventLogsReaderConfig; export declare class EvmTimelockReader { protected readonly chain: ChainNameOrId; protected readonly multiProvider: MultiProvider; protected timelockInstance: TimelockController; protected evmLogReader: EvmEventLogsReader; protected constructor(chain: ChainNameOrId, multiProvider: MultiProvider, timelockInstance: TimelockController, evmLogReader: EvmEventLogsReader); static fromConfig(config: EvmTimelockReaderConfig): EvmTimelockReader; getOperationsSalt(): Promise>; getScheduledOperations(): Promise>; getCancelledOperationIds(): Promise>; getExecutedOperationIds(): Promise>; getReadyOperationIds(operationIds: string[]): Promise>; getPendingOperationIds(operationIds: string[]): Promise>; getPendingScheduledOperations(): Promise>; getScheduledExecutableTransactions(): Promise>; hasRole(address: Address, role: string): Promise; canExecuteOperations(address: Address): Promise; canCancelOperations(address: Address): Promise; canScheduleOperations(address: Address): Promise; } //# sourceMappingURL=EvmTimelockReader.d.ts.map