import { Token, TokenType, Program, VariableDeclaration, FunctionDeclaration, WhileStatement, ImportDeclaration, ExportDeclaration, InterfaceDeclaration, TypeAlias, ForStatement, ClassDeclaration } from './types';
export declare class Parser {
    private tokens;
    private current;
    private errors;
    private importHandler;
    private declarationHandler;
    private loopHandler;
    constructor(tokens: Token[]);
    getErrors(): string[];
    parse(): Program;
    private statement;
    variableDeclaration(): VariableDeclaration;
    functionDeclaration(): FunctionDeclaration;
    private blockStatement;
    private ifStatement;
    whileStatement(): WhileStatement;
    forStatement(): ForStatement;
    private returnStatement;
    private expressionStatement;
    private expression;
    private assignment;
    private or;
    private and;
    private bitwiseOr;
    private bitwiseXor;
    private bitwiseAnd;
    private equality;
    private comparison;
    private shift;
    private term;
    private factor;
    private unary;
    private call;
    private finishCall;
    private primary;
    private parseTemplateLiteral;
    private parseTemplateString;
    private tokenizeExpression;
    match(...types: TokenType[]): boolean;
    private check;
    private advance;
    private isAtEnd;
    private peek;
    private peekNext;
    private previous;
    consume(type: TokenType, message: string): Token;
    importDeclaration(): ImportDeclaration;
    private parseNamedImports;
    exportDeclaration(): ExportDeclaration;
    private matchBuiltinIdentifier;
    private arrayExpression;
    private objectExpression;
    private parseProperty;
    private tryStatement;
    private throwStatement;
    private parseParameter;
    private typeAnnotation;
    private parseType;
    private unionType;
    private intersectionType;
    private primaryType;
    private parseParenthesizedOrArrayType;
    private parseUniqueType;
    private parsePrimitiveType;
    private parseGenericOrIdentifierType;
    private parseTupleType;
    private errorExpectedType;
    interfaceDeclaration(): InterfaceDeclaration;
    private propertySignature;
    classDeclaration(): ClassDeclaration;
    private classBody;
    private classMember;
    private constructorMethod;
    private classMethod;
    private classProperty;
    typeAlias(): TypeAlias;
    private switchStatement;
    private synchronize;
    private parsePattern;
    private parseArrayPattern;
    private parseObjectPattern;
    private parseIdentifierPattern;
    private parseSpreadElement;
    private breakStatement;
    private continueStatement;
}
//# sourceMappingURL=parser.d.ts.map