import { AttributeLocal, DirectiveData } from "./directives"; import { DirectiveDefinitionError } from "./core"; import { Either } from "monet"; import { ElementDirectiveParser } from "./parser/elements"; import { AttributeParser } from "./parser/attributes"; export interface IDirective { bindToController?: boolean | { [boundProperty: string]: string; } | any; multiElement?: boolean; priority?: number; restrict?: string; scope?: boolean | { [boundProperty: string]: string; } | any; } export interface TcatDirectiveExtras { parser?: ElementDirectiveParser; attributes?: { [attributeName: string]: { parser?: AttributeParser; locals?: AttributeLocal[]; }; }; } export declare function convertDirectiveConfigToDirectiveData(directiveName: string, directiveConfig: IDirective, extras?: TcatDirectiveExtras): Either;