🐛 can not override event -> update events

This commit is contained in:
Flam3rboy 2021-02-12 11:27:09 +01:00
parent 673e691c6e
commit 7f24f0894b
2 changed files with 104 additions and 87 deletions

View File

@ -15,8 +15,13 @@ export interface Event {
user_id?: bigint;
channel_id?: bigint;
created_at: number;
event: EVENT;
data?: any;
}
export interface Event {
export interface InvalidatedEvent extends Event {
event: "INVALIDATED";
}
export interface ReadyEvent extends Event {
event: "READY";
data: {
v: number;
@ -78,19 +83,19 @@ export interface Event {
}[];
};
}
export interface Event {
export interface ChannelCreateEvent extends Event {
event: "CHANNEL_CREATE";
data: Channel;
}
export interface Event {
export interface ChannelUpdateEvent extends Event {
event: "CHANNEL_UPDATE";
data: Channel;
}
export interface Event {
export interface ChannelDeleteEvent extends Event {
event: "CHANNEL_DELETE";
data: Channel;
}
export interface Event {
export interface ChannelPinsUpdateEvent extends Event {
event: "CHANNEL_PINS_UPDATE";
data: {
guild_id?: bigint;
@ -98,59 +103,59 @@ export interface Event {
last_pin_timestamp: number;
};
}
export interface Event {
export interface GuildCreateEvent extends Event {
event: "GUILD_CREATE";
data: Guild;
}
export interface Event {
export interface GuildUpdateEvent extends Event {
event: "GUILD_UPDATE";
data: Guild;
}
export interface Event {
export interface GuildDeleteEvent extends Event {
event: "GUILD_DELETE";
data: Guild;
}
export interface Event {
export interface GuildBanAddEvent extends Event {
event: "GUILD_BAN_ADD";
data: {
guild_id: bigint;
user: User;
};
}
export interface Event {
export interface GuildBanRemoveEvent extends Event {
event: "GUILD_BAN_REMOVE";
data: {
guild_id: bigint;
user: User;
};
}
export interface Event {
export interface GuildEmojiUpdateEvent extends Event {
event: "GUILD_EMOJI_UPDATE";
data: {
guild_id: bigint;
emojis: Emoji[];
};
}
export interface Event {
export interface GuildIntegrationUpdateEvent extends Event {
event: "GUILD_INTEGRATIONS_UPDATE";
data: {
guild_id: bigint;
};
}
export interface Event {
export interface GuildMemberAddEvent extends Event {
event: "GUILD_MEMBER_ADD";
data: PublicMember & {
guild_id: bigint;
};
}
export interface Event {
export interface GuildMemberRemoveEvent extends Event {
event: "GUILD_MEMBER_REMOVE";
data: {
guild_id: bigint;
user: User;
};
}
export interface Event {
export interface GuildMemberUpdateEvent extends Event {
event: "GUILD_MEMBER_UPDATE";
data: {
guild_id: bigint;
@ -162,7 +167,7 @@ export interface Event {
pending?: boolean;
};
}
export interface Event {
export interface GuildMembersChunkEvent extends Event {
event: "GUILD_MEMBERS_CHUNK";
data: {
guild_id: bigint;
@ -174,35 +179,35 @@ export interface Event {
nonce?: string;
};
}
export interface Event {
export interface GuildRoleCreateEvent extends Event {
event: "GUILD_ROLE_CREATE";
data: {
guild_id: bigint;
role: Role;
};
}
export interface Event {
export interface GuildRoleUpdateEvent extends Event {
event: "GUILD_ROLE_UPDATE";
data: {
guild_id: bigint;
role: Role;
};
}
export interface Event {
export interface GuildRoleDeleteEvent extends Event {
event: "GUILD_ROLE_DELETE";
data: {
guild_id: bigint;
role_id: bigint;
};
}
export interface Event {
export interface InviteCreateEvent extends Event {
event: "INVITE_CREATE";
data: Omit<Invite, "guild", "channel"> & {
data: Omit<Invite, "guild" | "channel"> & {
channel_id: bigint;
guild_id?: bigint;
};
}
export interface Event {
export interface InviteDeleteEvent extends Event {
event: "INVITE_DELETE";
data: {
channel_id: bigint;
@ -219,15 +224,15 @@ export declare type MessagePayload = Omit<Message, "author_id"> & {
member: PublicMember;
})[];
};
export interface Event {
export interface MessageCreateEvent extends Event {
event: "MESSAGE_CREATE";
data: MessagePayload;
}
export interface Event {
export interface MessageUpdateEvent extends Event {
event: "MESSAGE_UPDATE";
data: MessagePayload;
}
export interface Event {
export interface MessageDeleteEvent extends Event {
event: "MESSAGE_DELETE";
data: {
id: bigint;
@ -235,7 +240,7 @@ export interface Event {
guild_id?: bigint;
};
}
export interface Event {
export interface MessageDeleteBulkEvent extends Event {
event: "MESSAGE_DELETE_BULK";
data: {
ids: bigint[];
@ -243,7 +248,7 @@ export interface Event {
guild_id?: bigint;
};
}
export interface Event {
export interface MessageReactionAddEvent extends Event {
event: "MESSAGE_REACTION_ADD";
data: {
user_id: bigint;
@ -254,7 +259,7 @@ export interface Event {
emoji: PartialEmoji;
};
}
export interface Event {
export interface MessageReactionRemoveEvent extends Event {
event: "MESSAGE_REACTION_REMOVE";
data: {
user_id: bigint;
@ -264,7 +269,7 @@ export interface Event {
emoji: PartialEmoji;
};
}
export interface Event {
export interface MessageReactionRemoveAllEvent extends Event {
event: "MESSAGE_REACTION_REMOVE_ALL";
data: {
channel_id: bigint;
@ -272,7 +277,7 @@ export interface Event {
guild_id?: bigint;
};
}
export interface Event {
export interface MessageReactionRemoveEmojiEvent extends Event {
event: "MESSAGE_REACTION_REMOVE_EMOJI";
data: {
channel_id: bigint;
@ -281,11 +286,11 @@ export interface Event {
emoji: PartialEmoji;
};
}
export interface Event {
export interface PresenceUpdateEvent extends Event {
event: "PRESENCE_UPDATE";
data: Presence;
}
export interface Event {
export interface TypingStartEvent extends Event {
event: "TYPING_START";
data: {
channel_id: bigint;
@ -295,17 +300,17 @@ export interface Event {
member?: PublicMember;
};
}
export interface Event {
export interface UserUpdateEvent extends Event {
event: "USER_UPDATE";
data: User;
}
export interface Event {
export interface VoiceStateUpdateEvent extends Event {
event: "VOICE_STATE_UPDATE";
data: VoiceState & {
member: PublicMember;
};
}
export interface Event {
export interface VoiceServerUpdateEvent extends Event {
event: "VOICE_SERVER_UPDATE";
data: {
token: string;
@ -313,7 +318,7 @@ export interface Event {
endpoint: string;
};
}
export interface Event {
export interface WebhooksUpdateEvent extends Event {
event: "WEBHOOKS_UPDATE";
data: {
guild_id: bigint;
@ -323,20 +328,21 @@ export interface Event {
export declare type ApplicationCommandPayload = ApplicationCommand & {
guild_id: bigint;
};
export interface Event {
export interface ApplicationCommandCreateEvent extends Event {
event: "APPLICATION_COMMAND_CREATE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface ApplicationCommandUpdateEvent extends Event {
event: "APPLICATION_COMMAND_UPDATE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface ApplicationCommandDeleteEvent extends Event {
event: "APPLICATION_COMMAND_DELETE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface InteractionCreateEvent extends Event {
event: "INTERACTION_CREATE";
data: Interaction;
}
export declare type EVENT = "READY" | "CHANNEL_CREATE" | "CHANNEL_UPDATE" | "CHANNEL_DELETE" | "CHANNEL_PINS_UPDATE" | "GUILD_CREATE" | "GUILD_UPDATE" | "GUILD_DELETE" | "GUILD_BAN_ADD" | "GUILD_BAN_REMOVE" | "GUILD_EMOJI_UPDATE" | "GUILD_INTEGRATIONS_UPDATE" | "GUILD_MEMBER_ADD" | "GUILD_MEMBER_REMOVE" | "GUILD_MEMBER_UPDATE" | "GUILD_MEMBER_AVAILABLE" | "GUILD_MEMBER_SPEAKING" | "GUILD_MEMBERS_CHUNK" | "GUILD_ROLE_CREATE" | "GUILD_ROLE_DELETE" | "GUILD_ROLE_UPDATE" | "INVITE_CREATE" | "INVITE_DELETE" | "MESSAGE_CREATE" | "MESSAGE_DELETE" | "MESSAGE_UPDATE" | "MESSAGE_BULK_DELETE" | "MESSAGE_REACTION_ADD" | "MESSAGE_REACTION_REMOVE" | "MESSAGE_REACTION_REMOVE_ALL" | "PRESENCE_UPDATE" | "TYPING_START" | "USER_UPDATE" | "WEBHOOKS_UPDATE" | "INTERACTION_CREATE" | "VOICE_STATE_UPDATE" | "VOICE_SERVER_UPDATE" | "APPLICATION_COMMAND_CREATE" | "APPLICATION_COMMAND_UPDATE" | "APPLICATION_COMMAND_DELETE";
export declare type EVENT = "READY" | "CHANNEL_CREATE" | "CHANNEL_UPDATE" | "CHANNEL_DELETE" | "CHANNEL_PINS_UPDATE" | "GUILD_CREATE" | "GUILD_UPDATE" | "GUILD_DELETE" | "GUILD_BAN_ADD" | "GUILD_BAN_REMOVE" | "GUILD_EMOJI_UPDATE" | "GUILD_INTEGRATIONS_UPDATE" | "GUILD_MEMBER_ADD" | "GUILD_MEMBER_REMOVE" | "GUILD_MEMBER_UPDATE" | "GUILD_MEMBER_AVAILABLE" | "GUILD_MEMBER_SPEAKING" | "GUILD_MEMBERS_CHUNK" | "GUILD_ROLE_CREATE" | "GUILD_ROLE_DELETE" | "GUILD_ROLE_UPDATE" | "INVITE_CREATE" | "INVITE_DELETE" | "MESSAGE_CREATE" | "MESSAGE_UPDATE" | "MESSAGE_DELETE" | "MESSAGE_DELETE_BULK" | "MESSAGE_REACTION_ADD" | "MESSAGE_REACTION_REMOVE" | "MESSAGE_REACTION_REMOVE_ALL" | "MESSAGE_REACTION_REMOVE_EMOJI" | "PRESENCE_UPDATE" | "TYPING_START" | "USER_UPDATE" | "WEBHOOKS_UPDATE" | "INTERACTION_CREATE" | "VOICE_STATE_UPDATE" | "VOICE_SERVER_UPDATE" | "APPLICATION_COMMAND_CREATE" | "APPLICATION_COMMAND_UPDATE" | "APPLICATION_COMMAND_DELETE" | CUSTOMEVENTS;
export declare type CUSTOMEVENTS = "INVALIDATED";

View File

@ -1,4 +1,3 @@
// @ts-nocheck
import { ConnectedAccount, User, UserSettings } from "./User";
import { DMChannel, Channel } from "./Channel";
import { Guild } from "./Guild";
@ -18,11 +17,19 @@ export interface Event {
user_id?: bigint;
channel_id?: bigint;
created_at: number;
// data: any;
// event: EVENT;
event: EVENT;
data?: any;
}
export interface Event {
// ! Custom Events that shouldn't get sent to the client but processed by the server
export interface InvalidatedEvent extends Event {
event: "INVALIDATED";
}
// ! END Custom Events that shouldn't get sent to the client but processed by the server
export interface ReadyEvent extends Event {
event: "READY";
data: {
v: number;
@ -78,22 +85,22 @@ export interface Event {
};
}
export interface Event {
export interface ChannelCreateEvent extends Event {
event: "CHANNEL_CREATE";
data: Channel;
}
export interface Event {
export interface ChannelUpdateEvent extends Event {
event: "CHANNEL_UPDATE";
data: Channel;
}
export interface Event {
export interface ChannelDeleteEvent extends Event {
event: "CHANNEL_DELETE";
data: Channel;
}
export interface Event {
export interface ChannelPinsUpdateEvent extends Event {
event: "CHANNEL_PINS_UPDATE";
data: {
guild_id?: bigint;
@ -102,22 +109,22 @@ export interface Event {
};
}
export interface Event {
export interface GuildCreateEvent extends Event {
event: "GUILD_CREATE";
data: Guild;
}
export interface Event {
export interface GuildUpdateEvent extends Event {
event: "GUILD_UPDATE";
data: Guild;
}
export interface Event {
export interface GuildDeleteEvent extends Event {
event: "GUILD_DELETE";
data: Guild;
}
export interface Event {
export interface GuildBanAddEvent extends Event {
event: "GUILD_BAN_ADD";
data: {
guild_id: bigint;
@ -125,7 +132,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildBanRemoveEvent extends Event {
event: "GUILD_BAN_REMOVE";
data: {
guild_id: bigint;
@ -133,7 +140,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildEmojiUpdateEvent extends Event {
event: "GUILD_EMOJI_UPDATE";
data: {
guild_id: bigint;
@ -141,21 +148,21 @@ export interface Event {
};
}
export interface Event {
export interface GuildIntegrationUpdateEvent extends Event {
event: "GUILD_INTEGRATIONS_UPDATE";
data: {
guild_id: bigint;
};
}
export interface Event {
export interface GuildMemberAddEvent extends Event {
event: "GUILD_MEMBER_ADD";
data: PublicMember & {
guild_id: bigint;
};
}
export interface Event {
export interface GuildMemberRemoveEvent extends Event {
event: "GUILD_MEMBER_REMOVE";
data: {
guild_id: bigint;
@ -163,7 +170,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildMemberUpdateEvent extends Event {
event: "GUILD_MEMBER_UPDATE";
data: {
guild_id: bigint;
@ -176,7 +183,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildMembersChunkEvent extends Event {
event: "GUILD_MEMBERS_CHUNK";
data: {
guild_id: bigint;
@ -189,7 +196,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildRoleCreateEvent extends Event {
event: "GUILD_ROLE_CREATE";
data: {
guild_id: bigint;
@ -197,7 +204,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildRoleUpdateEvent extends Event {
event: "GUILD_ROLE_UPDATE";
data: {
guild_id: bigint;
@ -205,7 +212,7 @@ export interface Event {
};
}
export interface Event {
export interface GuildRoleDeleteEvent extends Event {
event: "GUILD_ROLE_DELETE";
data: {
guild_id: bigint;
@ -213,15 +220,15 @@ export interface Event {
};
}
export interface Event {
export interface InviteCreateEvent extends Event {
event: "INVITE_CREATE";
data: Omit<Invite, "guild", "channel"> & {
data: Omit<Invite, "guild" | "channel"> & {
channel_id: bigint;
guild_id?: bigint;
};
}
export interface Event {
export interface InviteDeleteEvent extends Event {
event: "INVITE_DELETE";
data: {
channel_id: bigint;
@ -238,17 +245,17 @@ export type MessagePayload = Omit<Message, "author_id"> & {
mentions: (User & { member: PublicMember })[];
};
export interface Event {
export interface MessageCreateEvent extends Event {
event: "MESSAGE_CREATE";
data: MessagePayload;
}
export interface Event {
export interface MessageUpdateEvent extends Event {
event: "MESSAGE_UPDATE";
data: MessagePayload;
}
export interface Event {
export interface MessageDeleteEvent extends Event {
event: "MESSAGE_DELETE";
data: {
id: bigint;
@ -257,7 +264,7 @@ export interface Event {
};
}
export interface Event {
export interface MessageDeleteBulkEvent extends Event {
event: "MESSAGE_DELETE_BULK";
data: {
ids: bigint[];
@ -266,7 +273,7 @@ export interface Event {
};
}
export interface Event {
export interface MessageReactionAddEvent extends Event {
event: "MESSAGE_REACTION_ADD";
data: {
user_id: bigint;
@ -278,7 +285,7 @@ export interface Event {
};
}
export interface Event {
export interface MessageReactionRemoveEvent extends Event {
event: "MESSAGE_REACTION_REMOVE";
data: {
user_id: bigint;
@ -289,7 +296,7 @@ export interface Event {
};
}
export interface Event {
export interface MessageReactionRemoveAllEvent extends Event {
event: "MESSAGE_REACTION_REMOVE_ALL";
data: {
channel_id: bigint;
@ -298,7 +305,7 @@ export interface Event {
};
}
export interface Event {
export interface MessageReactionRemoveEmojiEvent extends Event {
event: "MESSAGE_REACTION_REMOVE_EMOJI";
data: {
channel_id: bigint;
@ -308,12 +315,12 @@ export interface Event {
};
}
export interface Event {
export interface PresenceUpdateEvent extends Event {
event: "PRESENCE_UPDATE";
data: Presence;
}
export interface Event {
export interface TypingStartEvent extends Event {
event: "TYPING_START";
data: {
channel_id: bigint;
@ -324,19 +331,19 @@ export interface Event {
};
}
export interface Event {
export interface UserUpdateEvent extends Event {
event: "USER_UPDATE";
data: User;
}
export interface Event {
export interface VoiceStateUpdateEvent extends Event {
event: "VOICE_STATE_UPDATE";
data: VoiceState & {
member: PublicMember;
};
}
export interface Event {
export interface VoiceServerUpdateEvent extends Event {
event: "VOICE_SERVER_UPDATE";
data: {
token: string;
@ -345,7 +352,7 @@ export interface Event {
};
}
export interface Event {
export interface WebhooksUpdateEvent extends Event {
event: "WEBHOOKS_UPDATE";
data: {
guild_id: bigint;
@ -357,22 +364,22 @@ export type ApplicationCommandPayload = ApplicationCommand & {
guild_id: bigint;
};
export interface Event {
export interface ApplicationCommandCreateEvent extends Event {
event: "APPLICATION_COMMAND_CREATE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface ApplicationCommandUpdateEvent extends Event {
event: "APPLICATION_COMMAND_UPDATE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface ApplicationCommandDeleteEvent extends Event {
event: "APPLICATION_COMMAND_DELETE";
data: ApplicationCommandPayload;
}
export interface Event {
export interface InteractionCreateEvent extends Event {
event: "INTERACTION_CREATE";
data: Interaction;
}
@ -404,14 +411,15 @@ export type EVENT =
| "INVITE_CREATE"
| "INVITE_DELETE"
| "MESSAGE_CREATE"
| "MESSAGE_DELETE"
| "MESSAGE_UPDATE"
| "MESSAGE_BULK_DELETE"
| "MESSAGE_DELETE"
| "MESSAGE_DELETE_BULK"
| "MESSAGE_REACTION_ADD"
// TODO: add a new event: bulk add reaction:
// | "MESSAGE_REACTION_BULK_ADD"
| "MESSAGE_REACTION_REMOVE"
| "MESSAGE_REACTION_REMOVE_ALL"
| "MESSAGE_REACTION_REMOVE_EMOJI"
| "PRESENCE_UPDATE"
| "TYPING_START"
| "USER_UPDATE"
@ -421,4 +429,7 @@ export type EVENT =
| "VOICE_SERVER_UPDATE"
| "APPLICATION_COMMAND_CREATE"
| "APPLICATION_COMMAND_UPDATE"
| "APPLICATION_COMMAND_DELETE";
| "APPLICATION_COMMAND_DELETE"
| CUSTOMEVENTS;
export type CUSTOMEVENTS = "INVALIDATED";