fix(applicationcommandmanager): explicitly allow passing builders to methods (v13)
v13.9 #8229
This commit is contained in:
		@@ -55,6 +55,13 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
   * @typedef {ApplicationCommand|Snowflake} ApplicationCommandResolvable
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  /* eslint-disable max-len */
 | 
			
		||||
  /**
 | 
			
		||||
   * Data that resolves to the data of an ApplicationCommand
 | 
			
		||||
   * @typedef {ApplicationCommandDataResolvable|SlashCommandBuilder|ContextMenuCommandBuilder} ApplicationCommandDataResolvable
 | 
			
		||||
   */
 | 
			
		||||
  /* eslint-enable max-len */
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * Options used to fetch data from Discord
 | 
			
		||||
   * @typedef {Object} BaseFetchOptions
 | 
			
		||||
@@ -111,7 +118,7 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * Creates an application command.
 | 
			
		||||
   * @param {ApplicationCommandData|APIApplicationCommand} command The command
 | 
			
		||||
   * @param {ApplicationCommandDataResolvable} command The command
 | 
			
		||||
   * @param {Snowflake} [guildId] The guild's id to create this command in,
 | 
			
		||||
   * ignored when using a {@link GuildApplicationCommandManager}
 | 
			
		||||
   * @returns {Promise<ApplicationCommand>}
 | 
			
		||||
@@ -134,7 +141,7 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * Sets all the commands for this application or guild.
 | 
			
		||||
   * @param {ApplicationCommandData[]|APIApplicationCommand[]} commands The commands
 | 
			
		||||
   * @param {ApplicationCommandDataResolvable[]} commands The commands
 | 
			
		||||
   * @param {Snowflake} [guildId] The guild's id to create the commands in,
 | 
			
		||||
   * ignored when using a {@link GuildApplicationCommandManager}
 | 
			
		||||
   * @returns {Promise<Collection<Snowflake, ApplicationCommand>>}
 | 
			
		||||
@@ -165,7 +172,7 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
  /**
 | 
			
		||||
   * Edits an application command.
 | 
			
		||||
   * @param {ApplicationCommandResolvable} command The command to edit
 | 
			
		||||
   * @param {Partial<ApplicationCommandData|APIApplicationCommand>} data The data to update the command with
 | 
			
		||||
   * @param {Partial<ApplicationCommandDataResolvable>} data The data to update the command with
 | 
			
		||||
   * @param {Snowflake} [guildId] The guild's id where the command registered,
 | 
			
		||||
   * ignored when using a {@link GuildApplicationCommandManager}
 | 
			
		||||
   * @returns {Promise<ApplicationCommand>}
 | 
			
		||||
@@ -214,7 +221,7 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * Transforms an {@link ApplicationCommandData} object into something that can be used with the API.
 | 
			
		||||
   * @param {ApplicationCommandData|APIApplicationCommand} command The command to transform
 | 
			
		||||
   * @param {ApplicationCommandDataResolvable} command The command to transform
 | 
			
		||||
   * @returns {APIApplicationCommand}
 | 
			
		||||
   * @private
 | 
			
		||||
   */
 | 
			
		||||
@@ -247,3 +254,13 @@ class ApplicationCommandManager extends CachedManager {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports = ApplicationCommandManager;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @external SlashCommandBuilder
 | 
			
		||||
 * @see {@link https://discord.js.org/#/docs/builders/main/class/SlashCommandBuilder}
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @external ContextMenuCommandBuilder
 | 
			
		||||
 * @see {@link https://discord.js.org/#/docs/builders/main/class/ContextMenuCommandBuilder}
 | 
			
		||||
 */
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										15
									
								
								typings/index.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								typings/index.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -3,13 +3,16 @@ import {
 | 
			
		||||
  bold,
 | 
			
		||||
  channelMention,
 | 
			
		||||
  codeBlock,
 | 
			
		||||
  ContextMenuCommandBuilder,
 | 
			
		||||
  formatEmoji,
 | 
			
		||||
  hideLinkEmbed,
 | 
			
		||||
  hyperlink,
 | 
			
		||||
  inlineCode,
 | 
			
		||||
  italic,
 | 
			
		||||
  JSONEncodable,
 | 
			
		||||
  quote,
 | 
			
		||||
  roleMention,
 | 
			
		||||
  SlashCommandBuilder,
 | 
			
		||||
  spoiler,
 | 
			
		||||
  strikethrough,
 | 
			
		||||
  time,
 | 
			
		||||
@@ -3208,7 +3211,11 @@ export abstract class CachedManager<K, Holds, R> extends DataManager<K, Holds, R
 | 
			
		||||
  private _add(data: unknown, cache?: boolean, { id, extras }?: { id: K; extras: unknown[] }): Holds;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type ApplicationCommandDataResolvable = ApplicationCommandData | RESTPostAPIApplicationCommandsJSONBody;
 | 
			
		||||
export type ApplicationCommandDataResolvable =
 | 
			
		||||
  | ApplicationCommandData
 | 
			
		||||
  | RESTPostAPIApplicationCommandsJSONBody
 | 
			
		||||
  | SlashCommandBuilder
 | 
			
		||||
  | ContextMenuCommandBuilder;
 | 
			
		||||
 | 
			
		||||
export class ApplicationCommandManager<
 | 
			
		||||
  ApplicationCommandScope = ApplicationCommand<{ guild: GuildResolvable }>,
 | 
			
		||||
@@ -3251,9 +3258,7 @@ export class ApplicationCommandManager<
 | 
			
		||||
    commands: ApplicationCommandDataResolvable[],
 | 
			
		||||
    guildId: Snowflake,
 | 
			
		||||
  ): Promise<Collection<Snowflake, ApplicationCommand>>;
 | 
			
		||||
  private static transformCommand(
 | 
			
		||||
    command: ApplicationCommandData,
 | 
			
		||||
  ): Omit<APIApplicationCommand, 'id' | 'application_id' | 'guild_id'>;
 | 
			
		||||
  private static transformCommand(command: ApplicationCommandDataResolvable): RESTPostAPIApplicationCommandsJSONBody;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export class ApplicationCommandPermissionsManager<
 | 
			
		||||
@@ -3369,7 +3374,7 @@ export class GuildApplicationCommandManager extends ApplicationCommandManager<Ap
 | 
			
		||||
  public delete(command: ApplicationCommandResolvable): Promise<ApplicationCommand | null>;
 | 
			
		||||
  public edit(
 | 
			
		||||
    command: ApplicationCommandResolvable,
 | 
			
		||||
    data: ApplicationCommandDataResolvable,
 | 
			
		||||
    data: Partial<ApplicationCommandDataResolvable>,
 | 
			
		||||
  ): Promise<ApplicationCommand>;
 | 
			
		||||
  public fetch(id: Snowflake, options?: FetchGuildApplicationCommandFetchOptions): Promise<ApplicationCommand>;
 | 
			
		||||
  public fetch(options: FetchGuildApplicationCommandFetchOptions): Promise<Collection<Snowflake, ApplicationCommand>>;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user