Browse Source

Cleanup types for Permission(s)(Overwrite)

pull/10189/head
Soheab_ 6 days ago
parent
commit
6224fb5b8c
  1. 179
      discord/permissions.py

179
discord/permissions.py

@ -24,7 +24,7 @@ DEALINGS IN THE SOFTWARE.
from __future__ import annotations from __future__ import annotations
from typing import Callable, Any, ClassVar, Dict, Iterator, Set, TYPE_CHECKING, Tuple, Optional, TypedDict from typing import Callable, Any, ClassVar, Dict, Iterator, Set, TYPE_CHECKING, Tuple, Optional, TypedDict, Generic, TypeVar
from .flags import BaseFlags, flag_value, fill_with_flags, alias_flag_value from .flags import BaseFlags, flag_value, fill_with_flags, alias_flag_value
__all__ = ( __all__ = (
@ -35,119 +35,70 @@ __all__ = (
if TYPE_CHECKING: if TYPE_CHECKING:
from typing_extensions import Self, Unpack from typing_extensions import Self, Unpack
class _PermissionsKwargs(TypedDict, total=False): BoolOrNoneT = TypeVar('BoolOrNoneT', bound=Optional[bool])
create_instant_invite: bool
kick_members: bool class _BasePermissionsKwargs(Generic[BoolOrNoneT], TypedDict, total=False):
ban_members: bool create_instant_invite: BoolOrNoneT
administrator: bool kick_members: BoolOrNoneT
manage_channels: bool ban_members: BoolOrNoneT
manage_guild: bool administrator: BoolOrNoneT
add_reactions: bool manage_channels: BoolOrNoneT
view_audit_log: bool manage_guild: BoolOrNoneT
priority_speaker: bool add_reactions: BoolOrNoneT
stream: bool view_audit_log: BoolOrNoneT
read_messages: bool priority_speaker: BoolOrNoneT
view_channel: bool stream: BoolOrNoneT
send_messages: bool read_messages: BoolOrNoneT
send_tts_messages: bool view_channel: BoolOrNoneT
manage_messages: bool send_messages: BoolOrNoneT
embed_links: bool send_tts_messages: BoolOrNoneT
attach_files: bool manage_messages: BoolOrNoneT
read_message_history: bool embed_links: BoolOrNoneT
mention_everyone: bool attach_files: BoolOrNoneT
external_emojis: bool read_message_history: BoolOrNoneT
use_external_emojis: bool mention_everyone: BoolOrNoneT
view_guild_insights: bool external_emojis: BoolOrNoneT
connect: bool use_external_emojis: BoolOrNoneT
speak: bool view_guild_insights: BoolOrNoneT
mute_members: bool connect: BoolOrNoneT
deafen_members: bool speak: BoolOrNoneT
move_members: bool mute_members: BoolOrNoneT
use_voice_activation: bool deafen_members: BoolOrNoneT
change_nickname: bool move_members: BoolOrNoneT
manage_nicknames: bool use_voice_activation: BoolOrNoneT
manage_roles: bool change_nickname: BoolOrNoneT
manage_permissions: bool manage_nicknames: BoolOrNoneT
manage_webhooks: bool manage_roles: BoolOrNoneT
manage_expressions: bool manage_permissions: BoolOrNoneT
manage_emojis: bool manage_webhooks: BoolOrNoneT
manage_emojis_and_stickers: bool manage_expressions: BoolOrNoneT
use_application_commands: bool manage_emojis: BoolOrNoneT
request_to_speak: bool manage_emojis_and_stickers: BoolOrNoneT
manage_events: bool use_application_commands: BoolOrNoneT
manage_threads: bool request_to_speak: BoolOrNoneT
create_public_threads: bool manage_events: BoolOrNoneT
create_private_threads: bool manage_threads: BoolOrNoneT
send_messages_in_threads: bool create_public_threads: BoolOrNoneT
external_stickers: bool create_private_threads: BoolOrNoneT
use_external_stickers: bool send_messages_in_threads: BoolOrNoneT
use_embedded_activities: bool external_stickers: BoolOrNoneT
moderate_members: bool use_external_stickers: BoolOrNoneT
use_soundboard: bool use_embedded_activities: BoolOrNoneT
use_external_sounds: bool moderate_members: BoolOrNoneT
send_voice_messages: bool use_soundboard: BoolOrNoneT
create_expressions: bool use_external_sounds: BoolOrNoneT
create_events: bool send_voice_messages: BoolOrNoneT
send_polls: bool create_expressions: BoolOrNoneT
create_polls: bool create_events: BoolOrNoneT
use_external_apps: bool send_polls: BoolOrNoneT
create_polls: BoolOrNoneT
class _PermissionOverwriteKwargs(_PermissionsKwargs, total=False): use_external_apps: BoolOrNoneT
create_instant_invite: Optional[bool]
kick_members: Optional[bool] class _PermissionsKwargs(_BasePermissionsKwargs[bool]):
ban_members: Optional[bool] ...
administrator: Optional[bool]
manage_channels: Optional[bool] class _PermissionOverwriteKwargs(_BasePermissionsKwargs[Optional[bool]]):
manage_guild: Optional[bool] ...
add_reactions: Optional[bool]
view_audit_log: Optional[bool]
priority_speaker: Optional[bool]
stream: Optional[bool]
read_messages: Optional[bool]
view_channel: Optional[bool]
send_messages: Optional[bool]
send_tts_messages: Optional[bool]
manage_messages: Optional[bool]
embed_links: Optional[bool]
attach_files: Optional[bool]
read_message_history: Optional[bool]
mention_everyone: Optional[bool]
external_emojis: Optional[bool]
use_external_emojis: Optional[bool]
view_guild_insights: Optional[bool]
connect: Optional[bool]
speak: Optional[bool]
mute_members: Optional[bool]
deafen_members: Optional[bool]
move_members: Optional[bool]
use_voice_activation: Optional[bool]
change_nickname: Optional[bool]
manage_nicknames: Optional[bool]
manage_roles: Optional[bool]
manage_permissions: Optional[bool]
manage_webhooks: Optional[bool]
manage_expressions: Optional[bool]
manage_emojis: Optional[bool]
manage_emojis_and_stickers: Optional[bool]
use_application_commands: Optional[bool]
request_to_speak: Optional[bool]
manage_events: Optional[bool]
manage_threads: Optional[bool]
create_public_threads: Optional[bool]
create_private_threads: Optional[bool]
send_messages_in_threads: Optional[bool]
external_stickers: Optional[bool]
use_external_stickers: Optional[bool]
use_embedded_activities: Optional[bool]
moderate_members: Optional[bool]
use_soundboard: Optional[bool]
use_external_sounds: Optional[bool]
send_voice_messages: Optional[bool]
create_expressions: Optional[bool]
create_events: Optional[bool]
send_polls: Optional[bool]
create_polls: Optional[bool]
use_external_apps: Optional[bool]
# A permission alias works like a regular flag but is marked # A permission alias works like a regular flag but is marked

Loading…
Cancel
Save