UNPKG

@api.stream/studio-kit

Version:

Client SDK for building studio experiences with API.stream

27 lines (26 loc) 972 B
import { Role } from '../core/types'; type PermissionMap = { [key in Role]: Permission[]; }; /** * A contextual repurposing of API.stream roles * https://www.api.stream/docs/api/auth/#permission-roles */ export declare enum Permission { ReadProject = 0,// LiveAPI / LayoutAPI Read UpdateProject = 1,// LiveAPI / LayoutAPI Write JoinRoom = 2,// Join WebRTC InviteGuests = 3,// Invite Guests ManageGuests = 4,// (Non-API.stream?) Kick / rename guests ManageBroadcast = 5,// Manage Broadcast ManageSelf = 6 } export declare const permissions: PermissionMap; /** * It returns true if the role has the permission, otherwise it returns false * @param {Role} role - The role of the user. * @param {Permission} permission - The permission we want to check for. * @returns A function that takes in a role and permission and returns a boolean */ export declare const hasPermission: (role: Role, permission: Permission) => boolean; export {};