import type { RedirectResult } from '../../../../context/session_context.ts';
import type { SessionView } from '../../../../view/types.ts';
import type { SessionState } from '../../../session/session.ts';
import type { BuiltinCall } from '../types.ts';
/**
 * `(( ))` as a builtin: every operand is one expression, the writes land
 * in order, and the status is 1 when the last expression evaluated to 0.
 * No operand is `expression expected`, exit 1; a malformed one aborts
 * the builtin at that word. A write to a readonly name stops it the same
 * way, after the writes the expression made before it (`let 'X=5, R=3'`
 * leaves X at 5); one inside a subscript ends the shell.
 */
export declare function handleLet(args: string[], session: SessionState, state?: SessionView | null): Promise<RedirectResult>;
/** The `let` arm. */
export declare function letBuiltin(call: BuiltinCall): Promise<RedirectResult>;
//# sourceMappingURL=let.d.ts.map