import type { PermissionString } from "../types/permission-registry";
export declare function transformDbPermissionsToTeamPermissions(memberships: {
    teamId: number;
    role: {
        id: string | null;
        permissions: {
            resource: string | null;
            action: string | null;
        }[];
    } | null;
}[]): Record<number, {
    roleId: string;
    permissions: PermissionString[];
}>;
export declare class PermissionCheckService {
    private repository;
    constructor();
    getUserPermissions(userId: number): Promise<Record<number, {
        roleId: string;
        permissions: PermissionString[];
    }>>;
    hasPermission(query: {
        membershipId?: number;
        userId?: number;
        teamId?: number;
    }, permission: PermissionString): Promise<boolean>;
    hasPermissions(query: {
        membershipId?: number;
        userId?: number;
        teamId?: number;
    }, permissions: PermissionString[]): Promise<boolean>;
    private getMembership;
}
//# sourceMappingURL=permission-check.service.d.ts.map