export enum Precedence { Sequence = 0, Yield = 1, Assignment = 1, Conditional = 2, ArrowFunction = 2, Coalesce = 3, LogicalOR = 4, LogicalAND = 5, BitwiseOR = 6, BitwiseXOR = 7, BitwiseAND = 8, Equality = 9, Relational = 10, BitwiseSHIFT = 11, Additive = 12, Multiplicative = 13, Exponentiation = 14, Await = 15, Unary = 15, Postfix = 16, OptionalChaining = 17, Call = 18, New = 19, TaggedTemplate = 20, Member = 21, Primary = 22, } export const BinaryPrecedence = { '??': Precedence.Coalesce, '||': Precedence.LogicalOR, '&&': Precedence.LogicalAND, '|': Precedence.BitwiseOR, '^': Precedence.BitwiseXOR, '&': Precedence.BitwiseAND, '==': Precedence.Equality, '!=': Precedence.Equality, '===': Precedence.Equality, '!==': Precedence.Equality, is: Precedence.Equality, isnt: Precedence.Equality, '<': Precedence.Relational, '>': Precedence.Relational, '<=': Precedence.Relational, '>=': Precedence.Relational, in: Precedence.Relational, instanceof: Precedence.Relational, '<<': Precedence.BitwiseSHIFT, '>>': Precedence.BitwiseSHIFT, '>>>': Precedence.BitwiseSHIFT, '+': Precedence.Additive, '-': Precedence.Additive, '*': Precedence.Multiplicative, '%': Precedence.Multiplicative, '/': Precedence.Multiplicative, '**': Precedence.Exponentiation, };