mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-11 00:53:31 +01:00
at(typings): partial Types (#3493)
* test * test 2 * update * update * replaced double quotes * Made message.guild and message.member nullable * replaced double quotes again (oops) * missing semicolons * removed fetch from Omit * Added Partialize generic type * Created interfaces (prettier intellisense) * joinedAt/joinedTimestamp are nullable and fixed conflict
This commit is contained in:
86
typings/index.d.ts
vendored
86
typings/index.d.ts
vendored
@@ -170,33 +170,33 @@ declare module 'discord.js' {
|
||||
public sweepMessages(lifetime?: number): number;
|
||||
public toJSON(): object;
|
||||
|
||||
public on(event: 'channelCreate' | 'channelDelete', listener: (channel: Channel) => void): this;
|
||||
public on(event: 'channelPinsUpdate', listener: (channel: Channel, time: Date) => void): this;
|
||||
public on(event: 'channelUpdate', listener: (oldChannel: Channel, newChannel: Channel) => void): this;
|
||||
public on(event: 'channelCreate' | 'channelDelete', listener: (channel: Channel | PartialChannel) => void): this;
|
||||
public on(event: 'channelPinsUpdate', listener: (channel: Channel | PartialChannel, time: Date) => void): this;
|
||||
public on(event: 'channelUpdate', listener: (oldChannel: Channel | PartialChannel, newChannel: Channel | PartialChannel) => void): this;
|
||||
public on(event: 'debug' | 'warn', listener: (info: string) => void): this;
|
||||
public on(event: 'disconnect', listener: (event: any, shardID: number) => void): this;
|
||||
public on(event: 'emojiCreate' | 'emojiDelete', listener: (emoji: GuildEmoji) => void): this;
|
||||
public on(event: 'emojiUpdate', listener: (oldEmoji: GuildEmoji, newEmoji: GuildEmoji) => void): this;
|
||||
public on(event: 'error', listener: (error: Error) => void): this;
|
||||
public on(event: 'guildBanAdd' | 'guildBanRemove', listener: (guild: Guild, user: User) => void): this;
|
||||
public on(event: 'guildBanAdd' | 'guildBanRemove', listener: (guild: Guild, user: User | PartialUser) => void): this;
|
||||
public on(event: 'guildCreate' | 'guildDelete' | 'guildUnavailable', listener: (guild: Guild) => void): this;
|
||||
public on(event: 'guildMemberAdd' | 'guildMemberAvailable' | 'guildMemberRemove', listener: (member: GuildMember) => void): this;
|
||||
public on(event: 'guildMembersChunk', listener: (members: Collection<Snowflake, GuildMember>, guild: Guild) => void): this;
|
||||
public on(event: 'guildMemberSpeaking', listener: (member: GuildMember, speaking: Readonly<Speaking>) => void): this;
|
||||
public on(event: 'guildMemberUpdate', listener: (oldMember: GuildMember, newMember: GuildMember) => void): this;
|
||||
public on(event: 'guildMemberAdd' | 'guildMemberAvailable' | 'guildMemberRemove', listener: (member: GuildMember | PartialGuildMember) => void): this;
|
||||
public on(event: 'guildMembersChunk', listener: (members: Collection<Snowflake, GuildMember | PartialGuildMember>, guild: Guild) => void): this;
|
||||
public on(event: 'guildMemberSpeaking', listener: (member: GuildMember | PartialGuildMember, speaking: Readonly<Speaking>) => void): this;
|
||||
public on(event: 'guildMemberUpdate', listener: (oldMember: GuildMember | PartialGuildMember, newMember: GuildMember | PartialGuildMember) => void): this;
|
||||
public on(event: 'guildUpdate', listener: (oldGuild: Guild, newGuild: Guild) => void): this;
|
||||
public on(event: 'guildIntegrationsUpdate', listener: (guild: Guild) => void): this;
|
||||
public on(event: 'message' | 'messageDelete' | 'messageReactionRemoveAll', listener: (message: Message) => void): this;
|
||||
public on(event: 'messageDeleteBulk', listener: (messages: Collection<Snowflake, Message>) => void): this;
|
||||
public on(event: 'messageReactionAdd' | 'messageReactionRemove', listener: (messageReaction: MessageReaction, user: User) => void): this;
|
||||
public on(event: 'messageUpdate', listener: (oldMessage: Message, newMessage: Message) => void): this;
|
||||
public on(event: 'message' | 'messageDelete' | 'messageReactionRemoveAll', listener: (message: Message | PartialMessage) => void): this;
|
||||
public on(event: 'messageDeleteBulk', listener: (messages: Collection<Snowflake, Message | PartialMessage>) => void): this;
|
||||
public on(event: 'messageReactionAdd' | 'messageReactionRemove', listener: (messageReaction: MessageReaction, user: User | PartialUser) => void): this;
|
||||
public on(event: 'messageUpdate', listener: (oldMessage: Message | PartialMessage, newMessage: Message | PartialMessage) => void): this;
|
||||
public on(event: 'presenceUpdate', listener: (oldPresence: Presence | undefined, newPresence: Presence) => void): this;
|
||||
public on(event: 'rateLimit', listener: (rateLimitData: RateLimitData) => void): this;
|
||||
public on(event: 'ready', listener: () => void): this;
|
||||
public on(event: 'roleCreate' | 'roleDelete', listener: (role: Role) => void): this;
|
||||
public on(event: 'roleUpdate', listener: (oldRole: Role, newRole: Role) => void): this;
|
||||
public on(event: 'typingStart' | 'typingStop', listener: (channel: Channel, user: User) => void): this;
|
||||
public on(event: 'userUpdate', listener: (oldUser: User, newUser: User) => void): this;
|
||||
public on(event: 'typingStart' | 'typingStop', listener: (channel: Channel | PartialChannel, user: User | PartialUser) => void): this;
|
||||
public on(event: 'userUpdate', listener: (oldUser: User | PartialUser, newUser: User | PartialUser) => void): this;
|
||||
public on(event: 'voiceStateUpdate', listener: (oldState: VoiceState | undefined, newState: VoiceState) => void): this;
|
||||
public on(event: 'webhookUpdate', listener: (channel: TextChannel) => void): this;
|
||||
public on(event: 'invalidated', listener: () => void): this;
|
||||
@@ -207,33 +207,33 @@ declare module 'discord.js' {
|
||||
public on(event: 'shardResume', listener: (id: number, replayed: number) => void): this;
|
||||
public on(event: string, listener: Function): this;
|
||||
|
||||
public once(event: 'channelCreate' | 'channelDelete', listener: (channel: Channel) => void): this;
|
||||
public once(event: 'channelPinsUpdate', listener: (channel: Channel, time: Date) => void): this;
|
||||
public once(event: 'channelUpdate', listener: (oldChannel: Channel, newChannel: Channel) => void): this;
|
||||
public once(event: 'channelCreate' | 'channelDelete', listener: (channel: Channel | PartialChannel) => void): this;
|
||||
public once(event: 'channelPinsUpdate', listener: (channel: Channel | PartialChannel, time: Date) => void): this;
|
||||
public once(event: 'channelUpdate', listener: (oldChannel: Channel | PartialChannel, newChannel: Channel | PartialChannel) => void): this;
|
||||
public once(event: 'debug' | 'warn', listener: (info: string) => void): this;
|
||||
public once(event: 'disconnect', listener: (event: any, shardID: number) => void): this;
|
||||
public once(event: 'emojiCreate' | 'emojiDelete', listener: (emoji: GuildEmoji) => void): this;
|
||||
public once(event: 'emojiUpdate', listener: (oldEmoji: GuildEmoji, newEmoji: GuildEmoji) => void): this;
|
||||
public once(event: 'error', listener: (error: Error) => void): this;
|
||||
public once(event: 'guildBanAdd' | 'guildBanRemove', listener: (guild: Guild, user: User) => void): this;
|
||||
public once(event: 'guildBanAdd' | 'guildBanRemove', listener: (guild: Guild, user: User | PartialUser) => void): this;
|
||||
public once(event: 'guildCreate' | 'guildDelete' | 'guildUnavailable', listener: (guild: Guild) => void): this;
|
||||
public once(event: 'guildMemberAdd' | 'guildMemberAvailable' | 'guildMemberRemove', listener: (member: GuildMember) => void): this;
|
||||
public once(event: 'guildMembersChunk', listener: (members: Collection<Snowflake, GuildMember>, guild: Guild) => void): this;
|
||||
public once(event: 'guildMemberSpeaking', listener: (member: GuildMember, speaking: Readonly<Speaking>) => void): this;
|
||||
public once(event: 'guildMemberUpdate', listener: (oldMember: GuildMember, newMember: GuildMember) => void): this;
|
||||
public once(event: 'guildMemberAdd' | 'guildMemberAvailable' | 'guildMemberRemove', listener: (member: GuildMember | PartialGuildMember) => void): this;
|
||||
public once(event: 'guildMembersChunk', listener: (members: Collection<Snowflake, GuildMember | PartialGuildMember>, guild: Guild) => void): this;
|
||||
public once(event: 'guildMemberSpeaking', listener: (member: GuildMember | PartialGuildMember, speaking: Readonly<Speaking>) => void): this;
|
||||
public once(event: 'guildMemberUpdate', listener: (oldMember: GuildMember | PartialGuildMember, newMember: GuildMember | PartialGuildMember) => void): this;
|
||||
public once(event: 'guildUpdate', listener: (oldGuild: Guild, newGuild: Guild) => void): this;
|
||||
public once(event: 'guildIntegrationsUpdate', listener: (guild: Guild) => void): this;
|
||||
public once(event: 'message' | 'messageDelete' | 'messageReactionRemoveAll', listener: (message: Message) => void): this;
|
||||
public once(event: 'messageDeleteBulk', listener: (messages: Collection<Snowflake, Message>) => void): this;
|
||||
public once(event: 'messageReactionAdd' | 'messageReactionRemove', listener: (messageReaction: MessageReaction, user: User) => void): this;
|
||||
public once(event: 'messageUpdate', listener: (oldMessage: Message, newMessage: Message) => void): this;
|
||||
public once(event: 'message' | 'messageDelete' | 'messageReactionRemoveAll', listener: (message: Message | PartialMessage) => void): this;
|
||||
public once(event: 'messageDeleteBulk', listener: (messages: Collection<Snowflake, Message | PartialMessage>) => void): this;
|
||||
public once(event: 'messageReactionAdd' | 'messageReactionRemove', listener: (messageReaction: MessageReaction, user: User | PartialUser) => void): this;
|
||||
public once(event: 'messageUpdate', listener: (oldMessage: Message | PartialMessage, newMessage: Message | PartialMessage) => void): this;
|
||||
public once(event: 'presenceUpdate', listener: (oldPresence: Presence | undefined, newPresence: Presence) => void): this;
|
||||
public once(event: 'rateLimit', listener: (rateLimitData: RateLimitData) => void): this;
|
||||
public once(event: 'ready', listener: () => void): this;
|
||||
public once(event: 'roleCreate' | 'roleDelete', listener: (role: Role) => void): this;
|
||||
public once(event: 'roleUpdate', listener: (oldRole: Role, newRole: Role) => void): this;
|
||||
public once(event: 'typingStart' | 'typingStop', listener: (channel: Channel, user: User) => void): this;
|
||||
public once(event: 'userUpdate', listener: (oldUser: User, newUser: User) => void): this;
|
||||
public once(event: 'typingStart' | 'typingStop', listener: (channel: Channel | PartialChannel, user: User | PartialUser) => void): this;
|
||||
public once(event: 'userUpdate', listener: (oldUser: User | PartialUser, newUser: User | PartialUser) => void): this;
|
||||
public once(event: 'voiceStateUpdate', listener: (oldState: VoiceState | undefined, newState: VoiceState) => void): this;
|
||||
public once(event: 'webhookUpdate', listener: (channel: TextChannel) => void): this;
|
||||
public once(event: 'invalidated', listener: () => void): this;
|
||||
@@ -476,7 +476,7 @@ declare module 'discord.js' {
|
||||
RESUMED: 'resumed';
|
||||
};
|
||||
PartialTypes: {
|
||||
[K in PartialType]: K;
|
||||
[K in PartialTypes]: K;
|
||||
};
|
||||
WSEvents: {
|
||||
[K in WSEventType]: K;
|
||||
@@ -645,7 +645,7 @@ declare module 'discord.js' {
|
||||
constructor(client: Client, data?: object);
|
||||
public messages: MessageStore;
|
||||
public recipient: User;
|
||||
public readonly partial: boolean;
|
||||
public readonly partial: false;
|
||||
}
|
||||
|
||||
export class Emoji extends Base {
|
||||
@@ -859,7 +859,7 @@ declare module 'discord.js' {
|
||||
public readonly kickable: boolean;
|
||||
public readonly manageable: boolean;
|
||||
public nickname: string | null;
|
||||
public readonly partial: boolean;
|
||||
public readonly partial: false;
|
||||
public readonly permissions: Readonly<Permissions>;
|
||||
public readonly premiumSince: Date | null;
|
||||
public premiumSinceTimestamp: number | null;
|
||||
@@ -945,7 +945,7 @@ declare module 'discord.js' {
|
||||
public activity: MessageActivity | null;
|
||||
public application: ClientApplication | null;
|
||||
public attachments: Collection<Snowflake, MessageAttachment>;
|
||||
public author: User | null;
|
||||
public author: User;
|
||||
public channel: TextChannel | DMChannel;
|
||||
public readonly cleanContent: string;
|
||||
public content: string;
|
||||
@@ -963,7 +963,7 @@ declare module 'discord.js' {
|
||||
public readonly member: GuildMember | null;
|
||||
public mentions: MessageMentions;
|
||||
public nonce: string | null;
|
||||
public readonly partial: boolean;
|
||||
public readonly partial: false;
|
||||
public readonly pinnable: boolean;
|
||||
public pinned: boolean;
|
||||
public reactions: ReactionStore;
|
||||
@@ -1396,7 +1396,7 @@ declare module 'discord.js' {
|
||||
public readonly dmChannel: DMChannel;
|
||||
public id: Snowflake;
|
||||
public locale: string;
|
||||
public readonly partial: boolean;
|
||||
public readonly partial: false;
|
||||
public readonly presence: Presence;
|
||||
public readonly tag: string;
|
||||
public username: string;
|
||||
@@ -2499,6 +2499,19 @@ declare module 'discord.js' {
|
||||
| 'GUILD_MEMBER'
|
||||
| 'MESSAGE';
|
||||
|
||||
type Partialize<T> = {
|
||||
id: string;
|
||||
partial: true;
|
||||
fetch(): Promise<T>;
|
||||
} & {
|
||||
[K in keyof Omit<T, 'id' | 'partial'>]: T[K] | null;
|
||||
};
|
||||
|
||||
interface PartialMessage extends Partialize<Message> {}
|
||||
interface PartialChannel extends Partialize<Channel> {}
|
||||
interface PartialGuildMember extends Partialize<GuildMember> {}
|
||||
interface PartialUser extends Partialize<User> {}
|
||||
|
||||
type PresenceStatus = ClientPresenceStatus | 'offline';
|
||||
|
||||
type PresenceStatusData = ClientPresenceStatus | 'invisible';
|
||||
@@ -2605,11 +2618,6 @@ declare module 'discord.js' {
|
||||
compress?: boolean;
|
||||
}
|
||||
|
||||
type PartialType = 'USER'
|
||||
| 'CHANNEL'
|
||||
| 'GUILD_MEMBER'
|
||||
| 'MESSAGE';
|
||||
|
||||
type WSEventType = 'READY'
|
||||
| 'RESUMED'
|
||||
| 'GUILD_CREATE'
|
||||
|
||||
Reference in New Issue
Block a user