/** * Timetable constants used for sequencer timing calculations. * These define the time budgets for various phases of block production. * * The sequencer slot is divided into phases: * 1. Checkpoint initialization (sync + proposer check) * 2. Block building (execution) * 3. Checkpoint assembly * 4. P2P propagation for proposal and attestations (round-trip) * 5. L1 publishing */ /** Time budget for checkpoint initialization (sync + proposer check) in seconds */ export declare const CHECKPOINT_INITIALIZATION_TIME = 1; /** Time budget for assembling a checkpoint after building the last block in seconds */ export declare const CHECKPOINT_ASSEMBLE_TIME = 1; /** Default one-way P2P propagation time for proposals and attestations in seconds */ export declare const DEFAULT_P2P_PROPAGATION_TIME = 2; /** Default L1 publishing time (matches Ethereum slot duration on mainnet) in seconds */ export declare const DEFAULT_L1_PUBLISHING_TIME = 12; /** Minimum execution time for building a block in seconds */ export declare const MIN_EXECUTION_TIME = 2; /** * Calculates the maximum number of blocks that can be built in a slot. * Used by both the sequencer timetable and p2p gossipsub scoring. * * @param aztecSlotDurationSec - Aztec slot duration in seconds * @param blockDurationSec - Duration per block in seconds (undefined = single block mode) * @param opts - Optional overrides for timing constants * @returns Maximum number of blocks per slot */ export declare function calculateMaxBlocksPerSlot(aztecSlotDurationSec: number, blockDurationSec: number | undefined, opts?: { checkpointInitializationTime?: number; checkpointAssembleTime?: number; p2pPropagationTime?: number; l1PublishingTime?: number; }): number; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1ldGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7R0FVRztBQUVILG1GQUFtRjtBQUNuRixlQUFPLE1BQU0sOEJBQThCLElBQUksQ0FBQztBQUVoRCx1RkFBdUY7QUFDdkYsZUFBTyxNQUFNLHdCQUF3QixJQUFJLENBQUM7QUFFMUMscUZBQXFGO0FBQ3JGLGVBQU8sTUFBTSw0QkFBNEIsSUFBSSxDQUFDO0FBRTlDLHdGQUF3RjtBQUN4RixlQUFPLE1BQU0sMEJBQTBCLEtBQUssQ0FBQztBQUU3Qyw2REFBNkQ7QUFDN0QsZUFBTyxNQUFNLGtCQUFrQixJQUFJLENBQUM7QUFFcEM7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLG9CQUFvQixFQUFFLE1BQU0sRUFDNUIsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFDcEMsSUFBSSxHQUFFO0lBQ0osNEJBQTRCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdEMsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDaEMsa0JBQWtCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDNUIsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEIsR0FDTCxNQUFNLENBb0JSIn0=