/**
 * Evaluation State Manager
 *
 * Centralized module for managing evaluation-related state mutations.
 * Provides utilities to invalidate and track redeemer execution units.
 *
 * @module EvaluationStateManager
 * @since 2.0.0
 */
import type { TxBuilderState } from "./TransactionBuilder.js";
/**
 * Invalidate all redeemer exUnits.
 *
 * Sets all redeemer execution units to zero, signaling that re-evaluation
 * is required. This should be called when transaction structure changes
 * (e.g., new inputs added) that would affect validator execution.
 *
 * Returns a new Map with invalidated exUnits (immutable operation).
 *
 * @param redeemers - Map of redeemers to invalidate
 *
 * @since 2.0.0
 * @category state-management
 */
export declare const invalidateExUnits: (redeemers: TxBuilderState["redeemers"]) => TxBuilderState["redeemers"];
/**
 * Check if any redeemers need evaluation.
 *
 * Returns true if there are redeemers without valid execution units
 * (exUnits are missing or set to zero).
 *
 * @param redeemers - Map of redeemers to check
 *
 * @since 2.0.0
 * @category state-management
 */
export declare const hasUnevaluatedRedeemers: (redeemers: TxBuilderState["redeemers"]) => boolean;
/**
 * Check if all redeemers have been evaluated.
 *
 * Returns true if all redeemers have valid execution units (mem > 0 and steps > 0).
 *
 * @param redeemers - Map of redeemers to check
 *
 * @since 2.0.0
 * @category state-management
 */
export declare const allRedeemersEvaluated: (redeemers: TxBuilderState["redeemers"]) => boolean;
//# sourceMappingURL=EvaluationStateManager.d.ts.map