/// <reference types="node" />
import { Logger } from '../logger';
import { EventQueue } from './event_queue';
import { PrefixedStateReadWriter } from './prefixed_state_read_writer';
import { BlockAssets, BlockHeader, GenesisBlockExecuteContext, Validator } from './types';
export interface ContextParams {
    logger: Logger;
    stateStore: PrefixedStateReadWriter;
    header: BlockHeader;
    assets: BlockAssets;
    eventQueue: EventQueue;
    chainID: Buffer;
}
export declare class GenesisBlockContext {
    private readonly _stateStore;
    private readonly _contextStore;
    private readonly _logger;
    private readonly _header;
    private readonly _assets;
    private readonly _eventQueue;
    private readonly _chainID;
    private _nextValidators?;
    constructor(params: ContextParams);
    createInitGenesisStateContext(): GenesisBlockExecuteContext;
    createFinalizeGenesisStateContext(): GenesisBlockExecuteContext;
    get eventQueue(): EventQueue;
    get nextValidators(): {
        precommitThreshold: bigint;
        certificateThreshold: bigint;
        validators: Validator[];
    };
}
