Class

ChannelManager

Channel cache + fetch/send helpers. Extends LimitedCollection (.get(), .set(), .filter(), …). FIFO-evicts (and keeps guild indexes / message caches aligned) at cache.channels.

Extends LimitedCollection

Constructor

new ChannelManager(client: Client)
client
Client

Methods

.delete(key)

key: stringboolean

Remove a channel from cache. Does not delete it on the API. Use channel.delete after fetch to delete the channel.

client.channels.delete(key);

.fetch(channelId, options?)

channelId: string, options?: { force?: boolean; }Promise<Channel>

Fetch a channel by ID. The returned Channel has channel.delete and channel.send (send throws if the type is not text-based). Returns the cached channel unless force is set.

const channel = await client.channels.fetch(channelId);
await channel.delete();
await channel.send('hi');

.fetchMessage(channelId, messageId)

channelId: string, messageId: stringPromise<Message>

Fetch a message by channel + message ID (no channel resolve required). Prefer channel.messages.fetch(messageId) when you already have a text channel.

await client.channels.fetchMessage(channelId, messageId);