import { AutoEncoder } from '@simonbackx/simple-encoding'; import { MemberResponsibilityRecordBase } from './members/MemberResponsibilityRecord.js'; import { PermissionLevel } from './PermissionLevel.js'; import { PermissionRole } from './PermissionRole.js'; import { PermissionsResourceType } from './PermissionsResourceType.js'; import { ResourcePermissions } from './ResourcePermissions.js'; export declare function getUnlistedResources(resourceType: PermissionsResourceType, permissions: { resources: Map>; }, listedResources: { id: string; }[]): { id: string; name: string; type: PermissionsResourceType; }[]; export declare class Permissions extends AutoEncoder { /** * Automatically have all permissions (e.g. when someone created a new group) * Also allows creating new groups */ level: PermissionLevel; roles: PermissionRole[]; responsibilities: MemberResponsibilityRecordBase[]; /** * Mostly for temporary access */ resources: Map>; static get full(): Permissions; hasRole(role: PermissionRole): boolean; add(other: Permissions): void; get isEmpty(): boolean; } //# sourceMappingURL=Permissions.d.ts.map