Type Definitions
# ActivityFeature
Properties:
Name | Type | Description |
---|---|---|
emoji |
String | the emoji as a string |
name |
String | |
description |
String | |
callback |
function |
# ActivityInfo
Properties:
Name | Type | Description |
---|---|---|
activityName |
string | the name of this activity! |
guild |
Guild | the guild where the new activity lives |
roleParticipants |
Collection.<String, Role> | roles allowed to view activity |
botGuild |
BotGuildModel |
# AttendanceInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | true if attendance is enabled in this guild |
attendeeRoleID |
String | the attendee role ID used for attendance |
# CaveOptions
Properties:
Name | Type | Description |
---|---|---|
name |
String | the name of the cave category |
preEmojis |
String | any pre name emojis |
preRoleText |
String | the text to add before every role name, not including '-' |
color |
String | the role color to use for this cave |
role |
Role | the role associated with this cave |
emojis |
Emojis | object holding emojis to use in this cave |
times |
Times | object holding times to use in this cave |
publicRoles |
Collection.<String, Role> | the roles that can request tickets |
# ChannelIDs
Properties:
Name | Type | Description |
---|---|---|
adminConsole |
String | the admin console channel ID |
adminLog |
String | the admin log channel ID |
botSupportChannel |
String | the bot support channel ID |
Object
# CommandPermissionInfo
Our custom command information for validation
Properties:
Name | Type | Description |
---|---|---|
role |
string | the role this command can be run by |
channel |
string | the channel ID where this command can be run |
roleMessage |
string | the message to be sent for an incorrect role |
channelMessage |
string | the message to be sent for an incorrect channel |
dmOnly |
Boolean | true if this command can only be used on a DM |
# ConsoleInfo
Properties:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
title |
String | the console title | ||
description |
String | the description of the console | ||
channel |
TextChannel | DMChannel | the channel this console lives in | ||
features |
Collection.<String, Feature> |
<optional> |
the collection of features mapped by emoji name | |
fields |
Collection.<String, String> |
<optional> |
a collection of fields | |
color |
String |
<optional> |
console color in hex | |
options |
ReactionCollectorOptions |
<optional> |
{} | collector options |
# Emojis
Properties:
Name | Type | Description |
---|---|---|
joinTicketEmoji |
GuildEmoji | ReactionEmoji | emoji for mentors to accept a ticket |
giveHelpEmoji |
GuildEmoji | ReactionEmoji | emoji for mentors to join an ongoing ticket |
requestTicketEmoji |
GuildEmoji | ReactionEmoji | emoji for hackers to request a ticket |
addRoleEmoji |
GuildEmoji | ReactionEmoji | emoji for Admins to add a mentor role |
deleteChannelsEmoji |
GuildEmoji | ReactionEmoji | emoji for Admins to force delete ticket channels |
excludeFromAutoDeleteEmoji |
GuildEmoji | ReactionEmoji | emoji for Admins to opt tickets in/out of garbage collector |
# async FeatureCallback(user, reaction, stopInteracting, console)
The function to be called when a feature is activated.
Parameters:
Name | Type | Description |
---|---|---|
user |
User | the user that reacted |
reaction |
MessageReaction | the reaction |
stopInteracting |
StopInteractingCallback | callback to let the console know the user has stopped interacting. |
console |
Console | the console this feature is working on |
# GarbageCollectorInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | if the garbage collector is enabled for this ticket system |
inactivePeriod |
Number | number of minutes a ticket channel will be inactive before bot starts to delete it |
bufferTime |
Number | number of minutes the bot will wait for a response before deleting ticket |
# MainHelperInfo
Properties:
Name | Type | Description |
---|---|---|
role |
Role | |
emoji |
GuildEmoji | ReactionEmoji | can be a unicode emoji string |
# NewTicketEmbedCreator(ticket) → {MessageEmbed}
Parameters:
Name | Type | Description |
---|---|---|
ticket |
Ticket |
MessageEmbed
# PollInfo
Properties:
Name | Type | Description |
---|---|---|
type |
String | |
title |
String | |
question |
String | |
emojiName |
String | must be unicode emoji! |
responses |
Collection.<String, String> |
# ReminderInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | is this feature enabled |
time |
Number | how long should I wait to remind helpers |
reminders |
Collection.<Number, NodeJS.Timeout> | the timeout reminders mapped by the ticket ID |
# ReportInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | true if the report functionality is enabled |
incomingReportChannelID |
String | channel where reports are sent |
# RoleIDs
Properties:
Name | Type | Description |
---|---|---|
memberRole |
String | regular guild member role ID |
staffRole |
String | the staff role ID |
adminRole |
String | the admin role ID |
everyoneRole |
String | the everyone role ID |
# RolePermission
An object with a role and its permissions
Properties:
Name | Type | Description |
---|---|---|
id |
String | the role snowflake |
permissions |
PermissionOverwriteOption | the permissions to set to that role |
# RolePermission
An object with a role and its permissions
Properties:
Name | Type | Description |
---|---|---|
id |
String | the role snowflake |
permissions |
PermissionOverwriteOption | the permissions to set to that role |
# RoomChannels
Properties:
Name | Type | Description |
---|---|---|
category |
CategoryChannel | |
generalText |
TextChannel | |
generalVoice |
VoiceChannel | |
nonLockedChannel |
TextChannel | |
voiceChannels |
Collection.<String, VoiceChannel> | |
textChannels |
Collection.<String, TextChannel> | |
safeChannels |
Collection.<String, (TextChannel|VoiceChannel)> |
# async ShuffleFilter(member, channel, userId, filteropt) → {Boolean}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
member |
GuildMember | ||
channel |
TextChannel | channel to prompt user for specified voice channel | |
userId |
String | user to prompt for specified voice channel | |
filter |
ShuffleFilter |
<optional> |
filter the users to shuffle |
- true if filtered
/**
Shuffle all the general voice members on all other voice channels
Boolean
# SignupEmbedCreator(teamEmoji, prospectEmoji, isNotificationEnabled) → {MessageEmbed}
Parameters:
Name | Type | Description |
---|---|---|
teamEmoji |
String | the emoji used by teams to sign up |
prospectEmoji |
String | the emoji used by prospects to sign up |
isNotificationEnabled |
Boolean | true if parties will be notified when the other party has a new post |
MessageEmbed
# StampInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | true if stamps are enabled |
stampRoleIDs |
Collection.<Number, String> | |
stampCollectionTime |
Number | time given to users to collect password stamps |
# StopInteractingCallback(user)
The function used to signal the console the user interacting has finished.
Parameters:
Name | Type | Description |
---|---|---|
user |
User |
# SubRole
Properties:
Name | Type | Description |
---|---|---|
name |
String | the role name |
id |
String | the role id (snowflake) |
activeUsers |
Number | number of users with this role |
# SystemWideTicketInfo
All the information needed for tickets in this ticket manager
Properties:
Name | Type | Description |
---|---|---|
garbageCollectorInfo |
GarbageCollectorInfo | the garbage collector information for each tickets |
isAdvancedMode |
Boolean | Information about the system being advanced. Advanced mode will create a category with channels for the users and the helpers. Regular will not create anything and expects the helper to DM the user or users. |
# TeamFormationChannels
Properties:
Name | Type | Description |
---|---|---|
info |
TextChannel | the info channel where users read about this activity |
teamCatalogue |
TextChannel | the channel where team info is posted |
prospectCatalogue |
TextChannel | the channel where prospect info is posted |
# TeamFormationInfo
Properties:
Name | Type | Attributes | Description |
---|---|---|---|
teamInfo |
TeamFormationPartyInfo | ||
prospectInfo |
TeamFormationPartyInfo | ||
guild |
Guild | ||
botGuild |
BotGuildModel | ||
activityRoles |
Collection.<string, Role> | ||
isNotificationsEnabled |
Boolean |
<optional> |
|
signupEmbedCreator |
SignupEmbedCreator |
<optional> |
# TeamFormationPartyInfo
Properties:
Name | Type | Attributes | Description |
---|---|---|---|
emoji |
GuildEmoji | ReactionEmoji | the emoji used to add this party to the team formation | |
role |
Role | the role given to the users of this party | |
form |
String |
<optional> |
the form added to the signup embed for users to respond to. Will not be added if signupEmbed given! |
signupEmbed |
MessageEmbed |
<optional> |
the embed sent to users when they sign up, must include the form! |
# TicketConsoles
Properties:
# TicketCreatorInfo
Properties:
Name | Type | Description |
---|---|---|
channel |
TextChannel | the channel where users can create a ticket |
console |
Console | the console used to let users create tickets |
# TicketDispatcherInfo
Properties:
Name | Type | Description |
---|---|---|
channel |
TextChannel | the channel where tickets are dispatched to |
takeTicketEmoji |
GuildEmoji | ReactionEmoji | emoji for mentors to accept/take a ticket, can be a unicode emoji string |
joinTicketEmoji |
GuildEmoji | ReactionEmoji | emoji for mentors to join a taken ticket, can be a unicode emoji string |
embedCreator |
NewTicketEmbedCreator | function to create a Discord MessageEmbed |
reminderInfo |
ReminderInfo | the reminder information |
mainHelperInfo |
MainHelperInfo |
# TicketGarbageInfo
Properties:
Name | Type | Description |
---|---|---|
noHelperInterval |
Number | Interval ID for when there are no more helpers in the ticket |
mentorDeletionSequence |
Boolean | Flag to check if a deletion sequence has already been triggered by all mentors leaving the ticket; if so, there will not be another sequence started for inactivity |
exclude |
Boolean | Flag for whether this ticket is excluded from automatic garbage collection |
# Times
Properties:
Name | Type | Description |
---|---|---|
inactivePeriod |
Number | number of minutes a ticket channel will be inactive before bot starts to delete it |
bufferTime |
Number | number of minutes the bot will wait for a response before deleting ticket |
reminderTime |
Number | number of minutes the bot will wait before reminding mentors of unaccepted tickets |
# Transfer
Properties:
Name | Type | Description |
---|---|---|
name |
String | the transfer name |
description |
String | the transfer description |
role |
Role | the transfer role |
# VerificationChannels
Properties:
Name | Type | Description |
---|---|---|
welcomeChannelID |
String | |
welcomeChannelSupportID |
String |
# VerificationInfo
Properties:
Name | Type | Description |
---|---|---|
isEnabled |
Boolean | true if verification is enabled |
isVerifiedRoleID |
String | the verified role ID that holds basic permissions |
isVerifiedRolePermissions |
Array.<String> | the permissions for the isVerified role |
guestRoleID |
String | the guest role ID used for verification |
welcomeChannelID |
String | the welcome channel where users learn to verify |
welcomeSupportChannelID |
String | the support channel where the bot can contact users |