/** * Rill Parser * Main entry point and re-exports */ import { type ParseResult, type ScriptNode } from '../types.js'; import './parser-script.js'; import './parser-expr.js'; import './parser-literals.js'; import './parser-variables.js'; import './parser-control.js'; import './parser-functions.js'; import './parser-extract.js'; import './parser-shape.js'; import './parser-use.js'; /** * Parse rill source code into an AST. * * Throws ParseError on first syntax error. * * @param source - The source code to parse * @returns The parsed AST (ScriptNode) * * @example * ```typescript * const ast = parse(source); * ``` */ export declare function parse(source: string): ScriptNode; /** * Parse rill source code with error recovery for IDE/tooling scenarios. * * Instead of throwing on first error, collects errors and returns * a partial AST with ErrorNode entries where parsing failed. * * @param source - The source code to parse * @returns ParseResult with AST, errors array, and success flag * * @example * ```typescript * const result = parseWithRecovery(source); * if (!result.success) { * console.log('Errors:', result.errors); * } * // AST may contain ErrorNode entries in statements * ``` */ export declare function parseWithRecovery(source: string): ParseResult; export { createParserState, type ParserState, advance, check, current, expect, skipNewlines, isAtEnd, } from './state.js'; export { parseTypeRef } from './parser-types.js';