#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum UserPermission {
#[serde(rename = "get_webhook")]
GetWebhook,
#[serde(rename = "create_webhook")]
CreateWebhook,
#[serde(rename = "edit_webhook")]
EditWebhook,
#[serde(rename = "delete_webhook")]
DeleteWebhook,
#[serde(rename = "access_others_webhook")]
AccessOthersWebhook,
#[serde(rename = "get_bot")]
GetBot,
#[serde(rename = "create_bot")]
CreateBot,
#[serde(rename = "edit_bot")]
EditBot,
#[serde(rename = "delete_bot")]
DeleteBot,
#[serde(rename = "access_others_bot")]
AccessOthersBot,
#[serde(rename = "bot_action_join_channel")]
BotActionJoinChannel,
#[serde(rename = "bot_action_leave_channel")]
BotActionLeaveChannel,
#[serde(rename = "create_channel")]
CreateChannel,
#[serde(rename = "get_channel")]
GetChannel,
#[serde(rename = "edit_channel")]
EditChannel,
#[serde(rename = "delete_channel")]
DeleteChannel,
#[serde(rename = "change_parent_channel")]
ChangeParentChannel,
#[serde(rename = "edit_channel_topic")]
EditChannelTopic,
#[serde(rename = "get_channel_star")]
GetChannelStar,
#[serde(rename = "edit_channel_star")]
EditChannelStar,
#[serde(rename = "get_my_tokens")]
GetMyTokens,
#[serde(rename = "revoke_my_token")]
RevokeMyToken,
#[serde(rename = "get_clients")]
GetClients,
#[serde(rename = "create_client")]
CreateClient,
#[serde(rename = "edit_my_client")]
EditMyClient,
#[serde(rename = "delete_my_client")]
DeleteMyClient,
#[serde(rename = "manage_others_client")]
ManageOthersClient,
#[serde(rename = "upload_file")]
UploadFile,
#[serde(rename = "download_file")]
DownloadFile,
#[serde(rename = "delete_file")]
DeleteFile,
#[serde(rename = "get_message")]
GetMessage,
#[serde(rename = "post_message")]
PostMessage,
#[serde(rename = "edit_message")]
EditMessage,
#[serde(rename = "delete_message")]
DeleteMessage,
#[serde(rename = "report_message")]
ReportMessage,
#[serde(rename = "get_message_reports")]
GetMessageReports,
#[serde(rename = "create_message_pin")]
CreateMessagePin,
#[serde(rename = "delete_message_pin")]
DeleteMessagePin,
#[serde(rename = "get_channel_subscription")]
GetChannelSubscription,
#[serde(rename = "edit_channel_subscription")]
EditChannelSubscription,
#[serde(rename = "connect_notification_stream")]
ConnectNotificationStream,
#[serde(rename = "register_fcm_device")]
RegisterFCMDevice,
#[serde(rename = "get_stamp")]
GetStamp,
#[serde(rename = "create_stamp")]
CreateStamp,
#[serde(rename = "edit_stamp")]
EditStamp,
#[serde(rename = "edit_stamp_created_by_others")]
EditStampCreatedByOthers,
#[serde(rename = "delete_stamp")]
DeleteStamp,
#[serde(rename = "delete_my_stamp")]
DeleteMyStamp,
#[serde(rename = "add_message_stamp")]
AddMessageStamp,
#[serde(rename = "remove_message_stamp")]
RemoveMessageStamp,
#[serde(rename = "get_my_stamp_history")]
GetMyStampHistory,
#[serde(rename = "get_stamp_palette")]
GetStampPalette,
#[serde(rename = "create_stamp_palette")]
CreateStampPalette,
#[serde(rename = "edit_stamp_palette")]
EditStampPalette,
#[serde(rename = "delete_stamp_palette")]
DeleteStampPalette,
#[serde(rename = "get_user")]
GetUser,
#[serde(rename = "register_user")]
RegisterUser,
#[serde(rename = "get_me")]
GetMe,
#[serde(rename = "get_oidc_userinfo")]
GetOIDCUserInfo,
#[serde(rename = "edit_me")]
EditMe,
#[serde(rename = "change_my_icon")]
ChangeMyIcon,
#[serde(rename = "change_my_password")]
ChangeMyPassword,
#[serde(rename = "edit_other_users")]
EditOtherUsers,
#[serde(rename = "get_user_qr_code")]
GetUserQRCode,
#[serde(rename = "get_user_tag")]
GetUserTag,
#[serde(rename = "edit_user_tag")]
EditUserTag,
#[serde(rename = "get_user_group")]
GetUserGroup,
#[serde(rename = "create_user_group")]
CreateUserGroup,
#[serde(rename = "create_special_user_group")]
CreateSpecialUserGroup,
#[serde(rename = "edit_user_group")]
EditUserGroup,
#[serde(rename = "delete_user_group")]
DeleteUserGroup,
#[serde(rename = "edit_others_user_group")]
AllUserGroupsAdmin,
#[serde(rename = "web_rtc")]
WebRTC,
#[serde(rename = "get_my_sessions")]
GetMySessions,
#[serde(rename = "delete_my_sessions")]
DeleteMySessions,
#[serde(rename = "get_my_external_account")]
GetMyExternalAccount,
#[serde(rename = "edit_my_external_account")]
EditMyExternalAccount,
#[serde(rename = "get_unread")]
GetUnread,
#[serde(rename = "delete_unread")]
DeleteUnread,
#[serde(rename = "get_clip_folder")]
GetClipFolder,
#[serde(rename = "create_clip_folder")]
CreateClipFolder,
#[serde(rename = "edit_clip_folder")]
EditClipFolder,
#[serde(rename = "delete_clip_folder")]
DeleteClipFolder,
}
impl ToString for UserPermission {
fn to_string(&self) -> String {
match self {
Self::GetWebhook => String::from("get_webhook"),
Self::CreateWebhook => String::from("create_webhook"),
Self::EditWebhook => String::from("edit_webhook"),
Self::DeleteWebhook => String::from("delete_webhook"),
Self::AccessOthersWebhook => String::from("access_others_webhook"),
Self::GetBot => String::from("get_bot"),
Self::CreateBot => String::from("create_bot"),
Self::EditBot => String::from("edit_bot"),
Self::DeleteBot => String::from("delete_bot"),
Self::AccessOthersBot => String::from("access_others_bot"),
Self::BotActionJoinChannel => String::from("bot_action_join_channel"),
Self::BotActionLeaveChannel => String::from("bot_action_leave_channel"),
Self::CreateChannel => String::from("create_channel"),
Self::GetChannel => String::from("get_channel"),
Self::EditChannel => String::from("edit_channel"),
Self::DeleteChannel => String::from("delete_channel"),
Self::ChangeParentChannel => String::from("change_parent_channel"),
Self::EditChannelTopic => String::from("edit_channel_topic"),
Self::GetChannelStar => String::from("get_channel_star"),
Self::EditChannelStar => String::from("edit_channel_star"),
Self::GetMyTokens => String::from("get_my_tokens"),
Self::RevokeMyToken => String::from("revoke_my_token"),
Self::GetClients => String::from("get_clients"),
Self::CreateClient => String::from("create_client"),
Self::EditMyClient => String::from("edit_my_client"),
Self::DeleteMyClient => String::from("delete_my_client"),
Self::ManageOthersClient => String::from("manage_others_client"),
Self::UploadFile => String::from("upload_file"),
Self::DownloadFile => String::from("download_file"),
Self::DeleteFile => String::from("delete_file"),
Self::GetMessage => String::from("get_message"),
Self::PostMessage => String::from("post_message"),
Self::EditMessage => String::from("edit_message"),
Self::DeleteMessage => String::from("delete_message"),
Self::ReportMessage => String::from("report_message"),
Self::GetMessageReports => String::from("get_message_reports"),
Self::CreateMessagePin => String::from("create_message_pin"),
Self::DeleteMessagePin => String::from("delete_message_pin"),
Self::GetChannelSubscription => String::from("get_channel_subscription"),
Self::EditChannelSubscription => String::from("edit_channel_subscription"),
Self::ConnectNotificationStream => String::from("connect_notification_stream"),
Self::RegisterFCMDevice => String::from("register_fcm_device"),
Self::GetStamp => String::from("get_stamp"),
Self::CreateStamp => String::from("create_stamp"),
Self::EditStamp => String::from("edit_stamp"),
Self::EditStampCreatedByOthers => String::from("edit_stamp_created_by_others"),
Self::DeleteStamp => String::from("delete_stamp"),
Self::DeleteMyStamp => String::from("delete_my_stamp"),
Self::AddMessageStamp => String::from("add_message_stamp"),
Self::RemoveMessageStamp => String::from("remove_message_stamp"),
Self::GetMyStampHistory => String::from("get_my_stamp_history"),
Self::GetStampPalette => String::from("get_stamp_palette"),
Self::CreateStampPalette => String::from("create_stamp_palette"),
Self::EditStampPalette => String::from("edit_stamp_palette"),
Self::DeleteStampPalette => String::from("delete_stamp_palette"),
Self::GetUser => String::from("get_user"),
Self::RegisterUser => String::from("register_user"),
Self::GetMe => String::from("get_me"),
Self::GetOIDCUserInfo => String::from("get_oidc_userinfo"),
Self::EditMe => String::from("edit_me"),
Self::ChangeMyIcon => String::from("change_my_icon"),
Self::ChangeMyPassword => String::from("change_my_password"),
Self::EditOtherUsers => String::from("edit_other_users"),
Self::GetUserQRCode => String::from("get_user_qr_code"),
Self::GetUserTag => String::from("get_user_tag"),
Self::EditUserTag => String::from("edit_user_tag"),
Self::GetUserGroup => String::from("get_user_group"),
Self::CreateUserGroup => String::from("create_user_group"),
Self::CreateSpecialUserGroup => String::from("create_special_user_group"),
Self::EditUserGroup => String::from("edit_user_group"),
Self::DeleteUserGroup => String::from("delete_user_group"),
Self::AllUserGroupsAdmin => String::from("edit_others_user_group"),
Self::WebRTC => String::from("web_rtc"),
Self::GetMySessions => String::from("get_my_sessions"),
Self::DeleteMySessions => String::from("delete_my_sessions"),
Self::GetMyExternalAccount => String::from("get_my_external_account"),
Self::EditMyExternalAccount => String::from("edit_my_external_account"),
Self::GetUnread => String::from("get_unread"),
Self::DeleteUnread => String::from("delete_unread"),
Self::GetClipFolder => String::from("get_clip_folder"),
Self::CreateClipFolder => String::from("create_clip_folder"),
Self::EditClipFolder => String::from("edit_clip_folder"),
Self::DeleteClipFolder => String::from("delete_clip_folder"),
}
}
}
impl Default for UserPermission {
fn default() -> UserPermission {
Self::GetWebhook
}
}