/// import { IComponentBundle } from "./component"; import { IDirectiveBundle } from "./directive"; import { IProviderBundle } from "./provider"; import { IModuleBundle, IModuleLazys } from "./module"; import { IPipeBundle } from "./pipe"; import { Injectable } from "angular"; import { IElementRef } from "./template"; export declare enum GeneratorType { Component = "component", Directive = "directive", Provider = "provider", Pipe = "pipe", Module = "ng_module", None = "undefined", } export interface IGenerator { Selector: string; Type: string; Build(): T; } export interface IComponentGenerator extends IGenerator { StylesLoad?: Function; StylesUnload?: Function; ViewChildren?: Array<[string, IElementRef]>; } export interface IDirectiveGenerator extends IGenerator { StylesLoad?: Function; StylesUnload?: Function; } export interface IProviderGenerator extends IGenerator { } export interface IPipeGenerator extends IGenerator { } export interface IModuleGenerator extends IGenerator { LazyLoads?: IModuleLazys[]; LazyConfig?(func: Injectable): any; RunLazyLoads?(handler: (lazy: IModuleLazys) => void): any; Config?(func: Injectable): any; Run?(func: Injectable): any; }