CooldownManager

class

CooldownManager

source
export class CooldownManager<A extends BaseCooldownAdapter>
export class CooldownManager<A extends BaseCooldownAdapter>
constructor(client: Client, adapter: A, options?: CooldownManager.Options)
constructor(client: Client, adapter: A, options?: CooldownManager.Options)
ParamTypeRequired
client
client
Client
Client
Yes
adapter
adapter
A
A
Yes
options
options
CooldownManager.Options
CooldownManager.Options
No
public async source

.fetch(...)

fetch(id: string, options: { force: boolean; }): Promise<Cooldown.Data|null>
fetch(id: string, options: { force: boolean; }): Promise<Cooldown.Data|null>
ParamTypeRequired
id
id
string
string
Yes
options
options
{ force: boolean; }
{ force: boolean; }
Yes

Returns:

Promise<Cooldown.Data|null>
Promise<Cooldown.Data|null>

public async source

.fetchForUser(...)

fetchForUser(user: UserResolvable, options?: Partial<Pick<Cooldown.Data, "guildId"|"channelId"|"trigger">>): Promise<Cooldown[]>
fetchForUser(user: UserResolvable, options?: Partial<Pick<Cooldown.Data, "guildId"|"channelId"|"trigger">>): Promise<Cooldown[]>
ParamTypeRequired
user
user
UserResolvable
UserResolvable
Yes
options
options
Partial<Pick<Cooldown.Data, "guildId"|"channelId"|"trigger">>
Partial<Pick<Cooldown.Data, "guildId"|"channelId"|"trigger">>
No

Returns:

Promise<Cooldown[]>
Promise<Cooldown[]>

public async source

.fetchForChannel(...)

fetchForChannel(channel: ChannelResolvable, options?: Partial<Pick<Cooldown.Data, "guildId"|"userId"|"trigger">>): Promise<Cooldown[]>
fetchForChannel(channel: ChannelResolvable, options?: Partial<Pick<Cooldown.Data, "guildId"|"userId"|"trigger">>): Promise<Cooldown[]>
ParamTypeRequired
channel
channel
ChannelResolvable
ChannelResolvable
Yes
options
options
Partial<Pick<Cooldown.Data, "guildId"|"userId"|"trigger">>
Partial<Pick<Cooldown.Data, "guildId"|"userId"|"trigger">>
No

Returns:

Promise<Cooldown[]>
Promise<Cooldown[]>

public async source

.fetchForGuild(...)

fetchForGuild(guild: GuildResolvable, options?: Partial<Pick<Cooldown.Data, "userId"|"channelId"|"trigger">>): Promise<Cooldown[]>
fetchForGuild(guild: GuildResolvable, options?: Partial<Pick<Cooldown.Data, "userId"|"channelId"|"trigger">>): Promise<Cooldown[]>
ParamTypeRequired
guild
guild
GuildResolvable
GuildResolvable
Yes
options
options
Partial<Pick<Cooldown.Data, "userId"|"channelId"|"trigger">>
Partial<Pick<Cooldown.Data, "userId"|"channelId"|"trigger">>
No

Returns:

Promise<Cooldown[]>
Promise<Cooldown[]>

public async source

.create(...)

create(data: Omit<Cooldown.Data, "id">|JSONEncodable<Omit<Cooldown.Data, "id">>): Promise<Cooldown>
create(data: Omit<Cooldown.Data, "id">|JSONEncodable<Omit<Cooldown.Data, "id">>): Promise<Cooldown>
ParamTypeRequired
data
data
Omit<Cooldown.Data, "id">|JSONEncodable<Omit<Cooldown.Data, "id">>
Omit<Cooldown.Data, "id">|JSONEncodable<Omit<Cooldown.Data, "id">>
Yes

Returns:

Promise<Cooldown>
Promise<Cooldown>

createSweeper(interval?: number): NodeJS.Timeout
createSweeper(interval?: number): NodeJS.Timeout
ParamTypeRequired
interval
interval
number
number
No

Returns:

NodeJS.Timeout
NodeJS.Timeout

public async source

.sweep(...)

sweep(fetchAll: boolean = {}): Promise<Cooldown[]>
sweep(fetchAll: boolean = {}): Promise<Cooldown[]>
ParamTypeRequired
fetchAll = {}
fetchAll = {}
boolean
boolean
No

Returns:

Promise<Cooldown[]>
Promise<Cooldown[]>

private source

._parseArray(...)

_parseArray(data: Cooldown.Data[], cache: boolean = true): Cooldown[]
_parseArray(data: Cooldown.Data[], cache: boolean = true): Cooldown[]
ParamTypeRequired
data
data
Cooldown.Data[]
Cooldown.Data[]
Yes
cache = true
cache = true
boolean
boolean
No

Returns:

Cooldown[]
Cooldown[]

_updateCooldown(data: Cooldown, update: Partial<Cooldown.Data>): Cooldown
_updateCooldown(data: Cooldown, update: Partial<Cooldown.Data>): Cooldown
ParamTypeRequired
data
data
Cooldown
Cooldown
Yes
update
update
Partial<Cooldown.Data>
Partial<Cooldown.Data>
Yes

Returns:

Cooldown
Cooldown

public source

.holds

public source

.cache

Collection<string, Cooldown>
Collection<string, Cooldown>
NodeJS.Timeout
NodeJS.Timeout