import { UnitNodeInstance, ProgramStmt, EmptyLineStmt, CommentStmt, WaitStmt, ToExpr, RunStmt, TaskStmt, ExposeStmt, UseSpecifier, UseDefaultSpecifier, UseDecl, ReturnStmt, SwitchStmt, DefaultCaseBlockStmt, CaseBlockStmt, FunctionDecl, Literal, VariableDecl, IfStmt, ForStmt, BlockStmt, TemplateLiteralExpr, Expr, ObjectExpr, ArrayExpr, CompareExpr, TernaryExpr } from '../node/index.js'; import { Token, TokenType } from '../keywords/index.js'; declare class Parser { private errStackManager; tokens: Token[]; /** * @description: code push this stack tokens */ pushStack(token: Token[]): void; at(index?: number): Token | undefined; eat(): Token; match(tag: string | TokenType, match_value?: string): Token; parse(tokens?: Token[]): UnitNodeInstance; parseStatement(): any; parseEmptyLineStmt(): EmptyLineStmt; parseComment(): CommentStmt; parseWait(): UnitNodeInstance; parseTo(): UnitNodeInstance; parseRun(): UnitNodeInstance; parseTask(): UnitNodeInstance; parseExpose(): ExposeStmt; parseAs(): UnitNodeInstance[]; parseDefaultAs(): UseDefaultSpecifier; parseUse(): UseDecl; parseReturn(): ReturnStmt; parseSwitch(): SwitchStmt; parseSwitchCase(): UnitNodeInstance | UnitNodeInstance; parseFunction(): UnitNodeInstance; parseIdentifier(): UnitNodeInstance; parseString(): UnitNodeInstance; parseVariable(): VariableDecl; parseIf(): UnitNodeInstance; parseFor(): UnitNodeInstance; parseBlock(noEnd?: boolean): UnitNodeInstance; parseTemplateString(token: Token): UnitNodeInstance; parseExpression(): UnitNodeInstance; parseTernay(): UnitNodeInstance | UnitNodeInstance | UnitNodeInstance | UnitNodeInstance; parseObjectLiteral(): UnitNodeInstance | UnitNodeInstance; parseArrayLiteral(): UnitNodeInstance; parseComparisonExpr(): UnitNodeInstance | UnitNodeInstance | UnitNodeInstance; parseEqualExpr(): any; parseArgs(): UnitNodeInstance[]; parseCall(): any; parseBinaryExpr(): any; parseMemberExpr(): any; parsePrimary(): UnitNodeInstance; } export { Parser as default };