UNPKG

prisma-rls

Version:

Prisma client extension for row-level security on any database

19 lines (18 loc) 2.05 kB
import type { Prisma } from "@prisma/client/extension"; import type { FieldsMap, ModelCreateInput, ModelSelectInput, ModelUpdateInput, PermissionsConfig, PrismaTypeMap, RecursiveContext, RelationMetadata } from "./types"; export declare class ModelResolver { protected permissionsConfig: PermissionsConfig<PrismaTypeMap, unknown>; protected context: unknown; protected fieldsMap: FieldsMap; protected authorizationError: Error; protected checkRequiredBelongsTo: boolean; constructor(permissionsConfig: PermissionsConfig<PrismaTypeMap, unknown>, context: unknown, fieldsMap: FieldsMap, authorizationError: Error, checkRequiredBelongsTo: boolean); resolveWhere(permissionDefinition: boolean | Record<string, unknown> | ((context: unknown) => Record<string, unknown> | Promise<Record<string, unknown>>), modelName: string, where: Record<string, unknown> | undefined): Promise<Record<string, unknown> | undefined>; resolveWhereUnique(permissionDefinition: boolean | Record<string, unknown> | ((context: unknown) => Record<string, unknown> | Promise<Record<string, unknown>>), modelName: string, whereUnique: Record<string, unknown>): Promise<Record<string, unknown>>; protected generateModelRelationsCount(modelName: string): Promise<ModelSelectInput>; protected resolveRelationSelect(modelName: string, select: ModelSelectInput, relationsMetadata: RelationMetadata[], recursiveContext: RecursiveContext): Promise<ModelSelectInput>; resolveSelectAndInclude(modelName: string, select: ModelSelectInput | null | undefined, include: ModelSelectInput | null | undefined, relationsMetadata: RelationMetadata[], recursiveContext: RecursiveContext): Promise<Record<string, unknown>>; resolveCreate(modelName: string, data: ModelCreateInput): Promise<ModelCreateInput>; resolveUpdate(modelName: string, data: ModelUpdateInput): Promise<ModelUpdateInput>; performRelationProcessing(transactionClient: Prisma.TransactionClient, result: unknown, relationsMetadata: RelationMetadata[]): Promise<unknown>; }