import { ExecutionContext } from "@nestjs/common"; import { AddRequestDataToEventOptions, Scope } from "@sentry/node"; import { Extras, Primitive, SeverityLevel } from "@sentry/types"; export type IRavenScopeTransformerFunction = (scope: Scope, context: ExecutionContext) => void; export type IRavenFilterFunction = (exception: T) => boolean; export interface IRavenInterceptorOptionsFilter { type: T; filter?: IRavenFilterFunction; } export type IRavenInterceptorOptions = { filters?: IRavenInterceptorOptionsFilter[]; transformers?: IRavenScopeTransformerFunction[]; tags?: { [key: string]: Primitive; }; extra?: Extras; fingerprint?: string[]; level?: SeverityLevel; request?: boolean; serverName?: boolean; transaction?: boolean | "path" | "methodPath" | "handler"; user?: boolean | string[]; version?: boolean; } & AddRequestDataToEventOptions;