import { ClientEvents, Collection, Interaction, InvalidRequestWarningData, Invite, RateLimitData, Snowflake, Sticker, Typing } from 'discord.js'; import { BushClient, BushTextBasedChannels } from '../discord-akairo/BushClient'; import { BushApplicationCommand } from './BushApplicationCommand'; import { BushDMChannel } from './BushDMChannel'; import { BushGuild } from './BushGuild'; import { BushGuildBan } from './BushGuildBan'; import { BushGuildChannel } from './BushGuildChannel'; import { BushGuildEmoji } from './BushGuildEmoji'; import { BushGuildMember, PartialBushGuildMember } from './BushGuildMember'; import { BushMessage, PartialBushMessage } from './BushMessage'; import { BushMessageReaction, PartialBushMessageReaction } from './BushMessageReaction'; import { BushPresence } from './BushPresence'; import { BushRole } from './BushRole'; import { BushStageInstance } from './BushStageInstance'; import { BushTextChannel } from './BushTextChannel'; import { BushThreadChannel } from './BushThreadChannel'; import { BushThreadMember } from './BushThreadMember'; import { BushUser, PartialBushUser } from './BushUser'; import { BushVoiceState } from './BushVoiceState'; export interface BushClientEvents extends ClientEvents { applicationCommandCreate: [command: BushApplicationCommand]; applicationCommandDelete: [command: BushApplicationCommand]; applicationCommandUpdate: [oldCommand: BushApplicationCommand | null, newCommand: BushApplicationCommand]; channelCreate: [channel: BushGuildChannel]; channelDelete: [channel: BushDMChannel | BushGuildChannel]; channelPinsUpdate: [channel: BushTextBasedChannels, date: Date]; channelUpdate: [oldChannel: BushDMChannel | BushGuildChannel, newChannel: BushDMChannel | BushGuildChannel]; debug: [message: string]; warn: [message: string]; emojiCreate: [emoji: BushGuildEmoji]; emojiDelete: [emoji: BushGuildEmoji]; emojiUpdate: [oldEmoji: BushGuildEmoji, newEmoji: BushGuildEmoji]; error: [error: Error]; guildBanAdd: [ban: BushGuildBan]; guildBanRemove: [ban: BushGuildBan]; guildCreate: [guild: BushGuild]; guildDelete: [guild: BushGuild]; guildUnavailable: [guild: BushGuild]; guildIntegrationsUpdate: [guild: BushGuild]; guildMemberAdd: [member: BushGuildMember]; guildMemberAvailable: [member: BushGuildMember | PartialBushGuildMember]; guildMemberRemove: [member: BushGuildMember | PartialBushGuildMember]; guildMembersChunk: [ members: Collection, guild: BushGuild, data: { count: number; index: number; nonce: string | undefined } ]; guildMemberUpdate: [oldMember: BushGuildMember | PartialBushGuildMember, newMember: BushGuildMember]; guildUpdate: [oldGuild: BushGuild, newGuild: BushGuild]; inviteCreate: [invite: Invite]; inviteDelete: [invite: Invite]; messageCreate: [message: BushMessage]; messageDelete: [message: BushMessage | PartialBushMessage]; messageReactionRemoveAll: [message: BushMessage | PartialBushMessage]; messageReactionRemoveEmoji: [reaction: BushMessageReaction | PartialBushMessageReaction]; messageDeleteBulk: [messages: Collection]; messageReactionAdd: [reaction: BushMessageReaction | PartialBushMessageReaction, user: BushUser | PartialBushUser]; messageReactionRemove: [reaction: BushMessageReaction | PartialBushMessageReaction, user: BushUser | PartialBushUser]; messageUpdate: [oldMessage: BushMessage | PartialBushMessage, newMessage: BushMessage | PartialBushMessage]; presenceUpdate: [oldPresence: BushPresence | null, newPresence: BushPresence]; rateLimit: [rateLimitData: RateLimitData]; invalidRequestWarning: [invalidRequestWarningData: InvalidRequestWarningData]; ready: [client: BushClient]; invalidated: []; roleCreate: [role: BushRole]; roleDelete: [role: BushRole]; roleUpdate: [oldRole: BushRole, newRole: BushRole]; threadCreate: [thread: BushThreadChannel]; threadDelete: [thread: BushThreadChannel]; threadListSync: [threads: Collection]; threadMemberUpdate: [oldMember: BushThreadMember, newMember: BushThreadMember]; threadMembersUpdate: [ oldMembers: Collection, mewMembers: Collection ]; threadUpdate: [oldThread: BushThreadChannel, newThread: BushThreadChannel]; typingStart: [typing: Typing]; userUpdate: [oldUser: BushUser | PartialBushUser, newUser: BushUser]; voiceStateUpdate: [oldState: BushVoiceState, newState: BushVoiceState]; webhookUpdate: [channel: BushTextChannel]; interactionCreate: [interaction: Interaction]; shardError: [error: Error, shardId: number]; shardReady: [shardId: number, unavailableGuilds: Set | undefined]; shardReconnecting: [shardId: number]; shardResume: [shardId: number, replayedEvents: number]; stageInstanceCreate: [stageInstance: BushStageInstance]; stageInstanceUpdate: [oldStageInstance: BushStageInstance | null, newStageInstance: BushStageInstance]; stageInstanceDelete: [stageInstance: BushStageInstance]; stickerCreate: [sticker: Sticker]; stickerDelete: [sticker: Sticker]; stickerUpdate: [oldSticker: Sticker, newSticker: Sticker]; }