import { Logger } from 'pino';
import { ChainName } from '../types.js';
export declare function getTxConfigBatchSize(chain: ChainName): number;
/**
 * Submits `items` to `fn` in sequential batches sized per `chain`.
 *
 * NOTE: Non-atomic. If batch N succeeds and batch N+1 fails, on-chain state
 * is partially mutated and a naive retry will re-submit the already-applied
 * batches. Callers must either (a) pre-filter `items` by comparing against
 * on-chain state before each run (the IGP/oracle path) or (b) accept that a
 * retry may redundantly re-submit already-applied entries (the hook routing
 * path).
 */
export declare function submitBatched<T>(chain: ChainName, items: T[], fn: (batch: T[]) => Promise<void>, logger: Logger, label: string): Promise<void>;
//# sourceMappingURL=utils.d.ts.map