tsioc
Version:
tsioc is AOP, Ioc container, via typescript decorator
36 lines (35 loc) • 1.16 kB
TypeScript
import { Mode, Express } from '../types';
import { IComponent } from './IComponent';
import { GComponent } from './GComponent';
export declare class GComposite<T extends IComponent> implements GComponent<T> {
name: string;
parent: T;
protected children: T[];
constructor(name: string);
add(node: T): this;
remove(node?: string | T): this;
find(express: T | Express<T, boolean>, mode?: Mode): T;
filter(express: Express<T, void | boolean>, mode?: Mode): T[];
each(iterate: Express<T, boolean | void>, mode?: Mode): any;
eachChildren(iterate: Express<T, void | boolean>): void;
/**
*do express work in routing.
*
*@param {Express<T, void | boolean>} express
*
*@memberOf IComponent
*/
routeUp(iterate: Express<T, void | boolean>): any;
/**
*translate all sub context to do express work.
*
*@param {Express<T, void | boolean>} express
*
*@memberOf IComponent
*/
trans(express: Express<T, void | boolean>): any;
transAfter(express: Express<T, void | boolean>): boolean;
equals(node: T): boolean;
empty(): T;
isEmpty(): boolean;
}