export interface IFlow { (value: T, onFlowBack?: IFlowBack): void; run: (type: string, value?: T, context?: any) => Promise; reset: (type: string, value?: T, context?: any) => void; return: (value: T) => void; set: (key: string, value: any) => void; get: (key: string, defaultValue?: any) => any; catch: (handler: IIntermediateErrorHandler) => any; } export interface IIntermediateErrorHandler { (err: any, orginalCallback: ICallback): void; } export declare type IFlowBack = (result: T, flow: (value: any) => void) => void; export declare type ISkill = (type: string, value: T, flow: IFlow) => void; export interface ITrackerArg { skill: string; type: string; time: number; value: any; id: string; parents: (string | number)[]; } export declare type ITracker = (arg: ITrackerArg) => void; export declare type IPosition = 'START' | 'BEFORE' | 'AFTER' | 'END'; export interface IOptions { tracker?: ITracker; [s: string]: any; } export interface ICallback { (err: any): void; (err: undefined, result: any): void; } export declare type ICallbacks = ICallback | [IErrorCallback, ISuccessCallback]; export interface ISuccessCallback { (result: any): void; } export interface IErrorCallback { (err: any): void; } //# sourceMappingURL=types.d.ts.map