surrogate
Version:
Object method hooks made easy
24 lines (23 loc) • 1.05 kB
TypeScript
import type { ProviderParameters, SurrogateUnwrapped } from '../../interfaces';
import type { HandlerContainer } from '../../containers';
import type { TimeTracking } from '../../timeTracker';
import type { Context } from '../../context';
import type { NextNode } from '../../next';
export declare abstract class Provider<T extends object, Arguments extends Array<any>, Result> implements ProviderParameters<T, Arguments, Result> {
protected readonly node: NextNode<T>;
readonly receivedArgs: any[];
readonly error?: Error | undefined;
protected readonly returnValue: any;
constructor(node: NextNode<T>, receivedArgs: any[], error?: Error | undefined);
get action(): string;
get correlationId(): string;
get currentArgs(): any[];
get hookType(): string;
get instance(): SurrogateUnwrapped<T>;
get originalArgs(): Arguments;
get provide(): any;
get result(): any;
get timeTracker(): TimeTracking;
protected get context(): Context<T>;
protected get container(): HandlerContainer<T>;
}