Repository: discordjs/discord.js
File: packages/discord.js/src/managers/RoleManager.js (JavaScript)

Code before:

  /**
   * Resolves a {@link RoleResolvable} to a {@link Role} id.
   *
   * @method resolveId
   * @memberof RoleManager
   * @instance
   * @param {RoleResolvable} role The role resolvable to resolve
   * @returns {?Snowflake}
   */

  /**
   * @typedef {Object} RoleColors
   * @property {number} primaryColor The primary color of the role
   * @property {?number} secondaryColor The secondary color of the role.
   * This will make the role a gradient between the other provided colors
   * @property {?number} tertiaryColor The tertiary color of the role.
   * When sending `tertiaryColor` the API enforces the role color to be a holographic style with values of `primaryColor = 11127295`, `secondaryColor = 16759788`, and `tertiaryColor = 16761760`
   */

  /**
   * Options used to create a new role.
   *
   * @typedef {Object} RoleCreateOptions
   * @property {string} [name] The name of the new role
   * @property {RoleColors} [colors] The colors to create the role with
   * @property {boolean} [hoist] Whether or not the new role should be hoisted
   * @property {PermissionResolvable} [permissions] The permissions for the new role
   * @property {number} [position] The position of the new role
   * @property {boolean} [mentionable] Whether or not the new role should be mentionable
   * @property {?(BufferResolvable|Base64Resolvable|EmojiResolvable)} [icon] The icon for the role
   * <warn>The `EmojiResolvable` should belong to the same guild as the role.
   * If not, pass the emoji's URL directly</warn>
   * @property {?string} [unicodeEmoji] The unicode emoji for the role
   * @property {string} [reason] The reason for creating this role
   */

  /**
   * Creates a new role in the guild with given information.
   * <warn>The position will silently reset to 1 if an invalid one is provided, or none.</warn>
   *
   * @param {RoleCreateOptions} [options] Options for creating the new role
   * @returns {Promise<Role>}
   * @example
   * // Create a new role
   * guild.roles.create()
   *   .then(console.log)
   *   .catch(console.error);
   * @example
   * // Create a new role with data and a reason
   * guild.roles.create({

Review comment (suggestion):
```suggestion
   * @property {RoleColorsResolvable} [colors] The colors to create the role with
```

Code after:

  /**
   * Resolves a {@link RoleResolvable} to a {@link Role} id.
   *
   * @method resolveId
   * @memberof RoleManager
   * @instance
   * @param {RoleResolvable} role The role resolvable to resolve
   * @returns {?Snowflake}
   */

  /**
   * @typedef {Object} RoleColorsResolvable
   * @property {ColorResolvable} primaryColor The primary color of the role
   * @property {ColorResolvable} [secondaryColor] The secondary color of the role.
   * This will make the role a gradient between the other provided colors
   * @property {ColorResolvable} [tertiaryColor] The tertiary color of the role.
   * When sending `tertiaryColor` the API enforces the role color to be a holographic style with values of `primaryColor = 11127295`, `secondaryColor = 16759788`, and `tertiaryColor = 16761760`.
   * These values are available as a constant: `Constants.HolographicStyle`
   */

  /**
   * Options used to create a new role.
   *
   * @typedef {Object} RoleCreateOptions
   * @property {string} [name] The name of the new role
   * @property {RoleColorsResolvable} [colors] The colors to create the role with
   * @property {boolean} [hoist] Whether or not the new role should be hoisted
   * @property {PermissionResolvable} [permissions] The permissions for the new role
   * @property {number} [position] The position of the new role
   * @property {boolean} [mentionable] Whether or not the new role should be mentionable
   * @property {?(BufferResolvable|Base64Resolvable|EmojiResolvable)} [icon] The icon for the role
   * <warn>The `EmojiResolvable` should belong to the same guild as the role.
   * If not, pass the emoji's URL directly</warn>
   * @property {?string} [unicodeEmoji] The unicode emoji for the role
   * @property {string} [reason] The reason for creating this role
   */

  /**
   * Creates a new role in the guild with given information.
   * <warn>The position will silently reset to 1 if an invalid one is provided, or none.</warn>
   *
   * @param {RoleCreateOptions} [options] Options for creating the new role
   * @returns {Promise<Role>}
   * @example
   * // Create a new role
   * guild.roles.create()
   *   .then(console.log)
   *   .catch(console.error);
   * @example
   * // Create a new role with data and a reason