import { MethodObject, OpenrpcDocument } from "@open-rpc/meta-schema"; import { Call, IOptions } from "../coverage"; interface Rule { onBegin?(options: IOptions): Promise | void; getTitle(): string; getCalls(openrpcDocument: OpenrpcDocument, method: MethodObject): Call[] | Promise; validateCall(call: Call): Promise | Call; onEnd?(options: IOptions, calls: Call[]): void; beforeRequest?(options: IOptions, call: Call): Promise | void; afterRequest?(options: IOptions, call: Call): Promise | void; afterResponse?(options: IOptions, call: Call): Promise | void; } export default Rule;