diff --git a/packages/discord.js/typings/index.d.ts b/packages/discord.js/typings/index.d.ts index ec3bdbfda..31721e263 100644 --- a/packages/discord.js/typings/index.d.ts +++ b/packages/discord.js/typings/index.d.ts @@ -3411,7 +3411,7 @@ export class ThreadMemberManager extends CachedManager; - public fetch(options?: ThreadMemberResolvable | FetchThreadMemberOptions): Promise; + public fetch(options: ThreadMemberResolvable | FetchThreadMemberOptions): Promise; public fetch(options?: FetchThreadMembersOptions): Promise>; public fetchMe(options?: BaseFetchOptions): Promise; public remove(id: Snowflake | '@me', reason?: string): Promise; diff --git a/packages/discord.js/typings/index.test-d.ts b/packages/discord.js/typings/index.test-d.ts index 3d1613e3b..b8757d548 100644 --- a/packages/discord.js/typings/index.test-d.ts +++ b/packages/discord.js/typings/index.test-d.ts @@ -126,6 +126,7 @@ import { MessageContextMenuCommandInteraction, UserContextMenuCommandInteraction, AnyThreadChannel, + ThreadMemberManager, } from '.'; import { expectAssignable, expectNotAssignable, expectNotType, expectType } from 'tsd'; import { UnsafeButtonBuilder, UnsafeEmbedBuilder, UnsafeSelectMenuBuilder } from '@discordjs/builders'; @@ -560,17 +561,6 @@ client.on('guildCreate', async g => { channel.send({ components: [row, row2] }); } - if (channel.isThread()) { - const fetchedMember = await channel.members.fetch('12345678'); - const fetchedMember2 = await channel.members.fetch({ member: '12345678', cache: false, force: true }); - expectType(fetchedMember); - expectType(fetchedMember2); - const fetchedMemberCol = await channel.members.fetch({ cache: true }); - expectType>(fetchedMemberCol); - // @ts-expect-error The `force` option cannot be used alongside fetching all thread members. - const fetchedMemberCol2 = await channel.members.fetch({ cache: true, force: false }); - } - channel.setName('foo').then(updatedChannel => { console.log(`New channel name: ${updatedChannel.name}`); }); @@ -1110,6 +1100,19 @@ declare const guildBanManager: GuildBanManager; guildBanManager.fetch({ user: '1234567890', after: '1234567890', cache: true, force: false }); } +declare const threadMemberManager: ThreadMemberManager; +{ + expectType>(threadMemberManager.fetch('12345678')); + expectType>(threadMemberManager.fetch({ member: '12345678', cache: false })); + expectType>(threadMemberManager.fetch({ member: '12345678', force: true })); + expectType>(threadMemberManager.fetch({ member: '12345678', cache: false, force: true })); + expectType>>(threadMemberManager.fetch()); + expectType>>(threadMemberManager.fetch({})); + expectType>>(threadMemberManager.fetch({ cache: true })); + // @ts-expect-error The `force` option cannot be used alongside fetching all thread members. + threadMemberManager.fetch({ cache: true, force: false }); +} + declare const typing: Typing; expectType(typing.user); if (typing.user.partial) expectType(typing.user.username);