import { ITokens, IBindingContext } from '../interface/exported';
import { createBindingExpression } from './createBindingExpression';
import { setValue } from './setValue';
import { subscribeClassProperty } from './property/subscribeClassProperty';
import { unSubscribeClassProperty } from './property/unSubscribeClassProperty';
import { evaluateExpression } from './evaluateExpression';
import { subscribeClassArray } from './array/subscribeClassArray';
import { unSubscribeClassArray } from './array/unSubscribeClassArray';
import { unSubscribeClassMetaBinding } from './unSubscribeClassMetaBinding';
import { subscribeClassMetaBinding } from './subscribeClassMetaBinding';
export declare class BindingEngine {
    static tokenizeParseAndTraverseAST(expression: string, context: IBindingContext): any;
    static printTokensAndAST(expression: string, context: IBindingContext): void;
    static tokenize: (str: string) => any[];
    static traverseAST: (ast: any, ctx: IBindingContext) => any;
    static generateAST: (tokenArray: ITokens[]) => any;
    static valueConvert: (ast: any, ctx: IBindingContext, value: any) => any;
    static getBehavior: (ast: any) => any[];
    static createBindingExpression: typeof createBindingExpression;
    static setValue: typeof setValue;
    static subscribeClassProperty: typeof subscribeClassProperty;
    static unSubscribeClassProperty: typeof unSubscribeClassProperty;
    static evaluateExpression: typeof evaluateExpression;
    static subscribeClassArray: typeof subscribeClassArray;
    static unSubscribeClassArray: typeof unSubscribeClassArray;
    static unSubscribeClassMetaBinding: typeof unSubscribeClassMetaBinding;
    static subscribeClassMetaBinding: typeof subscribeClassMetaBinding;
}
