import { Role } from '../domain/rbac'; export interface Tenant { readonly id: string; readonly name: string; readonly tier: 'free' | 'pro' | 'enterprise'; readonly allowedTopologies: string[]; readonly maxSatellites: number; } export interface TenantContext { readonly tenantId: string; readonly actorId: string; readonly roles: Role[]; } export declare class TenantAuthorityService { private tenants; register(tenant: Tenant): void; get(tenantId: string): Tenant | undefined; canUseTopology(tenantId: string, topology: string): boolean; isWithinSatelliteLimit(tenantId: string, currentCount: number): boolean; actorHasRole(context: TenantContext, requiredRole: Role): boolean; actorHasAnyRole(context: TenantContext, requiredRoles: Role[]): boolean; }