import { IExpression } from "./Expression/IExpression"; export declare enum Associativity { None = 0, Left = 1, Right = 2 } export declare enum OperatorType { Unary = 0, Binary = 1, Ternary = 2 } export declare enum UnaryPosition { Prefix = 0, Postfix = 1 } export interface IOperatorPrecedence { precedence: number; associativity: Associativity; } export interface IOperator { precedence: IOperatorPrecedence; identifier: string; type: OperatorType; expressionFactory?: (...params: any[]) => IExpression; } export interface IUnaryOperator extends IOperator { position: UnaryPosition; } export declare const operators: IOperator[];