/** * Time → block conversions for an auction. RPC-dependent inputs (current block, block time) are * passed in so this module stays pure and unit-testable. */ /** Block time (seconds) for a chain, falling back to {@link DEFAULT_BLOCK_TIME_SECONDS}. */ export declare function getBlockTimeSeconds(chainId: number): number; /** Converts a future unix timestamp to a block number using the chain's block time. */ export declare function timeToBlock(targetUnix: bigint, currentBlock: bigint, nowUnix: bigint, blockTimeSeconds: number): bigint; export interface DeriveBlocksInput { startTimeUnix: bigint; endTimeUnix: bigint; currentBlock: bigint; nowUnix: bigint; blockTimeSeconds: number; migrationDelayBlocks?: bigint; } export interface DerivedBlocks { startBlock: bigint; endBlock: bigint; claimBlock: bigint; migrationBlock: bigint; } /** Derives the auction's start / end / claim / migration blocks from its start and end times. */ export declare function deriveBlocks(input: DeriveBlocksInput): DerivedBlocks;