--------------------- MODULE TenantPermissionsOptimized ---------------------
CONSTANTS Tenants, UserSubject, OtherUser, Assets, ReadOnly,
AvailOnly, AvailExist, Available, NotAvailable
VARIABLES authorizations, leases, viewableTenants
Users == { UserSubject, OtherUser }
AccessLevels == { ReadOnly, AvailOnly, AvailExist }
AuthorizationsType == SUBSET [
user: Users,
assets: Assets,
accessLevel: AccessLevels
]
LeasesType == SUBSET [
tenant: Tenants,
asset: Assets
]
TenantPolicy == {}
Next == /\ authorizations' \in AuthorizationsType
/\ leases' \in LeasesType
/\ viewableTenants' = TenantPolicy
Init == /\ authorizations = {}
/\ leases = {}
/\ viewableTenants = {}
=============================================================================