import { CursorParams, CursorParamsWithArgs, CursorParamsWithCaller, CursorParamsWithResult } from "./cursorHelperTypes.js"; import { HookedAggregationCursorInterface } from "./hookedAggregationCursorInterface.js"; import { HookedFindCursorInterface } from "./hookedFindCursorInterface.js"; export type BeforeAfterErrorGenericCursorEventDefinitions = { "cursor.execute": CursorParamsWithCaller | HookedAggregationCursorInterface, { caller: "find" | "aggregate" | "find.cursor.next" | "find.cursor.toArray" | "find.cursor.forEach" | "find.cursor.asyncIterator" | "aggregation.cursor.next" | "aggregation.cursor.toArray" | "aggregation.cursor.forEach" | "aggregation.cursor.asyncIterator"; custom: { operation: "aggregation.cursor.execute" | "find.cursor.execute"; }; }>; "cursor.next": CursorParamsWithResult | HookedAggregationCursorInterface, { result: TSchema | null; custom: { operation: "aggregation.cursor.next" | "find.cursor.next"; }; }>; "cursor.toArray": CursorParamsWithResult | HookedAggregationCursorInterface, { result: TSchema[]; custom: { operation: "aggregation.cursor.toArray" | "find.cursor.toArray"; }; }>; "cursor.forEach": CursorParamsWithArgs | HookedAggregationCursorInterface, { result: never; args: [iterator: (doc: TSchema) => boolean | void]; custom: { operation: "aggregation.cursor.forEach" | "find.cursor.forEach"; }; }>; "cursor.asyncIterator": CursorParams | HookedAggregationCursorInterface, { result: never; custom: { operation: "aggregation.cursor.asyncIterator" | "find.cursor.asyncIterator"; }; }>; "cursor.rewind": CursorParams | HookedAggregationCursorInterface, { custom: { operation: "aggregation.cursor.rewind" | "find.cursor.rewind"; }; isPromise: false; }>; "cursor.close": CursorParams | HookedAggregationCursorInterface, { custom: { operation: "aggregation.cursor.close" | "find.cursor.close"; }; isPromise: false; }>; };