import { FieldAccess } from '@prisma/client';
import { FieldPermissionService } from "../../../common/services/field-permission.service";
declare class CreateFieldPermissionDto {
    roleId: string;
    resource: string;
    field: string;
    access: FieldAccess;
}
declare class UpdateFieldPermissionDto {
    access?: FieldAccess;
}
export declare class FieldPermissionsController {
    private readonly service;
    constructor(service: FieldPermissionService);
    list(resource?: string, roleId?: string): import("@prisma/client").Prisma.PrismaPromise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        resource: string;
        roleId: string;
        field: string;
        access: import("@prisma/client").$Enums.FieldAccess;
    }[]>;
    create(body: CreateFieldPermissionDto, actor: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        resource: string;
        roleId: string;
        field: string;
        access: import("@prisma/client").$Enums.FieldAccess;
    }>;
    update(id: string, body: UpdateFieldPermissionDto, actor: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        resource: string;
        roleId: string;
        field: string;
        access: import("@prisma/client").$Enums.FieldAccess;
    }>;
    remove(id: string, actor: string): Promise<{
        ok: boolean;
    }>;
}
export {};
