import { Role, Permission } from "../types"; /** * Fluent builder for creating roles */ export declare class RoleBuilder { private role; constructor(id: string, name: string); /** * Sets the role description */ withDescription(description: string): RoleBuilder; /** * Adds a permission to the role */ withPermission(permission: Permission): RoleBuilder; /** * Adds multiple permissions to the role */ withPermissions(permissions: Permission[]): RoleBuilder; /** * Adds a simple permission (resource and action only) */ canPerform(resource: string, action: string): RoleBuilder; /** * Adds wildcard permission (all actions on a resource) */ canDoAnything(resource: string): RoleBuilder; /** * Adds role inheritance */ inheritsFrom(...roleIds: string[]): RoleBuilder; /** * Builds and returns the role */ build(): Role; /** * Static factory method */ static create(id: string, name: string): RoleBuilder; } //# sourceMappingURL=RoleBuilder.d.ts.map