import { TokenId } from '@tsdi/ioc'; import { ICoreInjector } from '@tsdi/core'; import { IBinding } from '../bindings/IBinding'; import { PropBinding } from '../bindings/PropBinding'; import { ComponentContext, IComponentContext, IComponentOption } from '../ComponentContext'; /** * binding parse option. * * @export * @interface IBindingParseOption * @extends {IBuildOption} */ export interface IBindingParseOption extends IComponentOption { bindExpression?: any; binding?: IBinding; } /** * parse context interface. */ export interface IParseContext extends IComponentContext { readonly binding: IBinding; readonly bindExpression: any; readonly dataBinding: PropBinding; getExtenalBindings(): any; } export declare const CTX_BIND_DATABINDING: TokenId; export declare const CTX_BIND_BINDING: TokenId>; export declare const CTX_BIND_EXPRESSION: TokenId; export declare const CTX_BIND_PARSED: TokenId; /** * parse context. * * @export * @class ParseContext * @extends {BuildContext} * @implements {IComponentContext} */ export declare class ParseContext extends ComponentContext implements IParseContext { readonly binding:IBinding; readonly bindExpression:any; readonly dataBinding:PropBinding; getExtenalBindings(): any; setOptions(options: IBindingParseOption): this; static parse(injector: ICoreInjector, options: IBindingParseOption): ParseContext; static ρAnn(): any; }