surrogate
Version:
Object method hooks made easy
12 lines (11 loc) • 673 B
TypeScript
import type { RecoverableProvider, Contexts } from '../../../../../interfaces';
import type { NextNode, NextOptions } from '../../../../interfaces';
import type { NextRule, Recoverable } from '../../interfaces';
export declare abstract class RecoverableRule<T extends object> implements NextRule<T> {
protected readonly nextOptions: NextOptions;
abstract run(node: NextNode<T>): void;
abstract shouldRun(): boolean;
constructor(nextOptions: NextOptions);
protected attemptRecovery(provider: RecoverableProvider<T>, recoverable: Recoverable<T>, context: Contexts): boolean;
protected recover(node: NextNode<T>, overrideOptions: NextOptions): void;
}