Preview environment

class GuildBanManager

export class GuildBanManager extends CachedManager<Snowflake, GuildBan, GuildBanResolvable>

Manages API methods for guild bans and stores their cache.

readonly
cache : Collection<Key, Holds>

The cache of items for this manager.

Inherited from: DataManager

readonly
client : Client

The client that instantiated this Manager

Inherited from: BaseManager

guild : Guild

The guild this Manager belongs to

readonly
holds : Constructable<Holds>

The data structure belonging to this manager.

Inherited from: DataManager

Bulk ban users from a guild, and optionally delete previous messages sent by them.

Examples:
// Bulk ban users by ids (or with user/guild member objects) and delete all their messages from the past 7 days
guild.bans.bulkCreate(['84484653687267328'], { deleteMessageSeconds: 7 * 24 * 60 * 60 })
  .then(result => {
    console.log(`Banned ${result.bannedUsers.length} users, failed to ban ${result.failedUsers.length} users.`)
  })
  .catch(console.error);

Returns: Returns an object with bannedUsers key containing the IDs of the banned users and the key failedUsers with the IDs that could not be banned or were already banned.

Bans a user from the guild.

Examples:
// Ban a user by id (or with a user/guild member object)
guild.bans.create('84484653687267328')
  .then(banInfo => console.log(`Banned ${banInfo.user?.tag ?? banInfo.tag ?? banInfo}`))
  .catch(console.error);

Returns: Result object will be resolved as specifically as possible. If the GuildMember cannot be resolved, the User will instead be attempted to be resolved. If that also cannot be resolved, the user id will be the result.

Fetches ban(s) from Discord.

Examples:
// Fetch multiple bans from a guild
guild.bans.fetch()
  .then(console.log)
  .catch(console.error);
// Fetch a maximum of 5 bans from a guild without caching
guild.bans.fetch({ limit: 5, cache: false })
  .then(console.log)
  .catch(console.error);
// Fetch a single ban
guild.bans.fetch('351871113346809860')
  .then(console.log)
  .catch(console.error);
// Fetch a single ban without checking cache
guild.bans.fetch({ user, force: true })
  .then(console.log)
  .catch(console.error)
// Fetch a single ban without caching
guild.bans.fetch({ user, cache: false })
  .then(console.log)
  .catch(console.error);

remove(
reason?: string
) : Promise<User | null>

Unbans a user from the guild.

Examples:
// Unban a user by id (or with a user/guild member object)
guild.bans.remove('84484653687267328')
  .then(user => console.log(`Unbanned ${user.username} from ${guild.name}`))
  .catch(console.error);

resolve() : GuildBan | null

Resolves a GuildBanResolvable to a GuildBan object.

resolveId(
idOrInstance: Key | Holds
) : Key

Resolves a data entry to an instance id.

valueOf() : Collection<Key, Holds>

Inherited from: DataManager