CacheController
Public cache facade: limits, stats, sweeps, and cascade teardown entry points. Not a second source of truth — wraps managers / MessageCache.
Constructor
(client: Client, limits: ResolvedCacheLimits)| Param | Type | Description |
|---|---|---|
| client | Client | |
| limits | ResolvedCacheLimits |
Properties
: boolean (readonly)Whether a cascade teardown is currently in progress.
: ResolvedCacheLimits (readonly)Resolved limits applied at Client construction.
Methods
(channel: Channel, from: 'global' | 'guild' | 'both'): voidKeep dual channel indexes + message cache aligned when a channel leaves a cache. Uses `Map.prototype.delete` so ChannelManager/Guild channel `delete` overrides do not re-enter.
| Param | Type | Description |
|---|---|---|
| channel | Channel | Channel being removed |
| from | 'global' | 'guild' | 'both' | Which index initiated the removal (`global` = client.channels, `guild` = guild.channels) |
(guild: Guild): voidTear down nested caches when a guild leaves `client.guilds`. Removes channels from the global index, clears message caches, and empties guild collections. Does not mass-delete `client.users`.
| Param | Type | Description |
|---|---|---|
| guild | Guild |
(): CacheStatsCurrent sizes for each cache bucket.
(filter?: (channel: Channel, id: string) => boolean): numberSweep channels from the global index (cascades guild index + message cache). Returns count removed.
| Param | Type | Description |
|---|---|---|
| filter? | (channel: Channel, id: string) => boolean |
(filter?: (guild: Guild, id: string) => boolean): numberSweep guilds (cascades channels + message caches). Returns count removed.
| Param | Type | Description |
|---|---|---|
| filter? | (guild: Guild, id: string) => boolean |
(filter?: (member: GuildMember, guildId: string) => boolean): number| Param | Type | Description |
|---|---|---|
| filter? | (member: GuildMember, guildId: string) => boolean |
(filter?: (message: APIMessage, channelId: string) => boolean, channelId?: string): number| Param | Type | Description |
|---|---|---|
| filter? | (message: APIMessage, channelId: string) => boolean | |
| channelId? | string |