diff --git a/packages/discord.js/typings/index.d.ts b/packages/discord.js/typings/index.d.ts index 8847caa38..4b058394a 100644 --- a/packages/discord.js/typings/index.d.ts +++ b/packages/discord.js/typings/index.d.ts @@ -4296,7 +4296,9 @@ export class ApplicationCommandPermissionsManager< }, ): Promise; public fetch(options: FetchSingleOptions): Promise; - public fetch(options: BaseOptions): Promise>; + public fetch( + ...args: {} extends BaseOptions ? [] | [BaseOptions] : [BaseOptions] + ): Promise>; public remove( options: | (FetchSingleOptions & { diff --git a/packages/discord.js/typings/index.test-d.ts b/packages/discord.js/typings/index.test-d.ts index 18007c00a..8882e5f29 100644 --- a/packages/discord.js/typings/index.test-d.ts +++ b/packages/discord.js/typings/index.test-d.ts @@ -220,6 +220,7 @@ import type { GuildInvite, AuthorizingIntegrationOwners, VoiceServerUpdateData, + ApplicationCommandPermissions, } from './index.js'; import { Client, @@ -1748,6 +1749,16 @@ declare const guildApplicationCommandManager: GuildApplicationCommandManager; expectType>(guildApplicationCommandManager.fetch('0')); expectType>(guildApplicationCommandManager.fetch({ id: '0' })); expectType>>(guildApplicationCommandManager.fetch()); +expectType>( + guildApplicationCommandManager.permissions.fetch({ command: '0' }), +); +expectType>>( + guildApplicationCommandManager.permissions.fetch({}), +); +// https://github.com/discordjs/discord.js/issues/8096 +expectType>>( + guildApplicationCommandManager.permissions.fetch(), +); declare const categoryChannelChildManager: CategoryChannelChildManager; {