kord
kord copied to clipboard
Inconsistent access to Members/Member permissions
Having worked with a user on the KordEx server, I noticed the following:
InteractionCreateEventdoesn't seem to have a useful generic subtype for guild interactions, and also doesn't expose a nullablememberproperty.Member#getPermissions()ignores thepermissionsproperty, which refers to thepermissionsfield present in theMemberdata provided by interaction events.
These two things together create a footgun which makes it difficult to generically check whether a Member has a given permission (or set of permissions). I'd like to suggest the following changes:
- Create a
GuildInteractionCreateEventtype inherited by the relevant interaction event subtypes, which exposes amemberproperty encapsulating the data from the interaction event. - Update
getPermissions()to return thepermissionsproperty by default, which - if provided - will contain all the member's applicable permissions.