/* UNIT_CA5 - Stream management bot Copyright (C) 2024 digimint This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ package unit_ca5.twitch /** * Enumeration of all scopes currently supported by the Twitch API * * @param uid A unique identifier for each scope. This is used to associate * tokens with scopes in the database. The ordering of scopes within this enum * is unimportant, as long as each scope's UID is unique and does not change. */ enum TokenScope(val uid: Int): // API Scopes case AnalyticsReadExtensions extends TokenScope(0x0000) case AnalyticsReadGames extends TokenScope(0x0001) case BitsRead extends TokenScope(0x0010) case ChannelManageAds extends TokenScope(0x0020) case ChannelReadAds extends TokenScope(0x0021) case ChannelManageBroadcast extends TokenScope(0x0022) case ChannelReadCharity extends TokenScope(0x0023) case ChannelEditCommercial extends TokenScope(0x0024) case ChannelReadEditors extends TokenScope(0x0025) case ChannelManageExtensions extends TokenScope(0x0026) case ChannelReadGoals extends TokenScope(0x0027) case ChannelReadGuestStar extends TokenScope(0x0028) case ChannelManageGuestStar extends TokenScope(0x0029) case ChannelReadHypeTrain extends TokenScope(0x002A) case ChannelManageModerators extends TokenScope(0x002B) case ChannelReadPolls extends TokenScope(0x002C) case ChannelManagePolls extends TokenScope(0x002D) case ChannelReadPredictions extends TokenScope(0x002E) case ChannelManagePredictions extends TokenScope(0x002F) case ChannelManageRaids extends TokenScope(0x0030) case ChannelReadRedemptions extends TokenScope(0x0031) case ChannelManageRedemptions extends TokenScope(0x0032) case ChannelManageSchedule extends TokenScope(0x0033) case ChannelReadStreamKey extends TokenScope(0x0034) case ChannelReadSubscriptions extends TokenScope(0x0035) case ChannelManageVideos extends TokenScope(0x0036) case ChannelReadVIPs extends TokenScope(0x0037) case ChannelManageVIPs extends TokenScope(0x0038) case ClipsEdit extends TokenScope(0x0040) case ModerationRead extends TokenScope(0x0050) case ModeratorManageAnnouncement extends TokenScope(0x0060) case ModeratorManageAutomod extends TokenScope(0x0061) case ModeratorReadAutomodSettings extends TokenScope(0x0062) case ModeratorManageAutomodSettings extends TokenScope(0x0063) case ModeratorManageBannedUsers extends TokenScope(0x0064) case ModeratorReadBlockedTerms extends TokenScope(0x0065) case ModeratorManageBlockedTerms extends TokenScope(0x0066) case ModeratorManageChatMessages extends TokenScope(0x0067) case ModeratorReadChatters extends TokenScope(0x0068) case ModeratorReadFollowers extends TokenScope(0x0069) case ModeratorReadGuestStar extends TokenScope(0x006A) case ModeratorManageGuestStar extends TokenScope(0x006B) case ModeratorReadShieldMode extends TokenScope(0x006C) case ModeratorManageShieldMode extends TokenScope(0x006D) case ModeratorReadShoutouts extends TokenScope(0x006E) case ModeratorManageShoutouts extends TokenScope(0x006F) case ModeratorReadUnbanRequests extends TokenScope(0x0070) case ModeratorManageUnbanRequests extends TokenScope(0x0071) case UserEdit extends TokenScope(0x0080) case UserEditFollows extends TokenScope(0x0081) case UserReadBlockedUsers extends TokenScope(0x0082) case UserManageBlockedUsers extends TokenScope(0x0083) case UserReadBroadcast extends TokenScope(0x0084) case UserManageChatColor extends TokenScope(0x0085) case UserReadEmail extends TokenScope(0x0086) case UserReadEmotes extends TokenScope(0x0087) case UserReadFollows extends TokenScope(0x0088) case UserReadModeratedChannels extends TokenScope(0x0089) case UserReadSubscriptions extends TokenScope(0x008A) case UserManageWhispers extends TokenScope(0x008B) // Chat and PubSub scopes case ChannelBot extends TokenScope(0x7000) case ChannelModerate extends TokenScope(0x7001) case ChatEdit extends TokenScope(0x7010) case ChatRead extends TokenScope(0x7011) case UserBot extends TokenScope(0x7020) case UserReadChat extends TokenScope(0x7021) case UserWriteChat extends TokenScope(0x7022) case WhispersRead extends TokenScope(0x7030) case WhispersEdit extends TokenScope(0x7031)