import { ExecutionFrame } from './frame.ts';
import type { SessionState } from './session/session.ts';
/** One evaluator's state, separate from the session stored by its manager. */
export declare class EvaluationContext {
    readonly session: SessionState;
    readonly frame: ExecutionFrame;
    readonly parent: EvaluationContext | null;
    constructor(session: SessionState, frame?: ExecutionFrame, parent?: EvaluationContext | null);
    /** An evaluation on a fork of this session: a job or a stage. */
    fork(): EvaluationContext;
}
/** A child shell's evaluation: the session's subshell and a new frame. */
export declare function childContext(context: EvaluationContext): EvaluationContext;
//# sourceMappingURL=evaluation.d.ts.map