export interface CmdrPermissions { readonly allowInStudio: boolean; readonly allowExperienceOwner: boolean; readonly adminUserIds: ReadonlySet; } export const CMDR_PERMISSIONS: CmdrPermissions = { allowInStudio: true, allowExperienceOwner: true, // Add individual Roblox UserIds here, especially for group-owned experiences. adminUserIds: new Set(), }; export function isCmdrAllowed( userId: number, isStudio: boolean, experienceOwnerUserId: number | undefined, permissions: CmdrPermissions = CMDR_PERMISSIONS, ): boolean { return ( (isStudio && permissions.allowInStudio) || permissions.adminUserIds.has(userId) || (permissions.allowExperienceOwner && experienceOwnerUserId !== undefined && userId === experienceOwnerUserId) ); }