import { PermissionAction, PermissionLevel } from "../../core/resources/enums/permission-enums";
import { Permission } from "../../core/resources/permissions/permission.resource";
import { PermissionDto } from "../../core/types/permission-dto";
import { CrudAction } from "../../../../fd-toolbox/enums/enums";
export declare function createPermissionDto(permission: Permission, permissionLevel: PermissionLevel): Promise<PermissionDto>;
export declare function getPermissionCacheKey(prefix: string, cacheId: string): Promise<string>;
export declare function getPermissionNameFromCrud(resourceName: string, action: CrudAction, resourcePropertyName?: string): string;
/** @monorepo-internal */
export declare function convertCrudActionToPermissionAction(action: PermissionAction): number[];
export declare function getCrudActionStrings(): Map<number, string>;
export declare function createShallowPermission(permission: Permission): {
    id: string;
    workspaceId?: string;
    type: import("../../../../../generated/npm-package").PermissionType;
    resourceId?: string;
    resourcePropertyId?: string;
    name?: string;
    action?: PermissionAction;
    resource?: import("../../../../../generated/npm-package").Resource;
    resourceProperty?: import("../../../../../generated/npm-package").ResourceProperty;
    permissionPackageToPermissionList?: import("../../../../../generated/npm-package").PermissionPackageToPermission[];
    roleToPermissionList?: import("../../../../../generated/npm-package").RoleToPermission[];
};
/** @monorepo-internal */
export declare function removePermissionsFromCoreCache(): Promise<void>;
export declare function addPermissions(resourceName: string, actions: CrudAction[]): Promise<Permission[]>;
