import { TokenStream } from '../classes/TokenStream'; import { Token } from '../classes/Lexer'; import { ForLoop, Statement, CodePosition, DecoratorCall } from '../types/Ast.type'; export interface ForLoopParserContext { parseStatement: (stream: TokenStream) => Statement | null; parseComment: (stream: TokenStream) => Statement | null; createCodePosition: (start: Token, end: Token) => CodePosition; } /** * Parse a 'for' loop from TokenStream * * @param stream - TokenStream positioned at the 'for' keyword * @param context - Context with helper methods * @param decorators - Optional decorators to attach to this for loop * @returns Parsed ForLoop */ export declare function parseForLoop(stream: TokenStream, context: ForLoopParserContext, decorators?: DecoratorCall[]): ForLoop;