import type { ModuleMetadata, Type } from '@nestjs/common' import { Prisma } from '@prisma/client' export interface PrismaOptionsInterface { url?: string options?: Prisma.PrismaClientOptions name?: string retryAttempts?: number retryDelay?: number connectionFactory?: (connection: any, client: any) => any connectionErrorFactory?: ( error: Prisma.PrismaClientKnownRequestError ) => Prisma.PrismaClientKnownRequestError } export interface PrismaOptionsFactory { createPrismaModuleOptions(): Promise | PrismaOptionsInterface } export type PrismaModuleFactoryOptions = Omit export interface PrismaModuleAsyncOptions extends Pick { useFactory?: (...args: any[]) => Promise | PrismaModuleFactoryOptions inject?: any[] useClass?: Type useExisting?: Type name?: string }