import type { RedirectResult } from '../../../../context/session_context.ts';
import type { CallStack } from '../../../../shell/call_stack.ts';
import type { SessionState } from '../../../session/session.ts';
import type { BuiltinCall } from '../types.ts';
/**
 * Shift positional parameters, with bash's argument checks: a count past
 * `$#` shifts nothing and exits 1 with no message, a negative count is
 * `shift count out of range`, and a non-numeric word is `numeric argument
 * required`; every other case exits 0.
 */
export declare function handleShift(args: readonly string[], callStack: CallStack | null, session: SessionState): RedirectResult;
/** The `shift` arm. */
export declare function shiftBuiltin(call: BuiltinCall): Promise<RedirectResult>;
//# sourceMappingURL=shift.d.ts.map