/** * A uniquely‐branded string that represents a serialized permission. * * Internally it’s formatted as: * `${ability}#${resource_class}#${resource_id}` * * By branding it (via a private `unique symbol`), we prevent plain `string` * values from being mistaken for real permissions. Only values returned * by `stringifyPermission(...)` (and exposed in `PERMISSIONS`) carry this brand. */ declare const _StringifiedPermissionBrand: unique symbol; export type StringifiedPermission = string & { [_StringifiedPermissionBrand]: void; }; export declare const stringifyPermission: ({ ability, resource_class: resourceClass, resource_id: resourceId, }: { ability: string; resource_class: string; resource_id?: string | number; }) => StringifiedPermission; export declare const parsePermission: (permission: string) => { ability: string; resource_class: string; resource_id: string; }; export {}; //# sourceMappingURL=utils.d.ts.map