import { Token } from '../token'; import * as Types from './types'; import { ScopeState } from './scope'; import { ParserState, Flags, Context, BindingKind, PropertyKind, Origin } from './common'; export declare function parseAssignmentExpression(parser: ParserState, context: Context, reinterpret: 0 | 1, inGroup: 0 | 1, left: any, start: number, line: number, column: number): Types.Expression; export declare function parseExpression(parser: ParserState, context: Context, inGroup: 0 | 1): Types.Expression; export declare function parseExpressions(parser: ParserState, context: Context, inGroup: 0 | 1): Types.Expression; export declare function parseSequenceExpression(parser: ParserState, context: Context, expr: Types.Expression, start: number, line: number, column: number): Types.SequenceExpression | Types.Expression; export declare function parseConditionalExpression(parser: ParserState, context: Context, test: Types.Expression, start: number, line: number, column: number): Types.ConditionalExpression; export declare function parseBinaryExpression(parser: ParserState, context: Context, inGroup: 0 | 1, minPrec: number, token: Token, curStart: number, curLine: number, curColumn: number, left: any): Types.Expression | any; export declare function parsePropertyOrPrivatePropertyName(parser: ParserState, context: Context): Types.Identifier; export declare function parseMemberExpression(parser: ParserState, context: Context, object: any, allowLHS: 0 | 1, inGroup: 0 | 1, start: number, line: number, column: number): Types.MemberExpression | Types.UpdateExpression; export declare function parseMemberOrCallChain(parser: ParserState, context: Context, chain: any[], inGroup: 0 | 1, start: number, line: number, column: number): (Types.MemberChain | Types.CallChain)[]; export declare function parseArguments(parser: ParserState, context: Context, inGroup: 0 | 1): (Types.Expression | Types.SpreadElement)[]; export declare function parseTemplateLiteral(parser: ParserState, context: Context): Types.TemplateLiteral; export declare function parseTemplate(parser: ParserState, context: Context, curStart: number, curLine: number, curColumn: number): Types.TemplateLiteral; export declare function parseTemplateElement(parser: ParserState, context: Context, isTail: 0 | 1): Types.TemplateElement; export declare function parseYieldExpression(parser: ParserState, context: Context, inGroup: 0 | 1, canAssign: 0 | 1, start: number, line: number, column: number): Types.YieldExpression | Types.Identifier | Types.ArrowFunctionExpression; export declare function parseAwaitExpression(parser: ParserState, context: Context, inGroup: 0 | 1, inNew: 0 | 1, start: number, line: number, column: number): Types.AwaitExpression | Types.Identifier | Types.ArrowFunctionExpression; export declare function parseIdentifierOrArrow(parser: ParserState, context: Context): Types.Identifier | Types.ArrowFunctionExpression; export declare function parsePrimaryExpression(parser: ParserState, context: Context, kind: BindingKind, inNew: 0 | 1, allowLHS: 0 | 1, canAssign: 0 | 1, inGroup: 0 | 1, start: number, line: number, column: number): Types.PrimaryExpression | Types.Expression; export declare function parseAsyncExpression(parser: ParserState, context: Context, inNew: 0 | 1, allowLHS: 0 | 1, canAssign: 0 | 1, curStart: number, curLine: number, curColumn: number): Types.FunctionExpression | Types.ArrowFunctionExpression | Types.CallExpression | Types.Identifier; export declare function parseAsyncArrow(parser: ParserState, context: Context, isAsync: 0 | 1, value: string, token: Token, expr: Types.Expression, start: number, line: number, column: number): Types.Identifier | Types.FunctionExpression | Types.CallExpression | Types.ArrowFunctionExpression; export declare function parseAsyncArrowOrCallExpression(parser: ParserState, context: Context, callee: Types.Identifier | void, canAssign: 0 | 1, newLine: 0 | 1, kind: BindingKind, origin: Origin, start: number, line: number, column: number): any; export declare function parseImportCallOrMetaExpression(parser: ParserState, context: Context, inNew: 0 | 1, start: number, line: number, column: number): Types.Expression; export declare function parseNewExpression(parser: ParserState, context: Context, inGroup: 0 | 1, curStart: number, curLine: number, curColumn: number): Types.NewExpression | Types.MetaProperty; export declare function parseNewTargetExpression(parser: ParserState, context: Context, start: number, line: number, column: number): Types.MetaProperty; export declare function parseMetaProperty(parser: ParserState, context: Context, meta: any, start: number, line: number, column: number): Types.MetaProperty; export declare function parseNewMemberExpression(parser: ParserState, context: Context, inGroup: 0 | 1, expr: any, start: number, line: number, column: number): Types.MemberExpression; export declare function parseTemplateExpression(parser: ParserState, context: Context, tag: Types.Expression, quasi: Types.Expression, start: number, line: number, column: number): any; export declare function parseSuperExpression(parser: ParserState, context: Context, start: number, line: number, column: number): Types.Super; export declare function parseRegExpLiteral(parser: ParserState, context: Context, start: number, line: number, column: number): any; export declare function parseBigIntLiteral(parser: ParserState, context: Context): any; export declare function parseArrowFunctionAfterParen(parser: ParserState, context: Context, scope: any, inGroup: 0 | 1, destructible: Flags, params: any, canAssign: 0 | 1, isAsync: 0 | 1, start: number, line: number, column: number): Types.ArrowFunctionExpression; export declare function parseArrowFunction(parser: ParserState, context: Context, scope: ScopeState, params: any[], inGroup: 0 | 1, isAsync: 0 | 1, start: number, line: number, column: number): Types.ArrowFunctionExpression; export declare function parseParenthesizedExpression(parser: ParserState, context: Context, inGroup: 0 | 1, canAssign: 0 | 1, kind: BindingKind, origin: Origin, curStart: number, curLine: number, curColumn: number): Types.Expression; export declare function parseLeftHandSideExpression(parser: ParserState, context: Context, inGroup: 0 | 1, allowLHS: 0 | 1, canAssign: 0 | 1): any; export declare function parseLeftHandSideExpressionOrHigher(parser: ParserState, context: Context, inGroup: 0 | 1, allowLHS: 0 | 1, canAssign: 0 | 1, start: number, line: number, column: number): Types.Expression; export declare function parseIdentifier(parser: ParserState, context: Context): Types.Identifier; export declare function parseThisExpression(parser: ParserState, context: Context, start: number, line: number, column: number): Types.ThisExpression; export declare function parseNullLiteral(parser: ParserState, context: Context, start: number, line: number, column: number): Types.Literal; export declare function parseNullOrTrueOrFalseLiteral(parser: ParserState, context: Context, token: Token, start: number, line: number, column: number): Types.Literal; export declare function parseLiteral(parser: ParserState, context: Context): any; export declare function parseUpdateExpression(parser: ParserState, context: Context, allowLHS: 0 | 1, arg: Types.Expression, start: number, line: number, column: number): Types.UpdateExpression; export declare function parseUpdateExpressionPrefix(parser: ParserState, context: Context, inNew: 0 | 1, allowLHS: 0 | 1, start: number, line: number, column: number): Types.UpdateExpression; export declare function parseUnaryExpression(parser: ParserState, context: Context, inGroup: 0 | 1, inNew: 0 | 1, allowLHS: 0 | 1, start: number, line: number, column: number): Types.UnaryExpression; export declare function parseArrayLiteral(parser: ParserState, context: Context, isPattern: 0 | 1, inGroup: 0 | 1, start: number, line: number, column: number): Types.ArrayExpression; export declare function parseAssignmentOrPattern(parser: ParserState, context: Context, reinterpret: 0 | 1, inGroup: 0 | 1, left: Types.Expression, t: Token, start: number, line: number, column: number): Types.AssignmentExpression | Types.AssignmentPattern; export declare function isRightBraketOrComma(t: Token): boolean; export declare function parseArrayExpressionOrPattern(parser: ParserState, context: Context, scope: any, isPattern: 0 | 1, reinterpret: 0 | 1, inGroup: 0 | 1, kind: BindingKind, origin: Origin, curStart: number, curLine: number, curColumn: number): any; export declare function parseArrayOrObjectAssignmentPattern(parser: ParserState, context: Context, destructible: Flags | Flags, reinterpret: 0 | 1, inGroup: 0 | 1, start: number, line: number, column: number, left: any): any; export declare function parseFunctionExpression(parser: ParserState, context: Context, isAsync: 0 | 1, start: number, line: number, column: number): Types.FunctionExpression; export declare function parseFunctionLiteral(parser: ParserState, context: Context, scope: ScopeState, id: Types.Identifier | null, firstRestricted: Token | undefined, isDecl: 0 | 1, type: 'FunctionDeclaration' | 'FunctionExpression', isMethod: 0 | 1, start: number, line: number, column: number): Types.FunctionDeclaration | Types.FunctionExpression; export declare function parseFunctionBody(parser: ParserState, context: Context, scope: any, firstRestricted: Token | undefined, isDecl: 0 | 1, inGroup: 0 | 1, scopeError: any): any; export declare function parseClassExpression(parser: ParserState, context: Context, inGroup: 0 | 1, curStart: number, curLine: number, curColumn: number): Types.ClassExpression; export declare function parseClassTail(parser: ParserState, context: Context, inheritedContext: Context, id: Types.Identifier | null, inGroup: 0 | 1, isDecl: 0 | 1, type: 'ClassDeclaration' | 'ClassExpression', start: number, line: number, column: number): Types.ClassDeclaration | Types.ClassExpression; export declare function parseClassBody(parser: ParserState, context: Context, inheritedContext: Context, isDecl: 0 | 1, inGroup: 0 | 1): Types.ClassBody; export declare function parseClassElementList(parser: ParserState, context: Context, inheritedContext: Context, destructible: Flags, key: Types.Expression | null, isComputed: 0 | 1, inGroup: 0 | 1, type: PropertyKind, curStart: number, curLine: number, curColumn: number): Types.MethodDefinition; export declare function parseIdentifierFromValue(parser: ParserState, context: Context, name: string, start: number, line: number, column: number): Types.Identifier; export declare function parseComputedPropertyName(parser: ParserState, context: Context, inGroup: 0 | 1): Types.Expression; export declare function parseMethodDefinition(parser: ParserState, context: Context, kind: PropertyKind): Types.FunctionExpression; export declare function parseGetterSetter(parser: ParserState, context: Context, kind: PropertyKind): Types.FunctionExpression; export declare function parseFormalParams(parser: ParserState, context: Context, scope: ScopeState, kind: BindingKind, origin: Origin, isMethod: 0 | 1): Types.Parameter[]; export declare function parseObjectLiteral(parser: ParserState, context: Context, isPattern: 0 | 1, inGroup: 0 | 1, start: number, line: number, column: number): Types.ObjectExpression; export declare function isAssignRightBraceOrComma(t: Token): boolean; export declare function isRightBraceOrComma(t: Token): boolean; export declare function parseObjectLiteralOrPattern(parser: ParserState, context: Context, scope: any, isPattern: 0 | 1, reinterpret: 0 | 1, inGroup: 0 | 1, type: BindingKind, origin: Origin, curStart: number, curLine: number, curColumn: number): any; export declare function parseSpreadOrRestElement(parser: ParserState, context: Context, scope: any, closingToken: Token, reinterpret: 0 | 1, isAsync: 0 | 1, inGroup: 0 | 1, kind: BindingKind, origin: Origin, curStart: number, curLine: number, curColumn: number): any; export declare function parseImportExpression(parser: ParserState, context: Context, start: number, line: number, column: number): Types.ImportExpression; export declare function parseAndClassifyIdentifier(parser: ParserState, context: Context, scope: ScopeState, t: Token, name: string, kind: BindingKind, origin: Origin, allowRegExp: 0 | 1, start: number, line: number, column: number): Types.Identifier; export declare function parseBindingPattern(parser: ParserState, context: Context, scope: ScopeState, kind: BindingKind, origin: Origin): any; export declare function parseBindingPatternOrHigher(parser: ParserState, context: Context, scope: ScopeState, kind: BindingKind, origin: Origin, t: Token, start: number, line: number, column: number): any; export declare function parseImportMetaExpression(parser: ParserState, context: Context, meta: Types.Identifier, start: number, line: number, column: number): Types.MetaProperty; export declare function parseDirectiveExpression(parser: ParserState, context: Context, index: number, start: number, line: number, column: number, expr: any): any; export declare function parsePatternStart(parser: ParserState, context: Context, scope: ScopeState, isPattern: 0 | 1, reinterpret: 0 | 1, inGroup: 0 | 1, t: Token, kind: BindingKind, origin: Origin, start: number, line: number, column: number): any; //# sourceMappingURL=expressions.d.ts.map