import { ChainForkConfig } from "@lodestar/config";
import { IBlockInput } from "../chain/blocks/blockInput/types.js";
import { ChainEventEmitter } from "../chain/emitter.js";
import { IExecutionEngine } from "../execution/index.js";
import { Metrics } from "../metrics/index.js";
export declare enum DataColumnEngineResult {
    PreFulu = "pre_fulu",
    NotAttemptedFull = "not_attempted_full",
    NotAttemptedNoBlobs = "not_attempted_no_blobs",
    NullResponse = "null_response",
    SuccessResolved = "success_resolved",
    SuccessLate = "success_late",
    Failed = "failed"
}
export declare function getBlobSidecarsFromExecution(config: ChainForkConfig, executionEngine: IExecutionEngine, metrics: Metrics | null, emitter: ChainEventEmitter, blockInput: IBlockInput): Promise<void>;
/**
 * Post fulu, call getBlobsV2 from execution engine once per slot whenever we see either beacon_block or data_column_sidecar gossip message
 */
export declare function getDataColumnSidecarsFromExecution(config: ChainForkConfig, executionEngine: IExecutionEngine, emitter: ChainEventEmitter, blockInput: IBlockInput, metrics: Metrics | null, blobAndProofBuffers?: Uint8Array[]): Promise<DataColumnEngineResult>;
//# sourceMappingURL=execution.d.ts.map