mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 16:13:31 +01:00
types(ThreadMemberManager): Fix return type of fetching members with no arguments (#8060)
* types(ThreadMemberManager): non-optional first overload for fetching * test: organisation
This commit is contained in:
2
packages/discord.js/typings/index.d.ts
vendored
2
packages/discord.js/typings/index.d.ts
vendored
@@ -3411,7 +3411,7 @@ export class ThreadMemberManager extends CachedManager<Snowflake, ThreadMember,
|
||||
public thread: AnyThreadChannel;
|
||||
public get me(): ThreadMember | null;
|
||||
public add(member: UserResolvable | '@me', reason?: string): Promise<Snowflake>;
|
||||
public fetch(options?: ThreadMemberResolvable | FetchThreadMemberOptions): Promise<ThreadMember>;
|
||||
public fetch(options: ThreadMemberResolvable | FetchThreadMemberOptions): Promise<ThreadMember>;
|
||||
public fetch(options?: FetchThreadMembersOptions): Promise<Collection<Snowflake, ThreadMember>>;
|
||||
public fetchMe(options?: BaseFetchOptions): Promise<ThreadMember>;
|
||||
public remove(id: Snowflake | '@me', reason?: string): Promise<Snowflake>;
|
||||
|
||||
@@ -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<ThreadMember>(fetchedMember);
|
||||
expectType<ThreadMember>(fetchedMember2);
|
||||
const fetchedMemberCol = await channel.members.fetch({ cache: true });
|
||||
expectType<Collection<Snowflake, ThreadMember>>(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<Promise<ThreadMember>>(threadMemberManager.fetch('12345678'));
|
||||
expectType<Promise<ThreadMember>>(threadMemberManager.fetch({ member: '12345678', cache: false }));
|
||||
expectType<Promise<ThreadMember>>(threadMemberManager.fetch({ member: '12345678', force: true }));
|
||||
expectType<Promise<ThreadMember>>(threadMemberManager.fetch({ member: '12345678', cache: false, force: true }));
|
||||
expectType<Promise<Collection<Snowflake, ThreadMember>>>(threadMemberManager.fetch());
|
||||
expectType<Promise<Collection<Snowflake, ThreadMember>>>(threadMemberManager.fetch({}));
|
||||
expectType<Promise<Collection<Snowflake, ThreadMember>>>(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<User | PartialUser>(typing.user);
|
||||
if (typing.user.partial) expectType<null>(typing.user.username);
|
||||
|
||||
Reference in New Issue
Block a user