/**
 * Workflow state management
 *
 * Manages the mutable state of a workflow execution including
 * user inputs and agent sessions.
 */
import type { WorkflowState, WorkflowConfig, AgentResponse } from '../../models/types.js';
import type { WorkflowEngineOptions } from '../types.js';
/**
 * Manages workflow execution state.
 *
 * Encapsulates WorkflowState and provides methods for state mutations.
 */
export declare class StateManager {
    readonly state: WorkflowState;
    constructor(config: WorkflowConfig, options: WorkflowEngineOptions);
    /**
     * Increment the iteration counter for a step and return the new value.
     */
    incrementStepIteration(stepName: string): number;
    /**
     * Add user input to state with truncation and limit handling.
     */
    addUserInput(input: string): void;
    /**
     * Get the most recent step output.
     */
    getPreviousOutput(): AgentResponse | undefined;
}
/**
 * Create initial workflow state from config and options.
 */
export declare function createInitialState(config: WorkflowConfig, options: WorkflowEngineOptions): WorkflowState;
/**
 * Increment the iteration counter for a step and return the new value.
 */
export declare function incrementStepIteration(state: WorkflowState, stepName: string): number;
export declare function decrementStepIteration(state: WorkflowState, stepName: string): number;
/**
 * Add user input to state with truncation and limit handling.
 */
export declare function addUserInput(state: WorkflowState, input: string): void;
/**
 * Get the most recent step output.
 */
export declare function getPreviousOutput(state: WorkflowState): AgentResponse | undefined;
//# sourceMappingURL=state-manager.d.ts.map