import { ValueOrPromise } from '../../common'; import { ITestCaseHandler, ITestCaseInput, ITestContext, TTestCaseDecision } from './types'; import { ApplicationLogger } from '../logger'; export interface ITestCaseHandlerOptions { scope?: string; context: ITestContext; args?: I | null; argResolver?: (...args: any[]) => I | null; validator?: (opts: any) => ValueOrPromise; } export declare abstract class BaseTestCaseHandler implements ITestCaseHandler { protected logger: ApplicationLogger; context: ITestContext; args: I | null; validator?: (opts: any) => ValueOrPromise; constructor(opts: ITestCaseHandlerOptions); getArguments(): I; abstract execute(): ValueOrPromise; abstract getValidator(): ((opts: Awaited>) => ValueOrPromise) | null; abstract validate(opts: any): ValueOrPromise; } export declare abstract class TestCaseHandler extends BaseTestCaseHandler { constructor(opts: ITestCaseHandlerOptions); _execute(): Promise; validate(opts: any): ValueOrPromise; } //# sourceMappingURL=test-handler.d.ts.map