import type { GasPriceConfig } from '../shared/foundation/gas/bundle-gas.js'; /** Gas / Tx 相关配置(各 bundle 模块 config 的公共字段) */ export type BundleGasConfigInput = { txType?: 0 | 2; gasPriceMultiplierPercent?: number; minGasPriceGwei?: number; }; /** Merkle bundle 提交相关配置 */ export type BundleMerkleConfigInput = BundleGasConfigInput & { bundleBlockOffset?: number; minBlockOffset?: number; autoRetryBundle?: boolean; maxBundleRetries?: number; bribeAmount?: number; }; export declare function getTxType(config: BundleGasConfigInput): 0 | 2; export declare function getGasPriceMultiplier(config: BundleGasConfigInput): number; export type BundleSubmitOptions = { blockOffset: number; minBlockOffset: number; autoRetry: boolean; maxRetries: number; }; export declare function getBundleOptions(config: BundleMerkleConfigInput, blockOffset?: number): BundleSubmitOptions; export declare function getGasPriceConfig(config: BundleGasConfigInput): GasPriceConfig; export declare function shouldExtractProfit(_config?: BundleMerkleConfigInput): boolean; export declare function getProfitRateBps(_config?: BundleMerkleConfigInput): number; export declare function getProfitRecipient(_config?: BundleMerkleConfigInput): string; export declare function calculateProfit(amount: bigint, _config?: BundleMerkleConfigInput): { profit: bigint; remaining: bigint; }; export declare function calculateBatchProfit(amounts: bigint[], _config?: BundleMerkleConfigInput): { totalProfit: bigint; remainingAmounts: bigint[]; }; export declare function getBribeAmount(config?: BundleMerkleConfigInput): bigint;