UNPKG

surrogate

Version:

Object method hooks made easy

19 lines (18 loc) 891 B
import { HandlerConstructor } from './rules'; import type { OptionsHandler } from '../options'; import { NextProvider } from '../provider'; import type { NextNode } from '../next'; export interface SurrogateHandlerRunner { run(args: any[], error?: Error): void; } export declare abstract class HandlerRunner<T extends object> implements SurrogateHandlerRunner { protected node: NextNode<T>; protected argsHandlers: HandlerConstructor<T>[]; constructor(node: NextNode<T>); static for<T extends object>(node: NextNode<T>, options: OptionsHandler<T>): SurrogateHandlerRunner; run(args: any[], error?: Error): void; protected findRule(): import("./rules").HandlerRule<T>; protected abstract runWithoutNext(nextProvider: NextProvider<T>): void; protected abstract runWithNext(nextProvider: NextProvider<T>): void; protected shouldRunWithNext(): boolean; }