import type { RawRule } from "@casl/ability"; import { F_RULE_SUBJECT, type FdoPermissionRule } from "@feedmepos/core/entity"; import type { Rule } from "../types/role"; export declare function filterPermissions(permissions: FdoPermissionRule[], subject: F_RULE_SUBJECT): string; export declare function ruleExtension(rule: FdoPermissionRule): { condition: any; isDiscountOperation: boolean; isOrderOperation: boolean; isReportPermission: boolean; formatted: string; label: string; value: string; reason?: string | null | undefined; conditions?: any; fields?: string[] | null | undefined; inverted?: boolean | null | undefined; subject: string; actions: ("delete" | "update" | "create" | "read" | "manage")[]; }; export declare function getMaxDiscount(rules: FdoPermissionRule[]): number; export declare function getManagableRestaurantIds(rules: RawRule[]): string[] | null; export declare function hasAdminRule(rules: FdoPermissionRule[]): boolean; export declare function usableRoleIds(rules: RawRule[]): string[] | null; export declare function fromValue(values: string[], maxDiscountPercentage: number): { subject: string; actions: ("delete" | "update" | "create" | "read" | "manage")[]; conditions: object; }[]; export declare function toRule(v: string): Rule;