myy-common
Version:
Common That Helper.
13 lines (12 loc) • 740 B
TypeScript
export interface forEachAble<Typ> {
forEach(callbackfn: (value: Typ, index: number, array: Typ[]) => void, thisArg?: any): void;
length: number;
}
export interface ToForEachAble<Typ> {
(item: Typ): forEachAble<Typ>;
}
export interface ItemAction<Typ> extends Function {
(item: Typ, index: number, recursiveArray: forEachAble<Typ>, parantItem: Typ): void;
}
export declare function runActionFirst<Typ>(recursiveItem: forEachAble<Typ>, action: ItemAction<Typ>, itemToForEachAble: ToForEachAble<Typ> | undefined, parantItem: Typ): void;
export declare function runDeepFirst<Typ>(recursiveItem: forEachAble<Typ>, action: ItemAction<Typ>, itemToDirectChildren: ToForEachAble<Typ> | undefined, parantItem: Typ): void;