/** * Parser Extension: Control Flow Parsing * Conditionals, loops, and blocks */ import type { AssertNode, BlockNode, ConditionalNode, DoWhileLoopNode, ErrorNode, GuardBlockNode, RecoveryErrorNode, RetryBlockNode, TimeoutBlockNode, WhileLoopNode, BodyNode } from '../types.js'; declare module './parser.js' { interface Parser { parsePipedConditional(): ConditionalNode; parseConditionalWithCondition(conditionBody: BodyNode): ConditionalNode; parseConditionalRest(condition: BodyNode | null, start: { line: number; column: number; offset: number; }): ConditionalNode; parseLoop(): DoWhileLoopNode; parseWhileLoop(): WhileLoopNode; parseLoopWithInput(seed: BodyNode): WhileLoopNode | DoWhileLoopNode; parseBlock(allowEmpty?: boolean): BlockNode; parseAssert(): AssertNode; parseError(requireMessage?: boolean): ErrorNode; parseGuardBlock(): GuardBlockNode | RecoveryErrorNode; parseRetryBlock(): RetryBlockNode | RecoveryErrorNode; parseTimeoutBlock(): TimeoutBlockNode; } }