(v4.2) Open Discord Framework Update (Part 2)
Replaced all "Default" classes & types with ID mappings & improved types. Updated Interactive Setup CLI & certain events, renamed ODStat's to ODStatistics. Moved many classes, types & interfaces to the framework
This commit is contained in:
@@ -0,0 +1,145 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET ACTION MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import * as discord from "discord.js"
|
||||
import { ODRoleOption, ODTicketOption } from "../api/option"
|
||||
import { ODTicket, ODTicketClearFilter } from "../api/ticket"
|
||||
import { ODTranscriptCompiler, ODTranscriptCompilerCompileResult } from "../api/transcript"
|
||||
import { ODRole, ODRoleUpdateMode, ODRoleUpdateResult } from "../api/role"
|
||||
import { ODPriorityLevel } from "../api/priority"
|
||||
|
||||
/**## ODActionManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODActionManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODActionManagerIdMappings extends api.ODActionManagerIdConstraint {
|
||||
"opendiscord:create-ticket-permissions":{
|
||||
source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,user:discord.User,option:ODTicketOption},
|
||||
result:{valid:boolean,reason:"blacklist"|"cooldown"|"global-limit"|"global-user-limit"|"option-limit"|"option-user-limit"|"custom"|null,cooldownUntil?:Date,customReason?:string},
|
||||
workers:"opendiscord:check-blacklist"|"opendiscord:check-cooldown"|"opendiscord:check-global-limits"|"opendiscord:check-option-limits"|"opendiscord:valid"
|
||||
},
|
||||
"opendiscord:create-transcript":{
|
||||
source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket},
|
||||
result:{compiler:ODTranscriptCompiler<any,object|null>, success:boolean, result:ODTranscriptCompilerCompileResult<any>, errorReason:string|null, pendingMessage:api.ODMessageBuildSentResult<true>|null, initData:object|null, participants:{user:discord.User,role:"creator"|"participant"|"admin"}[]},
|
||||
workers:"opendiscord:select-compiler"|"opendiscord:init-transcript"|"opendiscord:compile-transcript"|"opendiscord:ready-transcript"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:create-ticket":{
|
||||
source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,user:discord.User,option:ODTicketOption,answers:{id:string,name:string,type:"short"|"paragraph",value:string|null}[]},
|
||||
result:{channel:discord.GuildTextBasedChannel,ticket:ODTicket},
|
||||
workers:"opendiscord:create-ticket"|"opendiscord:send-ticket-message"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:close-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"reopen-message"|"autoclose"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,allowCategoryChange?:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:close-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:delete-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,withoutTranscript:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:delete-ticket"|"opendiscord:discord-logs"|"opendiscord:delete-channel"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:reopen-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"close-message"|"autoclose-message"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,allowCategoryChange?:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:reopen-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:claim-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"unclaim-message"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,allowCategoryChange?:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:claim-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:unclaim-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"claim-message"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,allowCategoryChange?:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:unclaim-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:pin-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"unpin-message"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:pin-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:unpin-ticket":{
|
||||
source:"slash"|"text"|"ticket-message"|"pin-message"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:unpin-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:rename-ticket":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,data:string},
|
||||
result:{},
|
||||
workers:"opendiscord:rename-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:move-ticket":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,data:ODTicketOption},
|
||||
result:{},
|
||||
workers:"opendiscord:move-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:add-ticket-user":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,data:discord.User},
|
||||
result:{},
|
||||
workers:"opendiscord:add-ticket-user"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:remove-ticket-user":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,sendMessage:boolean,data:discord.User},
|
||||
result:{},
|
||||
workers:"opendiscord:remove-ticket-user"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:reaction-role":{
|
||||
source:"panel-button"|"other",
|
||||
params:{guild:discord.Guild,user:discord.User,option:ODRoleOption,overwriteMode:ODRoleUpdateMode|null},
|
||||
result:{result:ODRoleUpdateResult[],role:ODRole},
|
||||
workers:"opendiscord:reaction-role"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:clear-tickets":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:ODTicket[]},
|
||||
result:{list:string[]},
|
||||
workers:"opendiscord:clear-tickets"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:update-ticket-topic":{
|
||||
source:"slash"|"text"|"ticket-action"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,newTopic:string|null,sendMessage:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:update-ticket-topic"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:update-ticket-priority":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,newPriority:ODPriorityLevel,reason:string|null,sendMessage:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:update-ticket-priority"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
"opendiscord:transfer-ticket":{
|
||||
source:"slash"|"text"|"other",
|
||||
params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,newCreator:discord.User,reason:string|null,sendMessage:boolean},
|
||||
result:{},
|
||||
workers:"opendiscord:transfer-ticket"|"opendiscord:discord-logs"|"opendiscord:logs"
|
||||
},
|
||||
}
|
||||
|
||||
type ODNoGeneric<T extends Record<string|number|symbol,any>> = {
|
||||
[K in keyof T as string extends K ? never : number extends K ? never : symbol extends K ? never : K]: T[K]
|
||||
}
|
||||
export type ODActionManagerMappingsModifier<T extends api.ODActionManagerIdConstraint = ODActionManagerIdMappings> = {
|
||||
[K in keyof T]: api.ODAction<T[K]["source"],T[K]["params"],T[K]["result"],T[K]["workers"]>
|
||||
}
|
||||
|
||||
type test = ODActionManagerMappingsModifier
|
||||
|
||||
/**## ODMappedActionManager `class
|
||||
* A special class with types for the Open Ticket `ODActionManager` class.
|
||||
*/
|
||||
export class ODMappedActionManager extends api.ODActionManager<ODActionManagerIdMappings> {}
|
||||
@@ -0,0 +1,21 @@
|
||||
///////////////////////////////////////
|
||||
//BASE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODVersionManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODVersionManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODVersionManagerIdMappings extends api.ODVersionManagerIdConstraint {
|
||||
"opendiscord:version":api.ODVersion,
|
||||
"opendiscord:last-version":api.ODVersion,
|
||||
"opendiscord:api":api.ODVersion,
|
||||
"opendiscord:transcripts":api.ODVersion,
|
||||
"opendiscord:livestatus":api.ODVersion
|
||||
}
|
||||
|
||||
/**## ODMappedVersionManager `class
|
||||
* A special class with types for the Open Ticket `ODVersionManager` class.
|
||||
*/
|
||||
export class ODMappedVersionManager extends api.ODVersionManager<ODVersionManagerIdMappings> {}
|
||||
@@ -0,0 +1,289 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET BUILDER MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import { ODPermissionEmbedType } from "./permission"
|
||||
import { ODTranscriptCompiler, ODTranscriptCompilerCompileResult } from "../api/transcript"
|
||||
import { ODRoleOption, ODTicketOption, ODWebsiteOption } from "../api/option"
|
||||
import { ODTicket, ODTicketClearFilter } from "../api/ticket"
|
||||
import { ODRole, ODRoleUpdateResult } from "../api/role"
|
||||
import { ODPriorityLevel } from "../api/priority"
|
||||
import { ODPanel } from "../api/panel"
|
||||
import * as discord from "discord.js"
|
||||
|
||||
/**## ODButtonManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODButtonManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODButtonManagerIdMappings extends api.ODButtonManagerIdConstraint {
|
||||
"opendiscord:verifybar-success":{source:"verifybar"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,customData?:string,customColor?:api.ODValidButtonColor,customLabel?:string,customEmoji?:string},workers:"opendiscord:verifybar-success"},
|
||||
"opendiscord:verifybar-failure":{source:"verifybar"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,customData?:string,customColor?:api.ODValidButtonColor,customLabel?:string,customEmoji?:string},workers:"opendiscord:verifybar-failure"},
|
||||
|
||||
"opendiscord:error-ticket-deprecated-transcript":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{},workers:"opendiscord:error-ticket-deprecated-transcript"},
|
||||
|
||||
"opendiscord:help-menu-previous":{source:"text"|"slash"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu-previous"},
|
||||
"opendiscord:help-menu-next":{source:"text"|"slash"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu-next"},
|
||||
"opendiscord:help-menu-page":{source:"text"|"slash"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu-page"}
|
||||
"opendiscord:help-menu-switch":{source:"text"|"slash"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu-switch"},
|
||||
|
||||
"opendiscord:ticket-option":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel,option:ODTicketOption},workers:"opendiscord:ticket-option"},
|
||||
"opendiscord:website-option":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel,option:ODWebsiteOption},workers:"opendiscord:website-option"},
|
||||
"opendiscord:role-option":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel,option:ODRoleOption},workers:"opendiscord:role-option"}
|
||||
|
||||
"opendiscord:visit-ticket":{source:"ticket-created"|"dm"|"logs"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:visit-ticket"},
|
||||
|
||||
"opendiscord:close-ticket":{source:"ticket-message"|"reopen-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:close-ticket"},
|
||||
"opendiscord:delete-ticket":{source:"ticket-message"|"close-message"|"autoclose-message"|"reopen-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:delete-ticket"},
|
||||
"opendiscord:reopen-ticket":{source:"ticket-message"|"close-message"|"autoclose-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:reopen-ticket"},
|
||||
"opendiscord:claim-ticket":{source:"ticket-message"|"unclaim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:claim-ticket"},
|
||||
"opendiscord:unclaim-ticket":{source:"ticket-message"|"claim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:unclaim-ticket"},
|
||||
"opendiscord:pin-ticket":{source:"ticket-message"|"unpin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:pin-ticket"},
|
||||
"opendiscord:unpin-ticket":{source:"ticket-message"|"pin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:unpin-ticket"},
|
||||
|
||||
"opendiscord:transcript-html-visit":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,result:ODTranscriptCompilerCompileResult<{url:string,availableUntil:Date}>},workers:"opendiscord:transcript-html-visit"},
|
||||
"opendiscord:transcript-error-retry":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<any,object|null>,reason:string|null},workers:"opendiscord:transcript-error-retry"},
|
||||
"opendiscord:transcript-error-continue":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<any,object|null>,reason:string|null},workers:"opendiscord:transcript-error-continue"},
|
||||
|
||||
"opendiscord:clear-continue":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-continue"},
|
||||
}
|
||||
|
||||
/**## ODDropdownManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODDropdownManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODDropdownManagerIdMappings extends api.ODDropdownManagerIdConstraint {
|
||||
"opendiscord:panel-dropdown-tickets":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel,options:ODTicketOption[]},workers:"opendiscord:panel-dropdown-tickets"}
|
||||
}
|
||||
|
||||
/**## ODFileManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODFileManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODFileManagerIdMappings extends api.ODFileManagerIdConstraint {
|
||||
"opendiscord:text-transcript":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<any,object|null>,result:ODTranscriptCompilerCompileResult<any>},workers:"opendiscord:text-transcript"}
|
||||
}
|
||||
|
||||
/**## ODEmbedManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODEmbedManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODEmbedManagerIdMappings extends api.ODEmbedManagerIdConstraint {
|
||||
"opendiscord:error":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:string,layout:"simple"|"advanced",customTitle?:string},workers:"opendiscord:error"},
|
||||
"opendiscord:error-option-missing":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorMissingOption},workers:"opendiscord:error-option-missing"},
|
||||
"opendiscord:error-option-invalid":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorInvalidOption},workers:"opendiscord:error-option-invalid"},
|
||||
"opendiscord:error-unknown-command":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorUnknownCommand},workers:"opendiscord:error-unknown-command"},
|
||||
"opendiscord:error-no-permissions":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,permissions:ODPermissionEmbedType[]},workers:"opendiscord:error-no-permissions"},
|
||||
"opendiscord:error-no-permissions-cooldown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,until?:Date},workers:"opendiscord:error-no-permissions-cooldown"},
|
||||
"opendiscord:error-no-permissions-blacklisted":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-no-permissions-blacklisted"},
|
||||
"opendiscord:error-no-permissions-limits":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,limit:"global"|"global-user"|"option"|"option-user"},workers:"opendiscord:error-no-permissions-limits"},
|
||||
"opendiscord:error-responder-timeout":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-responder-timeout"},
|
||||
"opendiscord:error-ticket-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-unknown"},
|
||||
"opendiscord:error-ticket-deprecated":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-deprecated"},
|
||||
"opendiscord:error-option-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-option-unknown"},
|
||||
"opendiscord:error-panel-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-panel-unknown"},
|
||||
"opendiscord:error-not-in-guild":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-not-in-guild"},
|
||||
"opendiscord:error-channel-rename":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"ticket-pin"|"ticket-unpin"|"ticket-rename"|"ticket-move"|"ticket-priority"|"ticket-transfer"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,originalName:string,newName:string},workers:"opendiscord:error-channel-rename"},
|
||||
"opendiscord:error-ticket-busy":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-busy"},
|
||||
|
||||
"opendiscord:help-menu":{source:"text"|"slash"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu"},
|
||||
|
||||
"opendiscord:stats-global":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:stats-global"},
|
||||
"opendiscord:stats-ticket":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,scopeData:ODTicket},workers:"opendiscord:stats-ticket"},
|
||||
"opendiscord:stats-user":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,scopeData:discord.User},workers:"opendiscord:stats-user"|"opendiscord:easter-egg"},
|
||||
"opendiscord:stats-reset":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,reason:string|null},workers:"opendiscord:stats-reset"},
|
||||
"opendiscord:stats-ticket-unknown":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,id:string},workers:"opendiscord:stats-ticket-unknown"},
|
||||
|
||||
"opendiscord:panel":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel},workers:"opendiscord:panel"},
|
||||
"opendiscord:ticket-created":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created"},
|
||||
"opendiscord:ticket-created-dm":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created-dm"},
|
||||
"opendiscord:ticket-created-logs":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created-logs"},
|
||||
"opendiscord:ticket-message":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-message"},
|
||||
"opendiscord:close-message":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"autoclose"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:close-message"},
|
||||
"opendiscord:reopen-message":{source:"slash"|"text"|"ticket-message"|"close-message"|"autoclose-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:reopen-message"},
|
||||
"opendiscord:delete-message":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:delete-message"},
|
||||
"opendiscord:claim-message":{source:"slash"|"text"|"ticket-message"|"unclaim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:claim-message"},
|
||||
"opendiscord:unclaim-message":{source:"slash"|"text"|"ticket-message"|"claim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:unclaim-message"},
|
||||
"opendiscord:pin-message":{source:"slash"|"text"|"ticket-message"|"unpin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:pin-message"},
|
||||
"opendiscord:unpin-message":{source:"slash"|"text"|"ticket-message"|"pin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:unpin-message"},
|
||||
"opendiscord:rename-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:string},workers:"opendiscord:rename-message"},
|
||||
"opendiscord:move-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:ODTicketOption},workers:"opendiscord:move-message"},
|
||||
"opendiscord:add-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:discord.User},workers:"opendiscord:add-message"},
|
||||
"opendiscord:remove-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:discord.User},workers:"opendiscord:remove-message"},
|
||||
"opendiscord:ticket-action-dm":{source:"slash"|"text"|"ticket-message"|"close-message"|"reopen-message"|"delete-message"|"claim-message"|"unclaim-message"|"pin-message"|"unpin-message"|"autoclose-message"|"autoclose"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"close"|"reopen"|"delete"|"claim"|"unclaim"|"pin"|"unpin"|"rename"|"move"|"add"|"remove",ticket:ODTicket,reason:string|null,additionalData:null|string|discord.User|ODTicketOption},workers:"opendiscord:ticket-action-dm"},
|
||||
"opendiscord:ticket-action-logs":{source:"slash"|"text"|"ticket-message"|"close-message"|"reopen-message"|"delete-message"|"claim-message"|"unclaim-message"|"pin-message"|"unpin-message"|"autoclose-message"|"autoclose"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"close"|"reopen"|"delete"|"claim"|"unclaim"|"pin"|"unpin"|"rename"|"move"|"add"|"remove",ticket:ODTicket,reason:string|null,additionalData:null|string|discord.User|ODTicketOption},workers:"opendiscord:ticket-action-logs"},
|
||||
|
||||
"opendiscord:blacklist-view":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:blacklist-view"},
|
||||
"opendiscord:blacklist-get":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User},workers:"opendiscord:blacklist-get"},
|
||||
"opendiscord:blacklist-add":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User,reason:string|null},workers:"opendiscord:blacklist-add"},
|
||||
"opendiscord:blacklist-remove":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User,reason:string|null},workers:"opendiscord:blacklist-remove"}
|
||||
"opendiscord:blacklist-dm":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"add"|"remove",data:discord.User,reason:string|null},workers:"opendiscord:blacklist-dm"},
|
||||
"opendiscord:blacklist-logs":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"add"|"remove",data:discord.User,reason:string|null},workers:"opendiscord:blacklist-logs"},
|
||||
|
||||
"opendiscord:transcript-text-ready":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{contents:string},null>,result:ODTranscriptCompilerCompileResult<{contents:string}>},workers:"opendiscord:transcript-text-ready"},
|
||||
"opendiscord:transcript-html-ready":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,result:ODTranscriptCompilerCompileResult<{url:string,availableUntil:Date}>},workers:"opendiscord:transcript-html-ready"},
|
||||
"opendiscord:transcript-html-progress":{source:"channel"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,remaining:number},workers:"opendiscord:transcript-html-progress"},
|
||||
"opendiscord:transcript-error":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<any,object|null>,reason:string|null},workers:"opendiscord:transcript-error"},
|
||||
|
||||
"opendiscord:reaction-role":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role"},
|
||||
"opendiscord:reaction-role-dm":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role-dm"},
|
||||
"opendiscord:reaction-role-logs":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role-logs"},
|
||||
|
||||
"opendiscord:clear-verify-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-verify-message"},
|
||||
"opendiscord:clear-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-message"},
|
||||
"opendiscord:clear-logs":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-logs"},
|
||||
|
||||
"opendiscord:autoclose-message":{source:"timeout"|"leave"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:autoclose-message"},
|
||||
"opendiscord:autodelete-message":{source:"timeout"|"leave"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:autodelete-message"},
|
||||
"opendiscord:autoclose-enable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,time:number,reason:string|null},workers:"opendiscord:autoclose-enable"},
|
||||
"opendiscord:autodelete-enable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,time:number,reason:string|null},workers:"opendiscord:autodelete-enable"},
|
||||
"opendiscord:autoclose-disable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:autoclose-disable"},
|
||||
"opendiscord:autodelete-disable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:autodelete-disable"},
|
||||
|
||||
"opendiscord:topic-set":{source:"slash"|"text"|"ticket-action"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,topic:string},workers:"opendiscord:topic-set"},
|
||||
"opendiscord:priority-set":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,priority:ODPriorityLevel,reason:string|null},workers:"opendiscord:priority-set"},
|
||||
"opendiscord:priority-get":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,priority:ODPriorityLevel},workers:"opendiscord:priority-get"},
|
||||
"opendiscord:transfer-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,oldCreator:discord.User,newCreator:discord.User,reason:string|null},workers:"opendiscord:transfer-message"},
|
||||
}
|
||||
|
||||
/**## ODMessageManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODMessageManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODMessageManagerIdMappings extends api.ODMessageManagerIdConstraint {
|
||||
"opendiscord:verifybar-ticket-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-ticket-message"},
|
||||
"opendiscord:verifybar-close-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-close-message"},
|
||||
"opendiscord:verifybar-reopen-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-reopen-message"},
|
||||
"opendiscord:verifybar-claim-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-claim-message"},
|
||||
"opendiscord:verifybar-unclaim-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-unclaim-message"},
|
||||
"opendiscord:verifybar-pin-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-pin-message"},
|
||||
"opendiscord:verifybar-unpin-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-unpin-message"}
|
||||
"opendiscord:verifybar-autoclose-message":{source:"verifybar",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,verifybar:api.ODVerifyBar,originalMessage:discord.Message<boolean>},workers:"opendiscord:verifybar-autoclose-message"}
|
||||
|
||||
"opendiscord:error":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:string,layout:"simple"|"advanced",customTitle?:string},workers:"opendiscord:error"},
|
||||
"opendiscord:error-option-missing":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorMissingOption},workers:"opendiscord:error-option-missing"},
|
||||
"opendiscord:error-option-invalid":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorInvalidOption},workers:"opendiscord:error-option-invalid"},
|
||||
"opendiscord:error-unknown-command":{source:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,error:api.ODTextCommandErrorUnknownCommand},workers:"opendiscord:error-unknown-command"},
|
||||
"opendiscord:error-no-permissions":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,permissions:ODPermissionEmbedType[]},workers:"opendiscord:error-no-permissions"},
|
||||
"opendiscord:error-no-permissions-cooldown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,until?:Date},workers:"opendiscord:error-no-permissions-cooldown"},
|
||||
"opendiscord:error-no-permissions-blacklisted":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-no-permissions-blacklisted"},
|
||||
"opendiscord:error-no-permissions-limits":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,limit:"global"|"global-user"|"option"|"option-user"},workers:"opendiscord:error-no-permissions-limits"},
|
||||
"opendiscord:error-responder-timeout":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-responder-timeout"},
|
||||
"opendiscord:error-ticket-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-unknown"},
|
||||
"opendiscord:error-ticket-deprecated":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-deprecated"},
|
||||
"opendiscord:error-option-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-option-unknown"},
|
||||
"opendiscord:error-panel-unknown":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-panel-unknown"},
|
||||
"opendiscord:error-not-in-guild":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-not-in-guild"},
|
||||
"opendiscord:error-channel-rename":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"ticket-pin"|"ticket-unpin"|"ticket-rename"|"ticket-move"|"ticket-priority"|"ticket-transfer"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User,originalName:string,newName:string},workers:"opendiscord:error-channel-rename"},
|
||||
"opendiscord:error-ticket-busy":{source:"slash"|"text"|"button"|"dropdown"|"modal"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:error-ticket-busy"},
|
||||
|
||||
"opendiscord:help-menu":{source:"slash"|"text"|"button"|"other",params:{mode:"slash"|"text",page:number},workers:"opendiscord:help-menu"},
|
||||
|
||||
"opendiscord:stats-global":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:stats-global"},
|
||||
"opendiscord:stats-ticket":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,scopeData:ODTicket},workers:"opendiscord:stats-ticket"},
|
||||
"opendiscord:stats-user":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,scopeData:discord.User},workers:"opendiscord:stats-user"|"opendiscord:easter-egg"},
|
||||
"opendiscord:stats-reset":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,reason:string|null},workers:"opendiscord:stats-reset"},
|
||||
"opendiscord:stats-ticket-unknown":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,id:string},workers:"opendiscord:stats-ticket-unknown"},
|
||||
|
||||
"opendiscord:panel":{source:"slash"|"text"|"auto-update"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel},workers:"opendiscord:panel-layout"|"opendiscord:panel-components"},
|
||||
"opendiscord:panel-ready":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,panel:ODPanel},workers:"opendiscord:panel-ready"},
|
||||
|
||||
"opendiscord:ticket-created":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created"},
|
||||
"opendiscord:ticket-created-dm":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created-dm"},
|
||||
"opendiscord:ticket-created-logs":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-created-logs"},
|
||||
"opendiscord:ticket-message":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:ticket-message-layout"|"opendiscord:ticket-message-components"|"opendiscord:ticket-message-disable-components"},
|
||||
"opendiscord:close-message":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"autoclose"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:close-message"},
|
||||
"opendiscord:reopen-message":{source:"slash"|"text"|"ticket-message"|"close-message"|"autoclose-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:reopen-message"},
|
||||
"opendiscord:delete-message":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:delete-message"},
|
||||
"opendiscord:claim-message":{source:"slash"|"text"|"ticket-message"|"unclaim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:claim-message"},
|
||||
"opendiscord:unclaim-message":{source:"slash"|"text"|"ticket-message"|"claim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:unclaim-message"},
|
||||
"opendiscord:pin-message":{source:"slash"|"text"|"ticket-message"|"unpin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:pin-message"},
|
||||
"opendiscord:unpin-message":{source:"slash"|"text"|"ticket-message"|"pin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:unpin-message"},
|
||||
"opendiscord:rename-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:string},workers:"opendiscord:rename-message"},
|
||||
"opendiscord:move-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:ODTicketOption},workers:"opendiscord:move-message"},
|
||||
"opendiscord:add-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:discord.User},workers:"opendiscord:add-message"},
|
||||
"opendiscord:remove-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null,data:discord.User},workers:"opendiscord:remove-message"},
|
||||
"opendiscord:ticket-action-dm":{source:"slash"|"text"|"ticket-message"|"close-message"|"reopen-message"|"delete-message"|"claim-message"|"unclaim-message"|"pin-message"|"unpin-message"|"autoclose-message"|"autoclose"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"close"|"reopen"|"delete"|"claim"|"unclaim"|"pin"|"unpin"|"rename"|"move"|"add"|"remove",ticket:ODTicket,reason:string|null,additionalData:null|string|discord.User|ODTicketOption},workers:"opendiscord:ticket-action-dm"},
|
||||
"opendiscord:ticket-action-logs":{source:"slash"|"text"|"ticket-message"|"close-message"|"reopen-message"|"delete-message"|"claim-message"|"unclaim-message"|"pin-message"|"unpin-message"|"autoclose-message"|"autoclose"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"close"|"reopen"|"delete"|"claim"|"unclaim"|"pin"|"unpin"|"rename"|"move"|"add"|"remove",ticket:ODTicket,reason:string|null,additionalData:null|string|discord.User|ODTicketOption},workers:"opendiscord:ticket-action-logs"},
|
||||
|
||||
"opendiscord:blacklist-view":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:blacklist-view"},
|
||||
"opendiscord:blacklist-get":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User},workers:"opendiscord:blacklist-get"},
|
||||
"opendiscord:blacklist-add":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User,reason:string|null},workers:"opendiscord:blacklist-add"},
|
||||
"opendiscord:blacklist-remove":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,data:discord.User,reason:string|null},workers:"opendiscord:blacklist-remove"},
|
||||
"opendiscord:blacklist-dm":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"add"|"remove",data:discord.User,reason:string|null},workers:"opendiscord:blacklist-dm"},
|
||||
"opendiscord:blacklist-logs":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,mode:"add"|"remove",data:discord.User,reason:string|null},workers:"opendiscord:blacklist-logs"},
|
||||
|
||||
"opendiscord:transcript-text-ready":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{contents:string},null>,result:ODTranscriptCompilerCompileResult<{contents:string}>},workers:"opendiscord:transcript-text-ready"},
|
||||
"opendiscord:transcript-html-ready":{source:"channel"|"creator-dm"|"participant-dm"|"active-admin-dm"|"every-admin-dm"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,result:ODTranscriptCompilerCompileResult<{url:string,availableUntil:Date}>},workers:"opendiscord:transcript-html-ready"},
|
||||
"opendiscord:transcript-html-progress":{source:"channel"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,remaining:number},workers:"opendiscord:transcript-html-progress"},
|
||||
"opendiscord:transcript-error":{source:"slash"|"text"|"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"autodelete"|"clear"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,compiler:ODTranscriptCompiler<any,object|null>,reason:string|null},workers:"opendiscord:transcript-error"},
|
||||
|
||||
"opendiscord:reaction-role":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role"},
|
||||
"opendiscord:reaction-role-dm":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role-dm"},
|
||||
"opendiscord:reaction-role-logs":{source:"panel-button"|"other",params:{guild:discord.Guild,user:discord.User,role:ODRole,result:ODRoleUpdateResult[]},workers:"opendiscord:reaction-role-logs"},
|
||||
|
||||
"opendiscord:clear-verify-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-verify-message"},
|
||||
"opendiscord:clear-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-message"},
|
||||
"opendiscord:clear-logs":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,filter:ODTicketClearFilter,list:string[]},workers:"opendiscord:clear-logs"},
|
||||
|
||||
"opendiscord:autoclose-message":{source:"timeout"|"leave"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:autoclose-message"},
|
||||
"opendiscord:autodelete-message":{source:"timeout"|"leave"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:autodelete-message"},
|
||||
"opendiscord:autoclose-enable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,time:number,reason:string|null},workers:"opendiscord:autoclose-enable"},
|
||||
"opendiscord:autodelete-enable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,time:number,reason:string|null},workers:"opendiscord:autodelete-enable"},
|
||||
"opendiscord:autoclose-disable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:autoclose-disable"},
|
||||
"opendiscord:autodelete-disable":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,reason:string|null},workers:"opendiscord:autodelete-disable"},
|
||||
|
||||
"opendiscord:topic-set":{source:"slash"|"text"|"ticket-action"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,topic:string},workers:"opendiscord:topic-set"},
|
||||
"opendiscord:priority-set":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,priority:ODPriorityLevel,reason:string|null},workers:"opendiscord:priority-set"},
|
||||
"opendiscord:priority-get":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,priority:ODPriorityLevel},workers:"opendiscord:priority-get"},
|
||||
"opendiscord:transfer-message":{source:"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.GuildTextBasedChannel,user:discord.User,ticket:ODTicket,oldCreator:discord.User,newCreator:discord.User,reason:string|null},workers:"opendiscord:transfer-message"},
|
||||
}
|
||||
|
||||
/**## ODModalManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODModalManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODModalManagerIdMappings extends api.ODModalManagerIdConstraint {
|
||||
"opendiscord:ticket-questions":{source:"panel-button"|"panel-dropdown"|"slash"|"text"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,option:ODTicketOption},workers:"opendiscord:ticket-questions"}
|
||||
"opendiscord:close-ticket-reason":{source:"ticket-message"|"reopen-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:close-ticket-reason"}
|
||||
"opendiscord:reopen-ticket-reason":{source:"ticket-message"|"close-message"|"autoclose-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:reopen-ticket-reason"}
|
||||
"opendiscord:delete-ticket-reason":{source:"ticket-message"|"reopen-message"|"close-message"|"autoclose-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:delete-ticket-reason"}
|
||||
"opendiscord:claim-ticket-reason":{source:"ticket-message"|"unclaim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:claim-ticket-reason"}
|
||||
"opendiscord:unclaim-ticket-reason":{source:"ticket-message"|"claim-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:unclaim-ticket-reason"}
|
||||
"opendiscord:pin-ticket-reason":{source:"ticket-message"|"unpin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:pin-ticket-reason"}
|
||||
"opendiscord:unpin-ticket-reason":{source:"ticket-message"|"pin-message"|"other",params:{guild:discord.Guild,channel:discord.TextBasedChannel,user:discord.User,ticket:ODTicket},workers:"opendiscord:unpin-ticket-reason"}
|
||||
}
|
||||
|
||||
/**## ODMappedButtonManager `class
|
||||
* A special class with types for the Open Ticket `ODButtonManager` class.
|
||||
*/
|
||||
export class ODMappedButtonManager extends api.ODButtonManager<ODButtonManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedDropdownManager `class
|
||||
* A special class with types for the Open Ticket `ODDropdownManager` class.
|
||||
*/
|
||||
export class ODMappedDropdownManager extends api.ODDropdownManager<ODDropdownManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedFileManager `class
|
||||
* A special class with types for the Open Ticket `ODFileManager` class.
|
||||
*/
|
||||
export class ODMappedFileManager extends api.ODFileManager<ODFileManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedEmbedManager `class
|
||||
* A special class with types for the Open Ticket `ODEmbedManager` class.
|
||||
*/
|
||||
export class ODMappedEmbedManager extends api.ODEmbedManager<ODEmbedManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedMessageManager `class
|
||||
* A special class with types for the Open Ticket `ODMessageManager` class.
|
||||
*/
|
||||
export class ODMappedMessageManager extends api.ODMessageManager<ODMessageManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedModalManager `class
|
||||
* A special class with types for the Open Ticket `ODModalManager` class.
|
||||
*/
|
||||
export class ODMappedModalManager extends api.ODModalManager<ODModalManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedBuilderManager `class
|
||||
* A special class with types for the Open Ticket `ODBuilderManager` class.
|
||||
*/
|
||||
export class ODMappedBuilderManager extends api.ODBuilderManager<ODButtonManagerIdMappings,ODDropdownManagerIdMappings,ODFileManagerIdMappings,ODEmbedManagerIdMappings,ODMessageManagerIdMappings,ODModalManagerIdMappings> {}
|
||||
@@ -0,0 +1,145 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET CONFIG CHECKER MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODBCheckerManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODBCheckerManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODCheckerManagerIdMappings extends api.ODCheckerManagerIdConstraint {
|
||||
"opendiscord:general":api.ODChecker,
|
||||
"opendiscord:questions":api.ODChecker,
|
||||
"opendiscord:options":api.ODChecker,
|
||||
"opendiscord:panels":api.ODChecker,
|
||||
"opendiscord:transcripts":api.ODChecker
|
||||
}
|
||||
|
||||
/**## ODCheckerTranslationRegisterOtherIdMappings `type`
|
||||
* A list of all available IDs in the default `ODCheckerTranslationRegister` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export type ODCheckerTranslationRegisterOtherIdMappings = (
|
||||
"opendiscord:header-openticket"|
|
||||
"opendiscord:header-configchecker"|
|
||||
"opendiscord:header-description"|
|
||||
"opendiscord:type-error"|
|
||||
"opendiscord:type-warning"|
|
||||
"opendiscord:type-info"|
|
||||
"opendiscord:data-path"|
|
||||
"opendiscord:data-docs"|
|
||||
"opendiscord:data-message"|
|
||||
"opendiscord:compact-information"|
|
||||
"opendiscord:footer-error"|
|
||||
"opendiscord:footer-warning"|
|
||||
"opendiscord:footer-support"
|
||||
)
|
||||
|
||||
/**## ODCheckerTranslationRegisterMessageIdMappings `type`
|
||||
* A list of all available IDs in the default `ODCheckerTranslationRegister` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export type ODCheckerTranslationRegisterMessageIdMappings = (
|
||||
"opendiscord:invalid-type"|
|
||||
"opendiscord:property-missing"|
|
||||
"opendiscord:property-optional"|
|
||||
"opendiscord:object-disabled"|
|
||||
"opendiscord:null-invalid"|
|
||||
"opendiscord:switch-invalid-type"|
|
||||
"opendiscord:object-switch-invalid-type"|
|
||||
|
||||
"opendiscord:string-too-short"|
|
||||
"opendiscord:string-too-long"|
|
||||
"opendiscord:string-length-invalid"|
|
||||
"opendiscord:string-starts-with"|
|
||||
"opendiscord:string-ends-with"|
|
||||
"opendiscord:string-contains"|
|
||||
"opendiscord:string-inverted-contains"|
|
||||
"opendiscord:string-choices"|
|
||||
"opendiscord:string-lowercase"|
|
||||
"opendiscord:string-uppercase"|
|
||||
"opendiscord:string-special-characters"|
|
||||
"opendiscord:string-no-spaces"|
|
||||
"opendiscord:string-regex"|
|
||||
"opendiscord:string-capital-word"|
|
||||
"opendiscord:string-capital-sentence"|
|
||||
"opendiscord:string-punctuation"|
|
||||
|
||||
"opendiscord:number-nan"|
|
||||
"opendiscord:number-too-short"|
|
||||
"opendiscord:number-too-long"|
|
||||
"opendiscord:number-length-invalid"|
|
||||
"opendiscord:number-too-small"|
|
||||
"opendiscord:number-too-large"|
|
||||
"opendiscord:number-not-equal"|
|
||||
"opendiscord:number-step"|
|
||||
"opendiscord:number-step-offset"|
|
||||
"opendiscord:number-starts-with"|
|
||||
"opendiscord:number-ends-with"|
|
||||
"opendiscord:number-contains"|
|
||||
"opendiscord:number-inverted-contains"|
|
||||
"opendiscord:number-choices"|
|
||||
"opendiscord:number-float"|
|
||||
"opendiscord:number-negative"|
|
||||
"opendiscord:number-positive"|
|
||||
"opendiscord:number-zero"|
|
||||
|
||||
"opendiscord:boolean-true"|
|
||||
"opendiscord:boolean-false"|
|
||||
|
||||
"opendiscord:array-empty-disabled"|
|
||||
"opendiscord:array-empty-required"|
|
||||
"opendiscord:array-too-short"|
|
||||
"opendiscord:array-too-long"|
|
||||
"opendiscord:array-length-invalid"|
|
||||
"opendiscord:array-invalid-types"|
|
||||
"opendiscord:array-double"|
|
||||
|
||||
"opendiscord:discord-invalid-id"|
|
||||
"opendiscord:discord-invalid-id-options"|
|
||||
"opendiscord:discord-invalid-token"|
|
||||
"opendiscord:color-invalid"|
|
||||
"opendiscord:emoji-too-short"|
|
||||
"opendiscord:emoji-too-long"|
|
||||
"opendiscord:emoji-custom"|
|
||||
"opendiscord:emoji-invalid"|
|
||||
"opendiscord:url-invalid"|
|
||||
"opendiscord:url-invalid-http"|
|
||||
"opendiscord:url-invalid-protocol"|
|
||||
"opendiscord:url-invalid-hostname"|
|
||||
"opendiscord:url-invalid-extension"|
|
||||
"opendiscord:url-invalid-path"|
|
||||
"opendiscord:id-not-unique"|
|
||||
"opendiscord:id-non-existent"|
|
||||
|
||||
"opendiscord:invalid-language"|
|
||||
"opendiscord:invalid-button"|
|
||||
"opendiscord:unused-option"|
|
||||
"opendiscord:unused-question"|
|
||||
"opendiscord:dropdown-option"
|
||||
)
|
||||
|
||||
/**## ODCheckerFunctionManagerIdMappings `type`
|
||||
* A list of all available IDs in the default `ODCheckerFunctionManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODCheckerFunctionManagerIdMappings extends api.ODCheckerFunctionManagerIdConstraint {
|
||||
"opendiscord:unused-options":api.ODCheckerFunction,
|
||||
"opendiscord:unused-questions":api.ODCheckerFunction,
|
||||
"opendiscord:dropdown-options":api.ODCheckerFunction
|
||||
}
|
||||
|
||||
/**## ODMappedCheckerManager `class
|
||||
* A special class with types for the Open Ticket `ODCheckerManager` class.
|
||||
*/
|
||||
export class ODMappedCheckerManager extends api.ODCheckerManager<ODCheckerManagerIdMappings,ODCheckerFunctionManagerIdMappings,api.ODDefaultCheckerRenderer,ODCheckerTranslationRegisterMessageIdMappings,ODCheckerTranslationRegisterOtherIdMappings> {}
|
||||
|
||||
/**## ODMappedCheckerFunctionManager `class
|
||||
* A special class with types for the Open Ticket `ODCheckerFunctionManager` class.
|
||||
*/
|
||||
export class ODMappedCheckerFunctionManager extends api.ODCheckerFunctionManager<ODCheckerFunctionManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedCheckerTranslationRegister `class
|
||||
* A special class with types for the Open Ticket `ODCheckerTranslationRegister` class.
|
||||
*/
|
||||
export class ODMappedCheckerTranslationRegister extends api.ODCheckerTranslationRegister<ODCheckerTranslationRegisterMessageIdMappings,ODCheckerTranslationRegisterOtherIdMappings> {}
|
||||
@@ -0,0 +1,109 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET CLIENT MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/** (CONTRIBUTOR GUIDE) HOW TO ADD NEW COMMANDS?
|
||||
* - Register the command in loadAllSlashCommands() & loadAllTextCommands() in (./src/data/framework/commandLoader.ts)
|
||||
* - Add autocomplete for the command in OD(Slash/Text)CommandManagerIds_Default in (./src/core/api/defaults/client.ts)
|
||||
* - Add the command to the help menu in (./src/data/framework/helpMenuLoader.ts)
|
||||
* - If required, new config variables should be added (incl. logs, dm-logs & permissions).
|
||||
* - Update the Open Ticket Documentation.
|
||||
* - If the command contains complex logic or can be executed from a button/dropdown, it should be placed inside an `ODAction`.
|
||||
* - Check all files, test the bot carefully & try a lot of different scenario's with different settings.
|
||||
*/
|
||||
|
||||
/**## ODSlashCommandManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODSlashCommandManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODSlashCommandManagerIdMappings extends api.ODSlashCommandManagerIdConstraint {
|
||||
"opendiscord:help":api.ODSlashCommand,
|
||||
"opendiscord:panel":api.ODSlashCommand,
|
||||
"opendiscord:ticket":api.ODSlashCommand,
|
||||
"opendiscord:close":api.ODSlashCommand,
|
||||
"opendiscord:delete":api.ODSlashCommand,
|
||||
"opendiscord:reopen":api.ODSlashCommand,
|
||||
"opendiscord:claim":api.ODSlashCommand,
|
||||
"opendiscord:unclaim":api.ODSlashCommand,
|
||||
"opendiscord:pin":api.ODSlashCommand,
|
||||
"opendiscord:unpin":api.ODSlashCommand,
|
||||
"opendiscord:move":api.ODSlashCommand,
|
||||
"opendiscord:rename":api.ODSlashCommand,
|
||||
"opendiscord:add":api.ODSlashCommand,
|
||||
"opendiscord:remove":api.ODSlashCommand,
|
||||
"opendiscord:blacklist":api.ODSlashCommand,
|
||||
"opendiscord:stats":api.ODSlashCommand,
|
||||
"opendiscord:clear":api.ODSlashCommand,
|
||||
"opendiscord:autoclose":api.ODSlashCommand,
|
||||
"opendiscord:autodelete":api.ODSlashCommand,
|
||||
"opendiscord:topic":api.ODSlashCommand,
|
||||
"opendiscord:priority":api.ODSlashCommand,
|
||||
"opendiscord:transfer":api.ODSlashCommand,
|
||||
}
|
||||
|
||||
/**## ODTextCommandManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODTextCommandManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODTextCommandManagerIdMappings extends api.ODTextCommandManagerIdConstraint {
|
||||
"opendiscord:dump":api.ODTextCommand,
|
||||
"opendiscord:help":api.ODTextCommand,
|
||||
"opendiscord:panel":api.ODTextCommand,
|
||||
"opendiscord:close":api.ODTextCommand,
|
||||
"opendiscord:delete":api.ODTextCommand,
|
||||
"opendiscord:reopen":api.ODTextCommand,
|
||||
"opendiscord:claim":api.ODTextCommand,
|
||||
"opendiscord:unclaim":api.ODTextCommand,
|
||||
"opendiscord:pin":api.ODTextCommand,
|
||||
"opendiscord:unpin":api.ODTextCommand,
|
||||
"opendiscord:move":api.ODTextCommand,
|
||||
"opendiscord:rename":api.ODTextCommand,
|
||||
"opendiscord:add":api.ODTextCommand,
|
||||
"opendiscord:remove":api.ODTextCommand,
|
||||
"opendiscord:blacklist-view":api.ODTextCommand,
|
||||
"opendiscord:blacklist-add":api.ODTextCommand,
|
||||
"opendiscord:blacklist-remove":api.ODTextCommand,
|
||||
"opendiscord:blacklist-get":api.ODTextCommand,
|
||||
"opendiscord:stats-global":api.ODTextCommand,
|
||||
"opendiscord:stats-reset":api.ODTextCommand,
|
||||
"opendiscord:stats-ticket":api.ODTextCommand,
|
||||
"opendiscord:stats-user":api.ODTextCommand,
|
||||
"opendiscord:clear":api.ODTextCommand,
|
||||
"opendiscord:autoclose-disable":api.ODTextCommand,
|
||||
"opendiscord:autoclose-enable":api.ODTextCommand,
|
||||
"opendiscord:autodelete-disable":api.ODTextCommand,
|
||||
"opendiscord:autodelete-enable":api.ODTextCommand,
|
||||
"opendiscord:topic-set":api.ODTextCommand,
|
||||
"opendiscord:priority-set":api.ODTextCommand,
|
||||
"opendiscord:priority-get":api.ODTextCommand,
|
||||
"opendiscord:transfer":api.ODTextCommand,
|
||||
}
|
||||
|
||||
/**## ODContextMenuManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODContextMenuManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODContextMenuManagerIdMappings extends api.ODContextMenuManagerIdConstraint {
|
||||
//"opendiscord:test-menu":ODContextMenu
|
||||
}
|
||||
|
||||
/**## ODMappedClientManager `class
|
||||
* A special class with types for the Open Ticket `ODClientManager` class.
|
||||
*/
|
||||
export class ODMappedClientManager extends api.ODClientManager<ODSlashCommandManagerIdMappings,ODTextCommandManagerIdMappings,ODContextMenuManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedSlashCommandManager `class
|
||||
* A special class with types for the Open Ticket `ODSlashCommandManager` class.
|
||||
*/
|
||||
export class ODMappedSlashCommandManager extends api.ODSlashCommandManager<ODSlashCommandManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedTextCommandManager `class
|
||||
* A special class with types for the Open Ticket `ODTextCommandManager` class.
|
||||
*/
|
||||
export class ODMappedTextCommandManager extends api.ODTextCommandManager<ODTextCommandManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedContextMenuManager `class
|
||||
* A special class with types for the Open Ticket `ODContextMenuManager` class.
|
||||
*/
|
||||
export class ODMappedContextMenuManager extends api.ODContextMenuManager<ODContextMenuManagerIdMappings> {}
|
||||
@@ -0,0 +1,32 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET CODE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODCodeManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODCodeManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODCodeManagerIdMappings extends api.ODCodeManagerIdConstraint {
|
||||
"opendiscord:command-error-handling":api.ODCode,
|
||||
"opendiscord:start-listening-interactions":api.ODCode,
|
||||
"opendiscord:panel-database-cleaner":api.ODCode,
|
||||
"opendiscord:suffix-database-cleaner":api.ODCode,
|
||||
"opendiscord:option-database-cleaner":api.ODCode,
|
||||
"opendiscord:user-database-cleaner":api.ODCode,
|
||||
"opendiscord:ticket-database-cleaner":api.ODCode,
|
||||
"opendiscord:panel-auto-update":api.ODCode,
|
||||
"opendiscord:ticket-saver":api.ODCode,
|
||||
"opendiscord:blacklist-saver":api.ODCode,
|
||||
"opendiscord:auto-role-on-join":api.ODCode,
|
||||
"opendiscord:autoclose-timeout":api.ODCode,
|
||||
"opendiscord:autoclose-leave":api.ODCode,
|
||||
"opendiscord:autodelete-timeout":api.ODCode,
|
||||
"opendiscord:autodelete-leave":api.ODCode,
|
||||
"opendiscord:ticket-anti-busy":api.ODCode,
|
||||
}
|
||||
|
||||
/**## ODMappedCodeManager `class
|
||||
* A special class with types for the Open Ticket `ODCodeManager` class.
|
||||
*/
|
||||
export class ODMappedCodeManager extends api.ODCodeManager<ODCodeManagerIdMappings> {}
|
||||
@@ -0,0 +1,802 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET CONFIG MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import * as discord from "discord.js"
|
||||
import { ODRoleUpdateMode } from "../api/role"
|
||||
|
||||
/** (CONTRIBUTOR GUIDE) HOW TO ADD NEW CONFIG VARIABLES?
|
||||
* - Make the change to the config file in (./config/) and be aware of the following things:
|
||||
* - The variable has a clear name and its function is obvious.
|
||||
* - The variable is in the correct position/category of the config.
|
||||
* - The variable contains a default placeholder to suggest the contents.
|
||||
* - If there's a (./devconfig/), also modify this file.
|
||||
* - Register the config in loadAllConfigs() in (./src/data/framework/configLoader.ts)
|
||||
* - The variable should be added to the "formatters" in the correct position.
|
||||
* - Add autocomplete for the variable in ODJsonConfig_Default... in (./src/core/api/defaults/config.ts)
|
||||
* - Add the variable to the config checker in (./src/data/framework/checkerLoader.ts)
|
||||
* - Make sure the variable is compatible with the Interactive Setup CLI.
|
||||
* - The variable should be added by the migration manager (./src/core/startup/migration.ts) when missing.
|
||||
* - Update the Open Ticket Documentation.
|
||||
*
|
||||
* IF VARIABLE IS FROM questions.json, options.json OR panels.json:
|
||||
* - Check (./src/data/openticket/...) for loading/unloading of data.
|
||||
* - Check (./src/actions/createTicket.ts) and related files.
|
||||
* - Check (./src/builders), (./src/actions), (./src/data) & (./src/commands) in general in the areas that were changed.
|
||||
*/
|
||||
|
||||
/**## ODConfigManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODConfigManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODConfigManagerIdMappings extends api.ODConfigManagerIdConstraint {
|
||||
"opendiscord:general":ODGeneralJsonConfig,
|
||||
"opendiscord:questions":ODQuestionsJsonConfig,
|
||||
"opendiscord:options":ODOptionsJsonConfig,
|
||||
"opendiscord:panels":ODPanelsJsonConfig,
|
||||
"opendiscord:transcripts":ODTranscriptsJsonConfig
|
||||
}
|
||||
|
||||
/**## ODMappedConfigManager `class
|
||||
* A special class with types for the Open Ticket `ODConfigManager` class.
|
||||
*/
|
||||
export class ODMappedConfigManager extends api.ODConfigManager<ODConfigManagerIdMappings> {}
|
||||
|
||||
/**## ODGeneralJsonConfig `class
|
||||
* A special class with types for the Open Ticket `config/general.json` config file
|
||||
*/
|
||||
export class ODGeneralJsonConfig extends api.ODJsonConfig<ODGeneralJsonConfig_GeneralData> {}
|
||||
|
||||
/**## ODQuestionsJsonConfig `class
|
||||
* A special class with types for the Open Ticket `config/questions.json` config file
|
||||
*/
|
||||
export class ODQuestionsJsonConfig extends api.ODJsonConfig<ODQuestionsJsonConfig_QuestionsData> {}
|
||||
|
||||
/**## ODOptionsJsonConfig `class
|
||||
* A special class with types for the Open Ticket `config/options.json` config file
|
||||
*/
|
||||
export class ODOptionsJsonConfig extends api.ODJsonConfig<ODOptionsJsonConfig_OptionsData> {}
|
||||
|
||||
/**## ODPanelsJsonConfig `class
|
||||
* A special class with types for the Open Ticket `config/panels.json` config file
|
||||
*/
|
||||
export class ODPanelsJsonConfig extends api.ODJsonConfig<ODPanelsJsonConfig_PanelsData> {}
|
||||
|
||||
/**## ODTranscriptsJsonConfig `class
|
||||
* A special class with types for the Open Ticket `config/transcripts.json` config file
|
||||
*/
|
||||
export class ODTranscriptsJsonConfig extends api.ODJsonConfig<ODTranscriptsJsonConfig_TranscriptsData> {}
|
||||
|
||||
///////////////////////////////////////
|
||||
// CONFIG STRUCTURES, VALUES & TYPES
|
||||
// --> general.json
|
||||
///////////////////////////////////////
|
||||
|
||||
/**## ODGeneralJsonConfig_Status `interface`
|
||||
* This interface is an object which has all properties for the status object in the `general.json` config!
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_Status {
|
||||
/**Is the status enabled? */
|
||||
enabled:boolean,
|
||||
/**The type of status (e.g. playing, listening, custom, ...) */
|
||||
type:Exclude<api.ODClientActivityType,false>,
|
||||
/**The mode/status of the bot (e.g. online, invisible, idle, do not disturb) */
|
||||
mode:api.ODClientActivityMode
|
||||
/**The text for the status. */
|
||||
text:string,
|
||||
/**Additional text for the status. (visible below 'text') */
|
||||
state:string,
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_MessageSettings `interface`
|
||||
* This interface is an object which has all properties for the "system"."messages".... object in the `general.json` config!
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_MessageSettings {
|
||||
/**Enable sending DM logs to the ticket creator for this action. */
|
||||
dm:boolean,
|
||||
/**Enable sending logsto the log channel for this action. */
|
||||
logs:boolean
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_CmdPermissionSettingsType `type`
|
||||
* This type is a collection of command permission settings for the "system"."permissions".... object in the `general.json` config!
|
||||
*/
|
||||
export type ODGeneralJsonConfig_CmdPermissionSettingsType = "admin"|"everyone"|"none"|string
|
||||
|
||||
/**## ODGeneralJsonConfig_Info `interface`
|
||||
* This object contains a few URLs and metadata for the config.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_Info {
|
||||
/**A link to the Open Ticket documentation. */
|
||||
support:string,
|
||||
/**A link to the DJdj Development discord server. */
|
||||
discord:string,
|
||||
/**The version of Open Ticket this config is compatible with. */
|
||||
version:string
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_SystemLogs `interface`
|
||||
* All settings related to the log channel.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_SystemLogs {
|
||||
/**Enable logging. Individual actions should still be added via the `"system"."messages"..."logs"` */
|
||||
enabled:boolean,
|
||||
/**The channel to send logs to. */
|
||||
channel:string
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_SystemLimits `interface`
|
||||
* All settings related to global ticket limits.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_SystemLimits {
|
||||
/**Enable global ticket limits. */
|
||||
enabled:boolean,
|
||||
/**The maximum amount of tickets that are allowed in the server at the same time. */
|
||||
globalMaximum:number,
|
||||
/**The maximum amount of tickets that a user is allowed to create at the same time. */
|
||||
userMaximum:number
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_SystemChannelTopic `interface`
|
||||
* All global channel topic settings.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_SystemChannelTopic {
|
||||
/**Show the option name in the channel topic. */
|
||||
showOptionName:boolean,
|
||||
/**Show the option description in the channel topic. */
|
||||
showOptionDescription:boolean,
|
||||
/**Show the option topic text in the channel topic (configured in the options config). */
|
||||
showOptionTopic:boolean,
|
||||
/**Show the current priority in the channel topic (auto-updated). */
|
||||
showPriority:boolean,
|
||||
/**Show the current close/reopen status in the channel topic (auto-updated). */
|
||||
showClosed:boolean,
|
||||
/**Show the current claim status in the channel topic (auto-updated). */
|
||||
showClaimed:boolean,
|
||||
/**Show the current pin status in the channel topic (auto-updated). */
|
||||
showPinned:boolean,
|
||||
/**Show the creator of the ticket in the channel topic (auto-updated on transfer). */
|
||||
showCreator:boolean,
|
||||
/**Show the first 5 participants of the ticket in the channel topic (auto-updated). */
|
||||
showParticipants:boolean
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_SystemPermissions `interface`
|
||||
* Configure permissions for all Open Ticket commands & actions.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_SystemPermissions {
|
||||
help:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
panel:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
ticket:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
close:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
delete:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
reopen:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
claim:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
unclaim:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
pin:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
unpin:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
move:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
rename:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
add:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
remove:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
blacklist:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
stats:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
clear:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
autoclose:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
autodelete:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
transfer:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
topic:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
priority:ODGeneralJsonConfig_CmdPermissionSettingsType,
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_SystemMessages `interface`
|
||||
* Configure dm & log messages for all Open Ticket commands & actions.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_SystemMessages {
|
||||
creation:ODGeneralJsonConfig_MessageSettings,
|
||||
closing:ODGeneralJsonConfig_MessageSettings,
|
||||
deleting:ODGeneralJsonConfig_MessageSettings,
|
||||
reopening:ODGeneralJsonConfig_MessageSettings,
|
||||
claiming:ODGeneralJsonConfig_MessageSettings,
|
||||
pinning:ODGeneralJsonConfig_MessageSettings,
|
||||
adding:ODGeneralJsonConfig_MessageSettings,
|
||||
removing:ODGeneralJsonConfig_MessageSettings,
|
||||
renaming:ODGeneralJsonConfig_MessageSettings,
|
||||
moving:ODGeneralJsonConfig_MessageSettings,
|
||||
blacklisting:ODGeneralJsonConfig_MessageSettings,
|
||||
transferring:ODGeneralJsonConfig_MessageSettings,
|
||||
topicChange:ODGeneralJsonConfig_MessageSettings,
|
||||
priorityChange:ODGeneralJsonConfig_MessageSettings,
|
||||
reactionRole:ODGeneralJsonConfig_MessageSettings,
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_System `interface`
|
||||
* All settings related to the ticket system.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_System {
|
||||
/**Prefer slash-commands over text-commands when displaying them in menu's and messages. */
|
||||
preferSlashOverText:boolean,
|
||||
/**Reply with "unknown command" when the prefix is used without a valid command. */
|
||||
sendErrorOnUnknownCommand:boolean,
|
||||
/**Display the question fields (in a ticket message) in code blocks. */
|
||||
questionFieldsInCodeBlock:boolean,
|
||||
/**Display embed fields together with question fields (in a ticket message). */
|
||||
displayFieldsWithQuestions:boolean,
|
||||
/**Show global admins roles together with ticket admins in panel embeds. */
|
||||
showGlobalAdminsInPanelRoles:boolean,
|
||||
/**Disable the (✅❌) buttons and directly run the action. */
|
||||
disableVerifyBars:boolean,
|
||||
/**Display error embeds/messages with red instead of the default bot color. */
|
||||
useRedErrorEmbeds:boolean,
|
||||
/**Always show the reason field in embeds, even when there is no reason provided. */
|
||||
alwaysShowReason:boolean,
|
||||
/**The emoji style used in the bot. This will affect all embeds, titles & messages in the bot. */
|
||||
emojiStyle:"before"|"after"|"double"|"disabled",
|
||||
/**The emoji used when pinning tickets. This is '📌' by default. */
|
||||
pinEmoji:string,
|
||||
|
||||
/**Reply with an ephemeral message when a ticket is created. */
|
||||
replyOnTicketCreation:boolean,
|
||||
/**Reply with an ephemeral message when reaction roles are changed. */
|
||||
replyOnReactionRole:boolean,
|
||||
/**Ask for the priority of this ticket on ticket creation. This will happen in a dropdown in the ticket message. */
|
||||
askPriorityOnTicketCreation:boolean,
|
||||
/**Remove all participants (except admins) from the ticket when it's closed. */
|
||||
removeParticipantsOnClose:boolean,
|
||||
/**Disable autoclose for a ticket when it has been closed and re-opened. */
|
||||
disableAutocloseAfterReopen:boolean,
|
||||
/**Only allow autodelete when the ticket is already closed. */
|
||||
autodeleteRequiresClosedTicket:boolean,
|
||||
/**When enabled, only global admins are able to delete a ticket without transcript. */
|
||||
adminOnlyDeleteWithoutTranscript:boolean,
|
||||
/**Only allow ticket closing when at least 1 message has been sent by the creator. (admins are able to bypass) */
|
||||
allowCloseBeforeMessage:boolean,
|
||||
/**Only allow ticket closing when at least 1 message has been sent by a global or ticket admin. (admins are able to bypass) */
|
||||
allowCloseBeforeAdminMessage:boolean,
|
||||
/**Use a translated config checker in the console. */
|
||||
useTranslatedConfigChecker:boolean,
|
||||
/**Pin the (first) ticket message in the channel. This simulates old behaviour like Open Ticket v1, v2 & v3. */
|
||||
pinFirstTicketMessage:boolean,
|
||||
|
||||
/**Enable/disable the ticket claim & unclaim button in the ticket message. */
|
||||
enableTicketClaimButtons:boolean,
|
||||
/**Enable/disable the ticket close & re-open button in the ticket message. */
|
||||
enableTicketCloseButtons:boolean,
|
||||
/**Enable/disable the ticket pin & unpin button in the ticket message. */
|
||||
enableTicketPinButtons:boolean,
|
||||
/**Enable/disable the ticket delete button in the ticket message. */
|
||||
enableTicketDeleteButtons:boolean,
|
||||
/**Enable/disable the "with reason" button for all actions in the ticket message. */
|
||||
enableTicketActionWithReason:boolean,
|
||||
/**Enable/disable the delete without transcript feature (button & /delete command). */
|
||||
enableDeleteWithoutTranscript:boolean,
|
||||
|
||||
/**All settings related to the log channel. */
|
||||
logs:ODGeneralJsonConfig_SystemLogs,
|
||||
|
||||
/**All settings related to global ticket limits. */
|
||||
limits:ODGeneralJsonConfig_SystemLimits,
|
||||
|
||||
/**All global channel topic settings. */
|
||||
channelTopic:ODGeneralJsonConfig_SystemChannelTopic,
|
||||
|
||||
/**Configure permissions for all Open Ticket commands & actions. */
|
||||
permissions:ODGeneralJsonConfig_SystemPermissions,
|
||||
|
||||
/**Configure dm & log messages for all Open Ticket commands & actions. */
|
||||
messages:ODGeneralJsonConfig_SystemMessages
|
||||
}
|
||||
|
||||
/**## ODGeneralJsonConfig_GeneralData `interface`
|
||||
* All contents of the `general.json` config file.
|
||||
*/
|
||||
export interface ODGeneralJsonConfig_GeneralData {
|
||||
/**This object contains a few URLs and metadata for the config. */
|
||||
_INFO:ODGeneralJsonConfig_Info,
|
||||
|
||||
/**The token of the bot. (Empty when using `tokenFromENV`) */
|
||||
token:string,
|
||||
/**Use the token from the `.env` file as `TOKEN=xxxxx`. */
|
||||
tokenFromENV:boolean,
|
||||
|
||||
/**The main (hex) color used in almost every embed in the bot. */
|
||||
mainColor:discord.ColorResolvable|string,
|
||||
/**The language to use. Can be the id of the language or the id without the prefix when using `opendiscord:...`. */
|
||||
language:string,
|
||||
/**The prefix used in all text-commands. */
|
||||
prefix:string,
|
||||
/**The id of the discord server where the bot is used. */
|
||||
serverId:string,
|
||||
/**A list of discord role ids which are able to access all tickets & commands. */
|
||||
globalAdmins:string[],
|
||||
|
||||
/**Are slash commands enabled? */
|
||||
slashCommands:boolean,
|
||||
/**Are text commands enabled? */
|
||||
textCommands:boolean,
|
||||
|
||||
/**All settings related to the status of the bot. */
|
||||
status:ODGeneralJsonConfig_Status,
|
||||
|
||||
/**All settings related to the ticket system. */
|
||||
system:ODGeneralJsonConfig_System
|
||||
}
|
||||
|
||||
///////////////////////////////////////
|
||||
// CONFIG STRUCTURES, VALUES & TYPES
|
||||
// --> options.json
|
||||
///////////////////////////////////////
|
||||
|
||||
/**## ODOptionsJsonConfig_BaseOption `interface`
|
||||
* This interface is an object which has all basic properties for options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_BaseOption {
|
||||
/**The id of this option. */
|
||||
id:string,
|
||||
/**The name of this option. */
|
||||
name:string,
|
||||
/**The description of this option. */
|
||||
description:string,
|
||||
/**The type of this option. This type also determines the other option-specific variables. */
|
||||
type:"ticket"|"website"|"role",
|
||||
/**All settings related to the button for the 3 option types. */
|
||||
button:{
|
||||
/**The emoji of the button. (can also be empty) */
|
||||
emoji:string,
|
||||
/**The label of the button (can also be empty) */
|
||||
label:string
|
||||
}
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_OptionButtonSettings `interface`
|
||||
* This interface is an object which has all button settings for ticket & reaction role options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_OptionButtonSettings {
|
||||
/**The emoji of the button. (can also be empty) */
|
||||
emoji:string,
|
||||
/**The label of the button (can also be empty) */
|
||||
label:string,
|
||||
/**The color of the button (not available in options with the 'website' type!) */
|
||||
color:api.ODValidButtonColor
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_TicketOptionEmbedSettings `interface`
|
||||
* This interface is an object which has all message embed settings for ticket options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_TicketOptionEmbedSettings {
|
||||
/**Is this embed enabled? */
|
||||
enabled:boolean,
|
||||
/**The title of the embed. */
|
||||
title:string,
|
||||
/**The description of this embed. */
|
||||
description:string,
|
||||
/**A custom color for this embed. (The default bot color is used when empty) */
|
||||
customColor:discord.ColorResolvable|string,
|
||||
|
||||
/**A URL to an image displayed in the embed. */
|
||||
image:string,
|
||||
/**A URL to a thumbnail displayed in the embed. */
|
||||
thumbnail:string,
|
||||
/**A list of fields displayed in the embed. */
|
||||
fields:{
|
||||
/**The name of this field. */
|
||||
name:string,
|
||||
/**The value of this field. => empty not allowed */
|
||||
value:string,
|
||||
inline:boolean
|
||||
}[],
|
||||
/**Enable setting the timestamp of the embed to the current time. */
|
||||
timestamp:boolean
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_TicketOptionPingSettings `interface`
|
||||
* This interface is an object which has all message ping settings for ticket options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_TicketOptionPingSettings {
|
||||
/**Ping `@here`. */
|
||||
"@here":boolean,
|
||||
/**Ping `@everyone`. */
|
||||
"@everyone":boolean,
|
||||
/**A list of custom discord role ids to ping. */
|
||||
custom:string[]
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_TicketOptionChannelSettings `interface`
|
||||
* All settings related to the ticket channel itself in a ticket option.
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_TicketOptionChannelSettings {
|
||||
/**The prefix used in the name of this ticket channel. */
|
||||
prefix:string,
|
||||
/**The type of suffix used in the name of this ticket channel. */
|
||||
suffix:"user-name"|"user-nickname"|"user-id"|"random-number"|"random-hex"|"counter-dynamic"|"counter-fixed",
|
||||
/**An optional discord category id to create this ticket in. */
|
||||
category:string,
|
||||
/**An optional discord category id to move this ticket to when closed. */
|
||||
closedCategory:string,
|
||||
/**An optional discord category id to create this ticket in when the primary one is full (max. 50 tickets). */
|
||||
backupCategory:string,
|
||||
/**A list of discord category ids to move this ticket to when claimed by a specific user. */
|
||||
claimedCategory:{
|
||||
/**The user which claimed the ticket. */
|
||||
user:string,
|
||||
/**The category to move the ticket to when claimed by this user. */
|
||||
category:string
|
||||
}[],
|
||||
/**The channel topic shown at the top of the channel in discord. */
|
||||
topic:string
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_TicketOption `interface`
|
||||
* This interface is an object which has all ticket properties for options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_TicketOption extends ODOptionsJsonConfig_BaseOption {
|
||||
type:"ticket",
|
||||
button:ODOptionsJsonConfig_OptionButtonSettings,
|
||||
/**A list of discord role ids which are able to access this ticket type & use commands. */
|
||||
ticketAdmins:string[],
|
||||
/**A list of discord role ids which are able to access this ticket type but can't write in the chat. */
|
||||
readonlyAdmins:string[],
|
||||
/**When enabled, blacklisted users can still create this ticket type. (used for appeals, etc) */
|
||||
allowCreationByBlacklistedUsers:boolean,
|
||||
/**A list of valid question ids from the `questions.json` config. */
|
||||
questions:string[],
|
||||
/**All settings related to the ticket channel itself. */
|
||||
channel:ODOptionsJsonConfig_TicketOptionChannelSettings,
|
||||
/**All settings related to the message sent in DM to the creator when the ticket is created. */
|
||||
dmMessage:{
|
||||
/**Enable this message. */
|
||||
enabled:boolean,
|
||||
/**The raw text contents of this message. (empty for embed only) */
|
||||
text:string,
|
||||
/**The embed of this message. */
|
||||
embed:ODOptionsJsonConfig_TicketOptionEmbedSettings
|
||||
},
|
||||
/**All settings related to the message sent in the ticket channel when the ticket is created. */
|
||||
ticketMessage:{
|
||||
/**Enable this message. */
|
||||
enabled:boolean,
|
||||
/**The raw text contents of this message. (empty for embed only) */
|
||||
text:string,
|
||||
/**The embed of this message. */
|
||||
embed:ODOptionsJsonConfig_TicketOptionEmbedSettings,
|
||||
/**Additional ping/mention settings for this ticket channel. */
|
||||
ping:ODOptionsJsonConfig_TicketOptionPingSettings
|
||||
},
|
||||
/**All settings related to autoclosing this ticket type. */
|
||||
autoclose:{
|
||||
/**Enable autoclosing when the ticket is inactive for the set duration of time. */
|
||||
enableInactiveHours:boolean,
|
||||
/**The amount of hours this ticket is required to be inactive for. */
|
||||
inactiveHours:number,
|
||||
/**Enable autoclosing when the creator of the ticket leaves the server. */
|
||||
enableUserLeave:boolean,
|
||||
/**Disable autoclosing when the ticket is claimed by someone. */
|
||||
disableOnClaim:boolean
|
||||
},
|
||||
/**All settings related to autodeleting this ticket type. */
|
||||
autodelete:{
|
||||
/**Enable autodeleting when the ticket is inactive for the set duration of time. */
|
||||
enableInactiveDays:boolean,
|
||||
/**The amount of days this ticket is required to be inactive for. */
|
||||
inactiveDays:number,
|
||||
/**Enable autodeleting when the creator of the ticket leaves the server. */
|
||||
enableUserLeave:boolean,
|
||||
/**Disable autodeleting when the ticket is claimed by someone. */
|
||||
disableOnClaim:boolean
|
||||
},
|
||||
/**All settings related to the cooldown of this ticket type. */
|
||||
cooldown:{
|
||||
/**Enable cooldown (per user) */
|
||||
enabled:boolean,
|
||||
/**The amount of minutes a user needs to wait before being able to create a ticket again. */
|
||||
cooldownMinutes:number
|
||||
},
|
||||
/**All settings related to the limits of this ticket type. */
|
||||
limits:{
|
||||
/**Enable option ticket limits. */
|
||||
enabled:boolean,
|
||||
/**The maximum amount of tickets of this type that are allowed in the server at the same time. */
|
||||
globalMaximum:number,
|
||||
/**The maximum amount of tickets of this type that a user is allowed to create at the same time. */
|
||||
userMaximum:number
|
||||
},
|
||||
/**All settings related to the slow mode of this ticket type. */
|
||||
slowMode:{
|
||||
/**Enable channel slow mode. */
|
||||
enabled:boolean,
|
||||
/**The amount of seconds users need to wait between sending messages. */
|
||||
slowModeSeconds:number
|
||||
}
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_WebsiteOption `interface`
|
||||
* This interface is an object which has all website properties for options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_WebsiteOption extends ODOptionsJsonConfig_BaseOption {
|
||||
type:"website",
|
||||
/**The URL this button will point to. */
|
||||
url:string
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_RoleOption `interface`
|
||||
* This interface is an object which has all reaction role properties for options in the `options.json` config!
|
||||
*/
|
||||
export interface ODOptionsJsonConfig_RoleOption extends ODOptionsJsonConfig_BaseOption {
|
||||
type:"role",
|
||||
button:ODOptionsJsonConfig_OptionButtonSettings,
|
||||
/**All roles which will be affected by this button. */
|
||||
roles:string[],
|
||||
/**The mode determines what will happen with the affected roles on the user. */
|
||||
mode:ODRoleUpdateMode,
|
||||
/**A list of roles to remove from the user when given at least one of the affected roles. */
|
||||
removeRolesOnAdd:string[],
|
||||
/**Automatically add these roles when the user joins the server. */
|
||||
addOnMemberJoin:boolean
|
||||
}
|
||||
|
||||
/**## ODOptionsJsonConfig_OptionsData `type`
|
||||
* All contents of the `options.json` config file.
|
||||
*/
|
||||
export type ODOptionsJsonConfig_OptionsData = (ODOptionsJsonConfig_TicketOption|ODOptionsJsonConfig_WebsiteOption|ODOptionsJsonConfig_RoleOption)[]
|
||||
|
||||
///////////////////////////////////////
|
||||
// CONFIG STRUCTURES, VALUES & TYPES
|
||||
// --> panels.json
|
||||
///////////////////////////////////////
|
||||
|
||||
/**## ODPanelsJsonConfig_PanelEmbedSettings `interface`
|
||||
* This interface is an object which has all message embed settings for panels in the `panels.json` config!
|
||||
*/
|
||||
export interface ODPanelsJsonConfig_PanelEmbedSettings {
|
||||
/**Is this embed enabled? */
|
||||
enabled:boolean,
|
||||
/**The title of the embed. */
|
||||
title:string,
|
||||
/**The description of this embed. */
|
||||
description:string,
|
||||
|
||||
/**A custom color for this embed. (The default bot color is used when empty) */
|
||||
customColor:discord.ColorResolvable|string,
|
||||
/**An optional URL used in the title of the embed. */
|
||||
url:string,
|
||||
|
||||
/**A URL to an image displayed in the embed. */
|
||||
image:string,
|
||||
/**A URL to a thumbnail displayed in the embed. */
|
||||
thumbnail:string,
|
||||
|
||||
/**The footer of this embed. */
|
||||
footer:string,
|
||||
/**A list of fields displayed in the embed. (except when using "describeOptionsInEmbedFields") */
|
||||
fields:{
|
||||
/**The name of this field. */
|
||||
name:string,
|
||||
/**The value of this field. => empty not allowed */
|
||||
value:string,
|
||||
inline:boolean
|
||||
}[],
|
||||
/**Enable setting the timestamp of the embed to the current time. */
|
||||
timestamp:boolean
|
||||
}
|
||||
|
||||
/**## ODPanelsJsonConfig_PanelSettings `interface`
|
||||
* This interface is a collection of additional settings for extra customisation in a panel.
|
||||
*/
|
||||
export interface ODPanelsJsonConfig_PanelSettings {
|
||||
/**The placeholder used in the dropdown when enabled. */
|
||||
dropdownPlaceholder:string,
|
||||
|
||||
/**Enable a max tickets warning in the text contents. */
|
||||
enableMaxTicketsWarningInText:boolean,
|
||||
/**Enable a max tickets warning in the embed. */
|
||||
enableMaxTicketsWarningInEmbed:boolean,
|
||||
|
||||
/**The layout/complexity of the describe options feature. */
|
||||
describeOptionsLayout:"simple"|"normal"|"detailed",
|
||||
/**A custom title for the describe options feature. */
|
||||
describeOptionsCustomTitle:string,
|
||||
/**Describe the options in the text contents. */
|
||||
describeOptionsInText:boolean,
|
||||
/**Describe the options in the embed fields. */
|
||||
describeOptionsInEmbedFields:boolean,
|
||||
/**Describe the options in the embed description. */
|
||||
describeOptionsInEmbedDescription:boolean
|
||||
}
|
||||
|
||||
/**## ODPanelsJsonConfig_Panel `interface`
|
||||
* This interface is an object which has all properties for panels in the `panels.json` config!
|
||||
*/
|
||||
export interface ODPanelsJsonConfig_Panel {
|
||||
/**The id of this panel. */
|
||||
id:string,
|
||||
/**The name of this panel. */
|
||||
name:string,
|
||||
/**When enabled, the panel uses a dropdown instead of buttons. */
|
||||
dropdown:boolean,
|
||||
/**A list of valid options ids from the `options.json` config. */
|
||||
options:string[],
|
||||
|
||||
/**The raw text contents of this panel. (empty for embed only) */
|
||||
text:string,
|
||||
/**The embed of this panel. */
|
||||
embed:ODPanelsJsonConfig_PanelEmbedSettings,
|
||||
/**A collection of additional settings for extra customisation in a panel. */
|
||||
settings:ODPanelsJsonConfig_PanelSettings
|
||||
}
|
||||
|
||||
/**## ODPanelsJsonConfig_PanelsData `type`
|
||||
* All contents of the `panels.json` config file.
|
||||
*/
|
||||
export type ODPanelsJsonConfig_PanelsData = ODPanelsJsonConfig_Panel[]
|
||||
|
||||
///////////////////////////////////////
|
||||
// CONFIG STRUCTURES, VALUES & TYPES
|
||||
// --> questions.json
|
||||
///////////////////////////////////////
|
||||
|
||||
/**## ODQuestionsJsonConfig_QuestionLengthSettings `interface`
|
||||
* This interface is a collection of settings related to length validation in a question.
|
||||
*/
|
||||
export interface ODQuestionsJsonConfig_QuestionLengthSettings {
|
||||
/**Enable text length verification. */
|
||||
enabled:boolean,
|
||||
/**The minimum text input length. */
|
||||
min:number,
|
||||
/**The maximum text input length. */
|
||||
max:number
|
||||
}
|
||||
|
||||
/**## ODQuestionsJsonConfig_BaseQuestion `interface`
|
||||
* This interface is an object which has all universal properties for questions in the `questions.json` config!
|
||||
*/
|
||||
export interface ODQuestionsJsonConfig_BaseQuestion {
|
||||
/**The id of this question. */
|
||||
id:string,
|
||||
/**The name of this question. */
|
||||
name:string,
|
||||
/**The type of this question. */
|
||||
type:"short"|"paragraph",
|
||||
/**Is this question required? */
|
||||
required:boolean,
|
||||
}
|
||||
|
||||
/**## ODQuestionsJsonConfig_ShortQuestion `interface`
|
||||
* This interface is an object which has all properties for short questions in the `questions.json` config!
|
||||
*/
|
||||
export interface ODQuestionsJsonConfig_ShortQuestion extends ODQuestionsJsonConfig_BaseQuestion {
|
||||
/**A placeholder for the question. */
|
||||
placeholder:string,
|
||||
/**A collection of settings related to length validation in a question. */
|
||||
length:ODQuestionsJsonConfig_QuestionLengthSettings
|
||||
}
|
||||
|
||||
/**## ODQuestionsJsonConfig_ParagraphQuestion `interface`
|
||||
* This interface is an object which has all properties for paragraph questions in the `questions.json` config!
|
||||
*/
|
||||
export interface ODQuestionsJsonConfig_ParagraphQuestion extends ODQuestionsJsonConfig_BaseQuestion {
|
||||
/**A placeholder for the question. */
|
||||
placeholder:string,
|
||||
/**A collection of settings related to length validation in a question. */
|
||||
length:ODQuestionsJsonConfig_QuestionLengthSettings
|
||||
}
|
||||
|
||||
/**## ODQuestionsJsonConfig_QuestionsData `type`
|
||||
* All contents of the `questions.json` config file.
|
||||
*/
|
||||
export type ODQuestionsJsonConfig_QuestionsData = (ODQuestionsJsonConfig_ShortQuestion|ODQuestionsJsonConfig_ParagraphQuestion)[]
|
||||
|
||||
///////////////////////////////////////
|
||||
// CONFIG STRUCTURES, VALUES & TYPES
|
||||
// --> transcripts.json
|
||||
///////////////////////////////////////
|
||||
|
||||
/**## ODTranscriptsJsonConfig_TranscriptsTextLayout `interface`
|
||||
* This interface contains the layout of the text transcripts.
|
||||
*/
|
||||
export interface ODTranscriptsJsonConfig_TranscriptsTextLayout {
|
||||
/**The layout/complexity of the text transcripts. */
|
||||
layout:"simple"|"normal"|"detailed",
|
||||
/**Include stats in the transcript. */
|
||||
includeStats:boolean,
|
||||
/**Include user & message ids in the transcript. */
|
||||
includeIds:boolean,
|
||||
/**Include embeds in the transcript. */
|
||||
includeEmbeds:boolean,
|
||||
/**Include files in the transcript. */
|
||||
includeFiles:boolean,
|
||||
/**Include bot messages in the transcript. */
|
||||
includeBotMessages:boolean,
|
||||
|
||||
/**How to name the transcript file? */
|
||||
fileMode:"custom"|"channel-name"|"channel-id"|"user-name"|"user-id",
|
||||
/**A custom name for the transcript file (when using `"custom"`) */
|
||||
customFileName:string
|
||||
}
|
||||
|
||||
/**## ODTranscriptsJsonConfig_TranscriptsHtmlLayout `interface`
|
||||
* This interface contains the layout of the HTML transcripts.
|
||||
*/
|
||||
export interface ODTranscriptsJsonConfig_TranscriptsHtmlLayout {
|
||||
/**Settings related to the background. */
|
||||
background:{
|
||||
/**Enable a custom background. */
|
||||
enableCustomBackground:boolean,
|
||||
/**The background (hex) color. */
|
||||
backgroundColor:string,
|
||||
/**The background image url. */
|
||||
backgroundImage:string
|
||||
},
|
||||
/**Settings related to the header. */
|
||||
header:{
|
||||
/**Enable a custom header. */
|
||||
enableCustomHeader:boolean,
|
||||
/**The background (hex) color of the header. */
|
||||
backgroundColor:string,
|
||||
/**The deco color (horizontal line) of the header. */
|
||||
decoColor:string,
|
||||
/**The text color of the header. */
|
||||
textColor:string
|
||||
},
|
||||
/**Settings related to the stats section. */
|
||||
stats:{
|
||||
/**Enable a custom stats section. */
|
||||
enableCustomStats:false,
|
||||
/**The background color of the stats section. */
|
||||
backgroundColor:string,
|
||||
/**The key text color of the stats section. */
|
||||
keyTextColor:string,
|
||||
/**The value text color of the stats section. */
|
||||
valueTextColor:string,
|
||||
/**The background color of the hide button in the stats section. */
|
||||
hideBackgroundColor:string,
|
||||
/**The text color of the hide button in the stats section. */
|
||||
hideTextColor:string
|
||||
},
|
||||
/**Settings related to the favicon. */
|
||||
favicon:{
|
||||
/**Enable a custom background. */
|
||||
enableCustomFavicon:boolean,
|
||||
/**A link to the custom favicon. */
|
||||
imageUrl:string
|
||||
}
|
||||
}
|
||||
|
||||
/**## ODTranscriptsJsonConfig_TranscriptsData `interface`
|
||||
* All contents of the `transcripts.json` config file.
|
||||
*/
|
||||
export interface ODTranscriptsJsonConfig_TranscriptsData {
|
||||
/**All general settings related to transcripts. */
|
||||
general:{
|
||||
/**Are transcripts enabled? */
|
||||
enabled:boolean,
|
||||
|
||||
/**Enable sending the generated transcript in a channel. */
|
||||
enableChannel:boolean,
|
||||
/**Enable sending the generated transcript to the DM of the ticket creator. */
|
||||
enableCreatorDM:boolean,
|
||||
/**Enable sending the generated transcript to the DM of the participants. */
|
||||
enableParticipantDM:boolean,
|
||||
/**Enable sending the generated transcript to the DM of all admins which were active in the ticket. */
|
||||
enableActiveAdminDM:boolean,
|
||||
/**Enable sending the generated transcript to the DM of all admins which were assigned to the ticket. */
|
||||
enableEveryAdminDM:boolean,
|
||||
|
||||
/**A discord channel id for the `"enableChannel"` setting. */
|
||||
channel:string,
|
||||
/**Want to use text or HTML transcripts? */
|
||||
mode:"html"|"text"
|
||||
},
|
||||
/**All settings related to the embed from the transcripts. (UNIMPLEMENTED!!) */
|
||||
embedSettings:{
|
||||
/**Unimplemented feature */
|
||||
customColor:discord.ColorResolvable|string,
|
||||
/**Unimplemented feature */
|
||||
listAllParticipants:boolean,
|
||||
/**Unimplemented feature */
|
||||
includeTicketStats:boolean
|
||||
},
|
||||
/**The layout of the text transcripts. */
|
||||
textTranscriptStyle:ODTranscriptsJsonConfig_TranscriptsTextLayout,
|
||||
/**The layout of the HTML transcripts. */
|
||||
htmlTranscriptStyle:ODTranscriptsJsonConfig_TranscriptsHtmlLayout
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET CONSOLE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODLiveStatusManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODLiveStatusManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODLiveStatusManagerIdMappings extends api.ODLiveStatusManagerIdConstraint {
|
||||
"opendiscord:default-djdj-dev":api.ODLiveStatusUrlSource
|
||||
}
|
||||
|
||||
/**## ODMappedLiveStatusManager `class
|
||||
* A special class with types for the Open Ticket `ODLiveStatusManager` class.
|
||||
*/
|
||||
export class ODMappedLiveStatusManager extends api.ODLiveStatusManager<ODLiveStatusManagerIdMappings> {}
|
||||
@@ -0,0 +1,17 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET COOLDOWN MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODCooldownManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODCooldownManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODCooldownManagerIdMappings extends api.ODCooldownManagerIdConstraint {
|
||||
//"opendiscord:cooldown":api.ODCooldown
|
||||
}
|
||||
|
||||
/**## ODMappedCooldownManager `class
|
||||
* A special class with types for the Open Ticket `ODCooldownManager` class.
|
||||
*/
|
||||
export class ODMappedCooldownManager extends api.ODCooldownManager<ODCooldownManagerIdMappings> {}
|
||||
@@ -0,0 +1,88 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET DATABASE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import { ODTicketJson } from "../api/ticket"
|
||||
import { ODOptionJson } from "../api/option"
|
||||
|
||||
/**## ODDatabaseManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODDatabaseManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODDatabaseManagerIdMappings extends api.ODDatabaseManagerIdConstraint {
|
||||
"opendiscord:global":ODGlobalDatabase,
|
||||
"opendiscord:stats":ODStatsDatabase,
|
||||
"opendiscord:tickets":ODTicketsDatabase,
|
||||
"opendiscord:users":ODUsersDatabase,
|
||||
"opendiscord:options":ODOptionsDatabase,
|
||||
}
|
||||
|
||||
/**## ODMappedDatabaseManager `class
|
||||
* A special class with types for the Open Ticket `ODDatabaseManager` class.
|
||||
*/
|
||||
export class ODMappedDatabaseManager extends api.ODDatabaseManager<ODDatabaseManagerIdMappings> {}
|
||||
|
||||
/**## ODGlobalDatabase `class
|
||||
* A special class with types for the Open Ticket `database/global.json` database file
|
||||
*/
|
||||
export class ODGlobalDatabase extends api.ODFormattedJsonDatabase<ODGlobalDatabaseIdMappings> {}
|
||||
|
||||
/**## ODStatsDatabase `class
|
||||
* A special class with types for the Open Ticket `database/stats.json` database file
|
||||
*/
|
||||
export class ODStatsDatabase extends api.ODFormattedJsonDatabase {}
|
||||
|
||||
/**## ODTicketsDatabase `class
|
||||
* A special class with types for the Open Ticket `database/tickets.json` database file
|
||||
*/
|
||||
export class ODTicketsDatabase extends api.ODFormattedJsonDatabase<ODTicketsDatabaseIdMappings> {}
|
||||
|
||||
/**## ODUsersDatabase `class
|
||||
* A special class with types for the Open Ticket `database/users.json` database file
|
||||
*/
|
||||
export class ODUsersDatabase extends api.ODFormattedJsonDatabase<ODUsersDatabaseIdMappings> {}
|
||||
|
||||
/**## ODOptionsDatabase `class
|
||||
* A special class with types for the Open Ticket `database/options.json` database file
|
||||
*/
|
||||
export class ODOptionsDatabase extends api.ODFormattedJsonDatabase<ODOptionsDatabaseIdMappings> {}
|
||||
|
||||
/////////////////////////////////////////
|
||||
// DATABASE MAPPINGS, CATEGORIES & TYPES
|
||||
/////////////////////////////////////////
|
||||
|
||||
/**## ODGlobalDatabaseIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODGlobalDatabase` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODGlobalDatabaseIdMappings extends api.ODDatabaseIdConstraint {
|
||||
"opendiscord:panel-message":string,
|
||||
"opendiscord:panel-update":string,
|
||||
"opendiscord:option-suffix-counter":number,
|
||||
"opendiscord:option-suffix-history":string[],
|
||||
"opendiscord:last-version":string
|
||||
}
|
||||
|
||||
/**## ODTicketsDatabaseIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODTicketsDatabase` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODTicketsDatabaseIdMappings extends api.ODDatabaseIdConstraint {
|
||||
"opendiscord:ticket":ODTicketJson
|
||||
}
|
||||
|
||||
/**## ODUsersDatabaseIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODUsersDatabase` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODUsersDatabaseIdMappings extends api.ODDatabaseIdConstraint {
|
||||
"opendiscord:blacklist":ODTicketJson
|
||||
}
|
||||
|
||||
/**## ODOptionsDatabaseIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODOptionsDatabase` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODOptionsDatabaseIdMappings extends api.ODDatabaseIdConstraint {
|
||||
"opendiscord:used-option":ODOptionJson
|
||||
}
|
||||
@@ -0,0 +1,339 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET EVENT MAPPINGS
|
||||
///////////////////////////////////////
|
||||
|
||||
//BASE MAPPINGSS
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import * as discord from "discord.js"
|
||||
|
||||
//OPEN TICKET MAPPINGS
|
||||
import { ODMappedPluginClassManager, ODMappedPluginManager } from "./plugin"
|
||||
import { ODMappedConfigManager} from "./config"
|
||||
import { ODMappedDatabaseManager } from "./database"
|
||||
import { ODMappedFlagManager } from "./flag"
|
||||
import { ODMappedSessionManager } from "./session"
|
||||
import { ODMappedLanguageManager } from "./language"
|
||||
import { ODMappedCheckerFunctionManager, ODMappedCheckerManager, ODMappedCheckerTranslationRegister } from "./checker"
|
||||
import { ODMappedClientManager, ODMappedContextMenuManager, ODMappedSlashCommandManager, ODMappedTextCommandManager } from "./client"
|
||||
import { ODMappedBuilderManager, ODMappedButtonManager, ODMappedDropdownManager, ODMappedEmbedManager, ODMappedFileManager, ODMappedMessageManager, ODMappedModalManager } from "./builder"
|
||||
import { ODMappedAutocompleteResponderManager, ODMappedButtonResponderManager, ODMappedCommandResponderManager, ODMappedContextMenuResponderManager, ODMappedDropdownResponderManager, ODMappedModalResponderManager, ODMappedResponderManager } from "./responder"
|
||||
import { ODMappedActionManager } from "./action"
|
||||
import { ODMappedPermissionManager } from "./permission"
|
||||
import { ODMappedHelpMenuManager } from "./helpmenu"
|
||||
import { ODMappedStatisticManager } from "./statistic"
|
||||
import { ODMappedCodeManager } from "./code"
|
||||
import { ODMappedCooldownManager } from "./cooldown"
|
||||
import { ODMappedPostManager } from "./post"
|
||||
import { ODMappedVerifyBarManager } from "./verifybar"
|
||||
import { ODMappedStartScreenManager } from "./startscreen"
|
||||
import { ODMappedLiveStatusManager } from "./console"
|
||||
import { ODMappedProgressBarManager, ODMappedProgressBarRendererManager } from "./progressbar"
|
||||
|
||||
//OPEN TICKET MAPPINGSS
|
||||
import { ODOptionManager, ODTicketOption } from "../api/option"
|
||||
import { ODPanel, ODPanelManager } from "../api/panel"
|
||||
import { ODTicket, ODTicketClearFilter, ODTicketManager } from "../api/ticket"
|
||||
import { ODQuestionManager } from "../api/question"
|
||||
import { ODBlacklistManager } from "../api/blacklist"
|
||||
import { ODMappedTranscriptManager } from "../api/transcript"
|
||||
import { ODRole, ODRoleManager } from "../api/role"
|
||||
import { ODMappedPriorityManager, ODPriorityLevel } from "../api/priority"
|
||||
|
||||
/**## ODEventManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODEventManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODEventManagerIdMappings extends api.ODEventManagerIdConstraint {
|
||||
//error handling
|
||||
"onErrorHandling": api.ODEvent<(error:Error, origin:NodeJS.UncaughtExceptionOrigin) => api.ODPromiseVoid>
|
||||
"afterErrorHandling": api.ODEvent<(error:Error, origin:NodeJS.UncaughtExceptionOrigin, message:api.ODError) => api.ODPromiseVoid>
|
||||
|
||||
//plugins
|
||||
"afterPluginsLoaded": api.ODEvent<(plugins:ODMappedPluginManager) => api.ODPromiseVoid>
|
||||
"onPluginClassLoad": api.ODEvent<(classes:ODMappedPluginClassManager, plugins:ODMappedPluginManager) => api.ODPromiseVoid>
|
||||
"afterPluginClassesLoaded": api.ODEvent<(classes:ODMappedPluginClassManager, plugins:ODMappedPluginManager) => api.ODPromiseVoid>
|
||||
|
||||
//flags
|
||||
"onFlagLoad": api.ODEvent<(flags:ODMappedFlagManager) => api.ODPromiseVoid>
|
||||
"afterFlagsLoaded": api.ODEvent<(flags:ODMappedFlagManager) => api.ODPromiseVoid>
|
||||
"onFlagInit": api.ODEvent<(flags:ODMappedFlagManager) => api.ODPromiseVoid>
|
||||
"afterFlagsInitiated": api.ODEvent<(flags:ODMappedFlagManager) => api.ODPromiseVoid>
|
||||
|
||||
//progress bars
|
||||
"onProgressBarRendererLoad": api.ODEvent<(renderers:ODMappedProgressBarRendererManager) => api.ODPromiseVoid>
|
||||
"afterProgressBarRenderersLoaded": api.ODEvent<(renderers:ODMappedProgressBarRendererManager) => api.ODPromiseVoid>
|
||||
"onProgressBarLoad": api.ODEvent<(progressbars:ODMappedProgressBarManager) => api.ODPromiseVoid>
|
||||
"afterProgressBarsLoaded": api.ODEvent<(progressbars:ODMappedProgressBarManager) => api.ODPromiseVoid>
|
||||
|
||||
//configs
|
||||
"onConfigLoad": api.ODEvent<(configs:ODMappedConfigManager) => api.ODPromiseVoid>
|
||||
"afterConfigsLoaded": api.ODEvent<(configs:ODMappedConfigManager) => api.ODPromiseVoid>
|
||||
"onConfigInit": api.ODEvent<(configs:ODMappedConfigManager) => api.ODPromiseVoid>
|
||||
"afterConfigsInitiated": api.ODEvent<(configs:ODMappedConfigManager) => api.ODPromiseVoid>
|
||||
|
||||
//databases
|
||||
"onDatabaseLoad": api.ODEvent<(databases:ODMappedDatabaseManager) => api.ODPromiseVoid>
|
||||
"afterDatabasesLoaded": api.ODEvent<(databases:ODMappedDatabaseManager) => api.ODPromiseVoid>
|
||||
"onDatabaseInit": api.ODEvent<(databases:ODMappedDatabaseManager) => api.ODPromiseVoid>
|
||||
"afterDatabasesInitiated": api.ODEvent<(databases:ODMappedDatabaseManager) => api.ODPromiseVoid>
|
||||
|
||||
//languages
|
||||
"onLanguageLoad": api.ODEvent<(languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
"afterLanguagesLoaded": api.ODEvent<(languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
"onLanguageInit": api.ODEvent<(languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
"afterLanguagesInitiated": api.ODEvent<(languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
"onLanguageSelect": api.ODEvent<(languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
"afterLanguagesSelected": api.ODEvent<(main:api.ODLanguage|null, backup:api.ODLanguage|null, languages:ODMappedLanguageManager) => api.ODPromiseVoid>
|
||||
|
||||
//sessions
|
||||
"onSessionLoad": api.ODEvent<(languages:ODMappedSessionManager) => api.ODPromiseVoid>
|
||||
"afterSessionsLoaded": api.ODEvent<(languages:ODMappedSessionManager) => api.ODPromiseVoid>
|
||||
|
||||
//config checkers
|
||||
"onCheckerLoad": api.ODEvent<(checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"afterCheckersLoaded": api.ODEvent<(checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"onCheckerFunctionLoad": api.ODEvent<(functions:ODMappedCheckerFunctionManager, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"afterCheckerFunctionsLoaded": api.ODEvent<(functions:ODMappedCheckerFunctionManager, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"onCheckerExecute": api.ODEvent<(checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"afterCheckersExecuted": api.ODEvent<(result:api.ODCheckerResult, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"onCheckerTranslationLoad": api.ODEvent<(translations:ODMappedCheckerTranslationRegister, enabled:boolean, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"afterCheckerTranslationsLoaded": api.ODEvent<(translations:ODMappedCheckerTranslationRegister, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"onCheckerRender": api.ODEvent<(renderer:api.ODCheckerRenderer, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"afterCheckersRendered": api.ODEvent<(renderer:api.ODCheckerRenderer, checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
"onCheckerQuit": api.ODEvent<(checkers:ODMappedCheckerManager) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before client
|
||||
"onPluginBeforeClientLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeClientLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//client configuration
|
||||
"onClientLoad": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterClientLoaded": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onClientInit": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterClientInitiated": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onClientReady": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterClientReady": api.ODEvent<(client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onClientActivityLoad": api.ODEvent<(activity:api.ODClientActivityManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterClientActivityLoaded": api.ODEvent<(activity:api.ODClientActivityManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onClientActivityInit": api.ODEvent<(activity:api.ODClientActivityManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterClientActivityInitiated": api.ODEvent<(activity:api.ODClientActivityManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
|
||||
//priority levels
|
||||
"onPriorityLoad": api.ODEvent<(priorities:ODMappedPriorityManager) => api.ODPromiseVoid>
|
||||
"afterPrioritiesLoaded": api.ODEvent<(priorities:ODMappedPriorityManager) => api.ODPromiseVoid>
|
||||
|
||||
//client slash commands
|
||||
"onSlashCommandLoad": api.ODEvent<(slash:ODMappedSlashCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterSlashCommandsLoaded": api.ODEvent<(slash:ODMappedSlashCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onSlashCommandRegister": api.ODEvent<(slash:ODMappedSlashCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterSlashCommandsRegistered": api.ODEvent<(slash:ODMappedSlashCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
|
||||
//client context menus
|
||||
"onContextMenuLoad": api.ODEvent<(menu:ODMappedContextMenuManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterContextMenusLoaded": api.ODEvent<(menu:ODMappedContextMenuManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"onContextMenuRegister": api.ODEvent<(menu:ODMappedContextMenuManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterContextMenusRegistered": api.ODEvent<(menu:ODMappedContextMenuManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
|
||||
//client text commands
|
||||
"onTextCommandLoad": api.ODEvent<(text:ODMappedTextCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
"afterTextCommandsLoaded": api.ODEvent<(text:ODMappedTextCommandManager, client:ODMappedClientManager) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before managers
|
||||
"onPluginBeforeManagerLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeManagerLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//questions
|
||||
"onQuestionLoad": api.ODEvent<(questions:ODQuestionManager) => api.ODPromiseVoid>
|
||||
"afterQuestionsLoaded": api.ODEvent<(questions:ODQuestionManager) => api.ODPromiseVoid>
|
||||
|
||||
//options
|
||||
"onOptionLoad": api.ODEvent<(options:ODOptionManager) => api.ODPromiseVoid>
|
||||
"afterOptionsLoaded": api.ODEvent<(options:ODOptionManager) => api.ODPromiseVoid>
|
||||
|
||||
//panels
|
||||
"onPanelLoad": api.ODEvent<(panels:ODPanelManager) => api.ODPromiseVoid>
|
||||
"afterPanelsLoaded": api.ODEvent<(panels:ODPanelManager) => api.ODPromiseVoid>
|
||||
"onPanelSpawn": api.ODEvent<(panel:ODPanel) => api.ODPromiseVoid>
|
||||
"afterPanelSpawned": api.ODEvent<(panel:ODPanel) => api.ODPromiseVoid>
|
||||
|
||||
//tickets
|
||||
"onTicketLoad": api.ODEvent<(tickets:ODTicketManager) => api.ODPromiseVoid>
|
||||
"afterTicketsLoaded": api.ODEvent<(tickets:ODTicketManager) => api.ODPromiseVoid>
|
||||
|
||||
//ticket creation
|
||||
"onTicketChannelCreation": api.ODEvent<(option:ODTicketOption, user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTicketChannelCreated": api.ODEvent<(option:ODTicketOption, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
"onTicketChannelDeletion": api.ODEvent<(ticket:ODTicket, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTicketChannelDeleted": api.ODEvent<(ticket:ODTicket, user:discord.User) => api.ODPromiseVoid>
|
||||
"onTicketPermissionsCreated": api.ODEvent<(option:ODTicketOption, permissions:ODMappedPermissionManager, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTicketPermissionsCreated": api.ODEvent<(option:ODTicketOption, permissions:ODMappedPermissionManager, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
"onTicketMainMessageCreated": api.ODEvent<(ticket:ODTicket, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTicketMainMessageCreated": api.ODEvent<(ticket:ODTicket, message:discord.Message, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
|
||||
|
||||
//ticket actions
|
||||
"onTicketCreate": api.ODEvent<(creator:discord.User) => api.ODPromiseVoid>
|
||||
"afterTicketCreated": api.ODEvent<(ticket:ODTicket, creator:discord.User, channel:discord.GuildTextBasedChannel) => api.ODPromiseVoid>
|
||||
"onTicketClose": api.ODEvent<(ticket:ODTicket, closer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketClosed": api.ODEvent<(ticket:ODTicket, closer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketReopen": api.ODEvent<(ticket:ODTicket, reopener:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketReopened": api.ODEvent<(ticket:ODTicket, reopener:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketDelete": api.ODEvent<(ticket:ODTicket, deleter:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketDeleted": api.ODEvent<(ticket:ODTicket, deleter:discord.User, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketMove": api.ODEvent<(ticket:ODTicket, mover:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketMoved": api.ODEvent<(ticket:ODTicket, mover:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketClaim": api.ODEvent<(ticket:ODTicket, claimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketClaimed": api.ODEvent<(ticket:ODTicket, claimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketUnclaim": api.ODEvent<(ticket:ODTicket, unclaimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketUnclaimed": api.ODEvent<(ticket:ODTicket, unclaimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketPin": api.ODEvent<(ticket:ODTicket, pinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketPinned": api.ODEvent<(ticket:ODTicket, pinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketUnpin": api.ODEvent<(ticket:ODTicket, unpinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketUnpinned": api.ODEvent<(ticket:ODTicket, unpinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketUserAdd": api.ODEvent<(ticket:ODTicket, adder:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketUserAdded": api.ODEvent<(ticket:ODTicket, adder:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketUserRemove": api.ODEvent<(ticket:ODTicket, remover:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketUserRemoved": api.ODEvent<(ticket:ODTicket, remover:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketRename": api.ODEvent<(ticket:ODTicket, renamer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketRenamed": api.ODEvent<(ticket:ODTicket, renamer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketsClear": api.ODEvent<(tickets:ODTicket[], clearer:discord.User, channel:discord.GuildTextBasedChannel, filter:ODTicketClearFilter) => api.ODPromiseVoid>
|
||||
"afterTicketsCleared": api.ODEvent<(tickets:ODTicket[], clearer:discord.User, channel:discord.GuildTextBasedChannel, filter:ODTicketClearFilter) => api.ODPromiseVoid>
|
||||
"onTicketTopicChange": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldTopic:string, newTopic:string) => api.ODPromiseVoid>
|
||||
"afterTicketTopicChanged": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldTopic:string, newTopic:string) => api.ODPromiseVoid>
|
||||
"onTicketPriorityChange": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldPriority:ODPriorityLevel, newPriority:ODPriorityLevel, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketPriorityChanged": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldPriority:ODPriorityLevel, newPriority:ODPriorityLevel, reason:string|null) => api.ODPromiseVoid>
|
||||
"onTicketTransfer": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldCreator:discord.User, newCreator:discord.User, reason:string|null) => api.ODPromiseVoid>
|
||||
"afterTicketTransferred": api.ODEvent<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldCreator:discord.User, newCreator:discord.User, reason:string|null) => api.ODPromiseVoid>
|
||||
|
||||
//roles
|
||||
"onRoleLoad": api.ODEvent<(roles:ODRoleManager) => api.ODPromiseVoid>
|
||||
"afterRolesLoaded": api.ODEvent<(roles:ODRoleManager) => api.ODPromiseVoid>
|
||||
"onRoleUpdate": api.ODEvent<(user:discord.User,role:ODRole) => api.ODPromiseVoid>
|
||||
"afterRolesUpdated": api.ODEvent<(user:discord.User,role:ODRole) => api.ODPromiseVoid>
|
||||
|
||||
//blacklist
|
||||
"onBlacklistLoad": api.ODEvent<(blacklist:ODBlacklistManager) => api.ODPromiseVoid>
|
||||
"afterBlacklistLoaded": api.ODEvent<(blacklist:ODBlacklistManager) => api.ODPromiseVoid>
|
||||
|
||||
//transcripts
|
||||
"onTranscriptCompilerLoad": api.ODEvent<(transcripts:ODMappedTranscriptManager) => api.ODPromiseVoid>
|
||||
"afterTranscriptCompilersLoaded": api.ODEvent<(transcripts:ODMappedTranscriptManager) => api.ODPromiseVoid>
|
||||
"onTranscriptHistoryLoad": api.ODEvent<(transcripts:ODMappedTranscriptManager) => api.ODPromiseVoid>
|
||||
"afterTranscriptHistoryLoaded": api.ODEvent<(transcripts:ODMappedTranscriptManager) => api.ODPromiseVoid>
|
||||
|
||||
//transcript creation
|
||||
"onTranscriptCreate": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTranscriptCreated": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"onTranscriptInit": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTranscriptInitiated": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"onTranscriptCompile": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTranscriptCompiled": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"onTranscriptReady": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
"afterTranscriptReady": api.ODEvent<(transcripts:ODMappedTranscriptManager,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before builders
|
||||
"onPluginBeforeBuilderLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeBuilderLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//builders
|
||||
"onButtonBuilderLoad": api.ODEvent<(buttons:ODMappedButtonManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterButtonBuildersLoaded": api.ODEvent<(buttons:ODMappedButtonManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onDropdownBuilderLoad": api.ODEvent<(dropdowns:ODMappedDropdownManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterDropdownBuildersLoaded": api.ODEvent<(dropdowns:ODMappedDropdownManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onFileBuilderLoad": api.ODEvent<(files:ODMappedFileManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterFileBuildersLoaded": api.ODEvent<(files:ODMappedFileManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onEmbedBuilderLoad": api.ODEvent<(embeds:ODMappedEmbedManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterEmbedBuildersLoaded": api.ODEvent<(embeds:ODMappedEmbedManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onMessageBuilderLoad": api.ODEvent<(messages:ODMappedMessageManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterMessageBuildersLoaded": api.ODEvent<(messages:ODMappedMessageManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onModalBuilderLoad": api.ODEvent<(modals:ODMappedModalManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterModalBuildersLoaded": api.ODEvent<(modals:ODMappedModalManager, builders:ODMappedBuilderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before responders
|
||||
"onPluginBeforeResponderLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeResponderLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//responders
|
||||
"onCommandResponderLoad": api.ODEvent<(commands:ODMappedCommandResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterCommandRespondersLoaded": api.ODEvent<(commands:ODMappedCommandResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onButtonResponderLoad": api.ODEvent<(buttons:ODMappedButtonResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterButtonRespondersLoaded": api.ODEvent<(buttons:ODMappedButtonResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onDropdownResponderLoad": api.ODEvent<(dropdowns:ODMappedDropdownResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterDropdownRespondersLoaded": api.ODEvent<(dropdowns:ODMappedDropdownResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onModalResponderLoad": api.ODEvent<(modals:ODMappedModalResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterModalRespondersLoaded": api.ODEvent<(modals:ODMappedModalResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onContextMenuResponderLoad": api.ODEvent<(menus:ODMappedContextMenuResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterContextMenuRespondersLoaded": api.ODEvent<(menus:ODMappedContextMenuResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"onAutocompleteResponderLoad": api.ODEvent<(autocomplete:ODMappedAutocompleteResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterAutocompleteRespondersLoaded": api.ODEvent<(autocomplete:ODMappedAutocompleteResponderManager, responders:ODMappedResponderManager, actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before finalizations
|
||||
"onPluginBeforeFinalizationLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeFinalizationLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//actions
|
||||
"onActionLoad": api.ODEvent<(actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
"afterActionsLoaded": api.ODEvent<(actions:ODMappedActionManager) => api.ODPromiseVoid>
|
||||
|
||||
//verifybars
|
||||
"onVerifyBarLoad": api.ODEvent<(verifybars:ODMappedVerifyBarManager) => api.ODPromiseVoid>
|
||||
"afterVerifyBarsLoaded": api.ODEvent<(verifybars:ODMappedVerifyBarManager) => api.ODPromiseVoid>
|
||||
|
||||
//permissions
|
||||
"onPermissionLoad": api.ODEvent<(permissions:ODMappedPermissionManager) => api.ODPromiseVoid>
|
||||
"afterPermissionsLoaded": api.ODEvent<(permissions:ODMappedPermissionManager) => api.ODPromiseVoid>
|
||||
|
||||
//posts
|
||||
"onPostLoad": api.ODEvent<(posts:ODMappedPostManager) => api.ODPromiseVoid>
|
||||
"afterPostsLoaded": api.ODEvent<(posts:ODMappedPostManager) => api.ODPromiseVoid>
|
||||
"onPostInit": api.ODEvent<(posts:ODMappedPostManager) => api.ODPromiseVoid>
|
||||
"afterPostsInitiated": api.ODEvent<(posts:ODMappedPostManager) => api.ODPromiseVoid>
|
||||
|
||||
//cooldowns
|
||||
"onCooldownLoad": api.ODEvent<(cooldowns:ODMappedCooldownManager) => api.ODPromiseVoid>
|
||||
"afterCooldownsLoaded": api.ODEvent<(cooldowns:ODMappedCooldownManager) => api.ODPromiseVoid>
|
||||
"onCooldownInit": api.ODEvent<(cooldowns:ODMappedCooldownManager) => api.ODPromiseVoid>
|
||||
"afterCooldownsInitiated": api.ODEvent<(cooldowns:ODMappedCooldownManager) => api.ODPromiseVoid>
|
||||
|
||||
//help menu
|
||||
"onHelpMenuCategoryLoad": api.ODEvent<(menu:ODMappedHelpMenuManager) => api.ODPromiseVoid>
|
||||
"afterHelpMenuCategoriesLoaded": api.ODEvent<(menu:ODMappedHelpMenuManager) => api.ODPromiseVoid>
|
||||
"onHelpMenuComponentLoad": api.ODEvent<(menu:ODMappedHelpMenuManager) => api.ODPromiseVoid>
|
||||
"afterHelpMenuComponentsLoaded": api.ODEvent<(menu:ODMappedHelpMenuManager) => api.ODPromiseVoid>
|
||||
|
||||
//stats
|
||||
"onStatisticScopeLoad": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
"afterStatisticScopesLoaded": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
"onStatisticLoad": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
"afterStatisticsLoaded": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
"onStatisticInit": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
"afterStatisticsInitiated": api.ODEvent<(stats:ODMappedStatisticManager) => api.ODPromiseVoid>
|
||||
|
||||
//plugin loading before code
|
||||
"onPluginBeforeCodeLoad": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
"afterPluginBeforeCodeLoaded": api.ODEvent<() => api.ODPromiseVoid>,
|
||||
|
||||
//code
|
||||
"onCodeLoad": api.ODEvent<(code:ODMappedCodeManager) => api.ODPromiseVoid>
|
||||
"afterCodeLoaded": api.ODEvent<(code:ODMappedCodeManager) => api.ODPromiseVoid>
|
||||
"onCodeExecute": api.ODEvent<(code:ODMappedCodeManager) => api.ODPromiseVoid>
|
||||
"afterCodeExecuted": api.ODEvent<(code:ODMappedCodeManager) => api.ODPromiseVoid>
|
||||
|
||||
//livestatus
|
||||
"onLiveStatusSourceLoad": api.ODEvent<(livestatus:ODMappedLiveStatusManager) => api.ODPromiseVoid>
|
||||
"afterLiveStatusSourcesLoaded": api.ODEvent<(livestatus:ODMappedLiveStatusManager) => api.ODPromiseVoid>
|
||||
|
||||
//startscreen
|
||||
"onStartScreenLoad": api.ODEvent<(startscreen:ODMappedStartScreenManager) => api.ODPromiseVoid>
|
||||
"afterStartScreensLoaded": api.ODEvent<(startscreen:ODMappedStartScreenManager) => api.ODPromiseVoid>
|
||||
"onStartScreenRender": api.ODEvent<(startscreen:ODMappedStartScreenManager) => api.ODPromiseVoid>
|
||||
"afterStartScreensRendered": api.ODEvent<(startscreen:ODMappedStartScreenManager) => api.ODPromiseVoid>
|
||||
|
||||
//ready
|
||||
"beforeReadyForUsage": api.ODEvent<() => api.ODPromiseVoid>
|
||||
"onReadyForUsage": api.ODEvent<() => api.ODPromiseVoid>
|
||||
}
|
||||
|
||||
/**## ODMappedEventManager `class
|
||||
* A special class with types for the Open Ticket `ODEventManager` class.
|
||||
*/
|
||||
export class ODMappedEventManager extends api.ODEventManager<ODEventManagerIdMappings> {}
|
||||
@@ -0,0 +1,32 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET PROCESS MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODFlagManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODFlagManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODFlagManagerIdMappings extends api.ODFlagManagerIdConstraint {
|
||||
"opendiscord:no-migration":api.ODFlag,
|
||||
"opendiscord:dev-config":api.ODFlag,
|
||||
"opendiscord:dev-database":api.ODFlag,
|
||||
"opendiscord:debug":api.ODFlag,
|
||||
"opendiscord:crash":api.ODFlag,
|
||||
"opendiscord:no-transcripts":api.ODFlag,
|
||||
"opendiscord:no-checker":api.ODFlag,
|
||||
"opendiscord:checker":api.ODFlag,
|
||||
"opendiscord:no-easter":api.ODFlag,
|
||||
"opendiscord:no-plugins":api.ODFlag,
|
||||
"opendiscord:soft-plugins":api.ODFlag,
|
||||
"opendiscord:force-slash-update":api.ODFlag,
|
||||
"opendiscord:no-compile":api.ODFlag,
|
||||
"opendiscord:compile-only":api.ODFlag,
|
||||
"opendiscord:silent":api.ODFlag,
|
||||
"opendiscord:cli":api.ODFlag,
|
||||
}
|
||||
|
||||
/**## ODMappedFlagManager `class
|
||||
* A special class with types for the Open Ticket `ODFlagManager` class.
|
||||
*/
|
||||
export class ODMappedFlagManager extends api.ODFlagManager<ODFlagManagerIdMappings> {}
|
||||
@@ -0,0 +1,27 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET FUSE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
export interface ODOpenTicketFuseList {
|
||||
/**Load the default Open Ticket questions (from `config/questions.json`) */
|
||||
questionLoading:boolean,
|
||||
/**Load the default Open Ticket options (from `config/options.json`) */
|
||||
optionLoading:boolean,
|
||||
/**Load the default Open Ticket panels (from `config/panels.json`) */
|
||||
panelLoading:boolean,
|
||||
/**Load the default Open Ticket tickets (from `database/tickets.json`) */
|
||||
ticketLoading:boolean,
|
||||
/**Load the default Open Ticket reaction roles (from `config/options.json`) */
|
||||
roleLoading:boolean,
|
||||
/**Load the default Open Ticket blacklist (from `database/users.json`) */
|
||||
blacklistLoading:boolean,
|
||||
/**Load the default Open Ticket transcript compilers. */
|
||||
transcriptCompilerLoading:boolean,
|
||||
/**Load the default Open Ticket transcript history (from `database/transcripts.json`) */
|
||||
transcriptHistoryLoading:boolean,
|
||||
/**The interval in milliseconds that are between autoclose timeout checkers. */
|
||||
autocloseCheckInterval:number,
|
||||
/**The interval in milliseconds that are between autodelete timeout checkers. */
|
||||
autodeleteCheckInterval:number,
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET HELP MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/** (CONTRIBUTOR GUIDE) HOW TO ADD NEW COMMANDS?
|
||||
* - Register the command in loadAllSlashCommands() & loadAllTextCommands() in (./src/data/framework/commandLoader.ts)
|
||||
* - Add autocomplete for the command in OD(Slash/Text)CommandManagerIds_Default in (./src/core/api/defaults/client.ts)
|
||||
* - Add the command to the help menu in (./src/data/framework/helpMenuLoader.ts)
|
||||
* - If required, new config variables should be added (incl. logs, dm-logs & permissions).
|
||||
* - Update the Open Ticket Documentation.
|
||||
* - If the command contains complex logic or can be executed from a button/dropdown, it should be placed inside an `ODAction`.
|
||||
* - Check all files, test the bot carefully & try a lot of different scenario's with different settings.
|
||||
*/
|
||||
|
||||
/**## ODHelpMenuManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODHelpMenuManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODHelpMenuManagerIdMappings extends api.ODHelpMenuManagerIdConstraint {
|
||||
"opendiscord:general":ODGeneralHelpMenuCategory,
|
||||
"opendiscord:ticket-basic":ODBasicTicketHelpMenuCategory,
|
||||
"opendiscord:ticket-advanced":ODAdvancedTicketHelpMenuCategory,
|
||||
"opendiscord:ticket-user":ODUserTicketHelpMenuCategory,
|
||||
"opendiscord:admin":ODAdminHelpMenuCategory,
|
||||
"opendiscord:advanced":ODAdvancedHelpMenuCategory,
|
||||
"opendiscord:extra":ODExtraHelpMenuCategory
|
||||
}
|
||||
|
||||
/**## ODMappedHelpMenuManager `class
|
||||
* A special class with types for the Open Ticket `ODHelpMenuManager` class.
|
||||
*/
|
||||
export class ODMappedHelpMenuManager extends api.ODHelpMenuManager<ODHelpMenuManagerIdMappings> {}
|
||||
|
||||
/**## ODGeneralHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `General Commands` help menu category.
|
||||
*/
|
||||
export class ODGeneralHelpMenuCategory extends api.ODHelpMenuCategory<ODGeneralHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODBasicTicketHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `Basic Ticket Commands` help menu category.
|
||||
*/
|
||||
export class ODBasicTicketHelpMenuCategory extends api.ODHelpMenuCategory<ODBasicTicketHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODAdvancedTicketHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `Advanced Ticket Commands` help menu category.
|
||||
*/
|
||||
export class ODAdvancedTicketHelpMenuCategory extends api.ODHelpMenuCategory<ODAdvancedTicketHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODUserTicketHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `User ticket Commands` help menu category.
|
||||
*/
|
||||
export class ODUserTicketHelpMenuCategory extends api.ODHelpMenuCategory<ODUserTicketHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODAdminHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `Admin Commands` help menu category.
|
||||
*/
|
||||
export class ODAdminHelpMenuCategory extends api.ODHelpMenuCategory<ODAdminHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODAdvancedHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `Advanced Commands` help menu category.
|
||||
*/
|
||||
export class ODAdvancedHelpMenuCategory extends api.ODHelpMenuCategory<ODAdvancedHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/**## ODExtraHelpMenuCategory `class
|
||||
* A special class with types for the Open Ticket `Extra Commands` help menu category.
|
||||
*/
|
||||
export class ODExtraHelpMenuCategory extends api.ODHelpMenuCategory<ODExtraHelpMenuCategoryIdMappings> {}
|
||||
|
||||
/////////////////////////////////////////
|
||||
// HELP MENU MAPPINGS, CATEGORIES & TYPES
|
||||
/////////////////////////////////////////
|
||||
|
||||
/**## ODGeneralHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODGeneralHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODGeneralHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:help":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:ticket":api.ODHelpMenuCommandComponent|null
|
||||
}
|
||||
|
||||
/**## ODBasicTicketHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODBasicTicketHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODBasicTicketHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:close":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:delete":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:reopen":api.ODHelpMenuCommandComponent
|
||||
}
|
||||
|
||||
/**## ODAdvancedTicketHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODAdvancedTicketHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODAdvancedTicketHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:pin":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:unpin":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:move":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:rename":api.ODHelpMenuCommandComponent
|
||||
}
|
||||
|
||||
/**## ODUserTicketHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODUserTicketHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODUserTicketHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:claim":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:unclaim":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:add":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:remove":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:transfer":api.ODHelpMenuCommandComponent,
|
||||
}
|
||||
|
||||
/**## ODAdminHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODAdminHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODAdminHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:panel":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:blacklist-view":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:blacklist-add":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:blacklist-remove":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:blacklist-get":api.ODHelpMenuCommandComponent
|
||||
}
|
||||
|
||||
/**## ODAdvancedHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODAdvancedHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODAdvancedHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
"opendiscord:stats-global":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:stats-reset":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:stats-ticket":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:stats-user":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:autoclose-disable":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:autoclose-enable":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:autodelete-disable":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:autodelete-enable":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:topic-set":api.ODHelpMenuCommandComponent,
|
||||
"opendiscord:priority-set":api.ODHelpMenuCommandComponent,
|
||||
}
|
||||
|
||||
/**## ODExtraHelpMenuCategoryIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODExtraHelpMenuCategory` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODExtraHelpMenuCategoryIdMappings extends api.ODHelpMenuCategoryIdConstraint {
|
||||
//"opendiscord:help-component":api.ODHelpMenuCommandComponent
|
||||
}
|
||||
@@ -0,0 +1,628 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET LANGUAGE MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/** (CONTRIBUTOR GUIDE) HOW TO ADD NEW LANGUAGES?
|
||||
* - Add the file to (./languages/) and make sure the metadata is valid.
|
||||
* - Register the language in loadAllLanguages() in (./src/data/framework/languageLoader.ts).
|
||||
* - Add autocomplete for the language in ODLanguageManagerIds_Default in (./src/core/api/defaults/language.ts).
|
||||
* - Update the language list in the README.md translator list.
|
||||
* - Update the 2 language counters in the README.md features list.
|
||||
* - Update the Open Ticket Documentation.
|
||||
*/
|
||||
|
||||
/**## ODLanguageManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODLanguageManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODLanguageManagerIdMappings extends api.ODLanguageManagerIdConstraint {
|
||||
"opendiscord:custom":api.ODLanguage,
|
||||
"opendiscord:english":api.ODLanguage,
|
||||
"opendiscord:dutch":api.ODLanguage,
|
||||
"opendiscord:portuguese":api.ODLanguage,
|
||||
"opendiscord:czech":api.ODLanguage,
|
||||
"opendiscord:german":api.ODLanguage,
|
||||
"opendiscord:catalan":api.ODLanguage,
|
||||
"opendiscord:hungarian":api.ODLanguage,
|
||||
"opendiscord:spanish":api.ODLanguage,
|
||||
"opendiscord:romanian":api.ODLanguage,
|
||||
"opendiscord:ukrainian":api.ODLanguage,
|
||||
"opendiscord:indonesian":api.ODLanguage,
|
||||
"opendiscord:italian":api.ODLanguage,
|
||||
"opendiscord:estonian":api.ODLanguage,
|
||||
"opendiscord:finnish":api.ODLanguage,
|
||||
"opendiscord:danish":api.ODLanguage,
|
||||
"opendiscord:thai":api.ODLanguage,
|
||||
"opendiscord:turkish":api.ODLanguage,
|
||||
"opendiscord:french":api.ODLanguage,
|
||||
"opendiscord:arabic":api.ODLanguage,
|
||||
"opendiscord:hindi":api.ODLanguage,
|
||||
"opendiscord:lithuanian":api.ODLanguage,
|
||||
"opendiscord:polish":api.ODLanguage,
|
||||
"opendiscord:latvian":api.ODLanguage,
|
||||
"opendiscord:norwegian":api.ODLanguage,
|
||||
"opendiscord:russian":api.ODLanguage,
|
||||
"opendiscord:swedish":api.ODLanguage,
|
||||
"opendiscord:vietnamese":api.ODLanguage,
|
||||
"opendiscord:persian":api.ODLanguage,
|
||||
"opendiscord:bengali":api.ODLanguage,
|
||||
"opendiscord:greek":api.ODLanguage,
|
||||
"opendiscord:japanese":api.ODLanguage,
|
||||
"opendiscord:korean":api.ODLanguage,
|
||||
"opendiscord:kurdish":api.ODLanguage,
|
||||
"opendiscord:simplified-chinese":api.ODLanguage,
|
||||
"opendiscord:traditional-chinese":api.ODLanguage,
|
||||
"opendiscord:slovenian":api.ODLanguage,
|
||||
"opendiscord:tamil":api.ODLanguage,
|
||||
//ADD NEW LANGUAGES HERE!!!
|
||||
}
|
||||
|
||||
/**## ODLanguageManagerTranslationIdMappings `type`
|
||||
* A list of all available translation IDs in the default `ODLanguageManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export type ODLanguageManagerTranslationIdMappings = (
|
||||
"checker.system.headerOpenTicket"|
|
||||
"checker.system.typeError"|
|
||||
"checker.system.typeWarning"|
|
||||
"checker.system.typeInfo"|
|
||||
"checker.system.headerConfigChecker"|
|
||||
"checker.system.headerDescription"|
|
||||
"checker.system.footerError"|
|
||||
"checker.system.footerWarning"|
|
||||
"checker.system.footerSupport"|
|
||||
"checker.system.compactInformation"|
|
||||
"checker.system.dataPath"|
|
||||
"checker.system.dataDocs"|
|
||||
"checker.system.dataMessages"|
|
||||
|
||||
"checker.messages.invalidType"|
|
||||
"checker.messages.propertyMissing"|
|
||||
"checker.messages.propertyOptional"|
|
||||
"checker.messages.objectDisabled"|
|
||||
"checker.messages.nullInvalid"|
|
||||
"checker.messages.switchInvalidType"|
|
||||
"checker.messages.objectSwitchInvalid"|
|
||||
|
||||
"checker.messages.stringTooShort"|
|
||||
"checker.messages.stringTooLong"|
|
||||
"checker.messages.stringLengthInvalid"|
|
||||
"checker.messages.stringStartsWith"|
|
||||
"checker.messages.stringEndsWith"|
|
||||
"checker.messages.stringContains"|
|
||||
"checker.messages.stringChoices"|
|
||||
"checker.messages.stringRegex"|
|
||||
"checker.messages.stringInvertedContains"|
|
||||
"checker.messages.stringLowercase"|
|
||||
"checker.messages.stringUppercase"|
|
||||
"checker.messages.stringSpecialCharacters"|
|
||||
"checker.messages.stringNoSpaces"|
|
||||
"checker.messages.stringCapitalWord"|
|
||||
"checker.messages.stringCapitalSentence"|
|
||||
"checker.messages.stringPunctuation"|
|
||||
|
||||
"checker.messages.numberTooShort"|
|
||||
"checker.messages.numberTooLong"|
|
||||
"checker.messages.numberLengthInvalid"|
|
||||
"checker.messages.numberTooSmall"|
|
||||
"checker.messages.numberTooLarge"|
|
||||
"checker.messages.numberNotEqual"|
|
||||
"checker.messages.numberStep"|
|
||||
"checker.messages.numberStepOffset"|
|
||||
"checker.messages.numberStartsWith"|
|
||||
"checker.messages.numberEndsWith"|
|
||||
"checker.messages.numberContains"|
|
||||
"checker.messages.numberChoices"|
|
||||
"checker.messages.numberFloat"|
|
||||
"checker.messages.numberNegative"|
|
||||
"checker.messages.numberPositive"|
|
||||
"checker.messages.numberZero"|
|
||||
"checker.messages.numberNan"|
|
||||
"checker.messages.numberInvertedContains"|
|
||||
|
||||
"checker.messages.booleanTrue"|
|
||||
"checker.messages.booleanFalse"|
|
||||
|
||||
"checker.messages.arrayEmptyDisabled"|
|
||||
"checker.messages.arrayEmptyRequired"|
|
||||
"checker.messages.arrayTooShort"|
|
||||
"checker.messages.arrayTooLong"|
|
||||
"checker.messages.arrayLengthInvalid"|
|
||||
"checker.messages.arrayInvalidTypes"|
|
||||
"checker.messages.arrayDouble"|
|
||||
|
||||
"checker.messages.discordInvalidId"|
|
||||
"checker.messages.discordInvalidIdOptions"|
|
||||
"checker.messages.discordInvalidToken"|
|
||||
"checker.messages.colorInvalid"|
|
||||
"checker.messages.emojiTooShort"|
|
||||
"checker.messages.emojiTooLong"|
|
||||
"checker.messages.emojiCustom"|
|
||||
"checker.messages.emojiInvalid"|
|
||||
"checker.messages.urlInvalid"|
|
||||
"checker.messages.urlInvalidHttp"|
|
||||
"checker.messages.urlInvalidProtocol"|
|
||||
"checker.messages.urlInvalidHostname"|
|
||||
"checker.messages.urlInvalidExtension"|
|
||||
"checker.messages.urlInvalidPath"|
|
||||
"checker.messages.idNotUnique"|
|
||||
"checker.messages.idNonExistent"|
|
||||
"checker.messages.invalidLanguage"|
|
||||
"checker.messages.invalidButton"|
|
||||
"checker.messages.unusedOption"|
|
||||
"checker.messages.unusedQuestion"|
|
||||
"checker.messages.dropdownOption"|
|
||||
"checker.messages.customInvalidVersion"|
|
||||
|
||||
"actions.buttons.create"|
|
||||
"actions.buttons.close"|
|
||||
"actions.buttons.delete"|
|
||||
"actions.buttons.reopen"|
|
||||
"actions.buttons.claim"|
|
||||
"actions.buttons.unclaim"|
|
||||
"actions.buttons.pin"|
|
||||
"actions.buttons.unpin"|
|
||||
"actions.buttons.clear"|
|
||||
"actions.buttons.helpSwitchSlash"|
|
||||
"actions.buttons.helpSwitchText"|
|
||||
"actions.buttons.helpPage"|
|
||||
"actions.buttons.withReason"|
|
||||
"actions.buttons.withoutTranscript"|
|
||||
|
||||
"actions.titles.created"|
|
||||
"actions.titles.close"|
|
||||
"actions.titles.delete"|
|
||||
"actions.titles.reopen"|
|
||||
"actions.titles.claim"|
|
||||
"actions.titles.unclaim"|
|
||||
"actions.titles.pin"|
|
||||
"actions.titles.unpin"|
|
||||
"actions.titles.rename"|
|
||||
"actions.titles.move"|
|
||||
"actions.titles.add"|
|
||||
"actions.titles.remove"|
|
||||
|
||||
"actions.titles.help"|
|
||||
"actions.titles.statsReset"|
|
||||
"actions.titles.blacklistAdd"|
|
||||
"actions.titles.blacklistRemove"|
|
||||
"actions.titles.blacklistGet"|
|
||||
"actions.titles.blacklistView"|
|
||||
"actions.titles.blacklistAddDm"|
|
||||
"actions.titles.blacklistRemoveDm"|
|
||||
"actions.titles.clear"|
|
||||
"actions.titles.clearTickets"|
|
||||
"actions.titles.roles"|
|
||||
|
||||
"actions.titles.autoclose"|
|
||||
"actions.titles.autocloseEnabled"|
|
||||
"actions.titles.autocloseDisabled"|
|
||||
"actions.titles.autodelete"|
|
||||
"actions.titles.autodeleteEnabled"|
|
||||
"actions.titles.autodeleteDisabled"|
|
||||
|
||||
"actions.titles.topicSet"|
|
||||
"actions.titles.prioritySet"|
|
||||
"actions.titles.priorityGet"|
|
||||
"actions.titles.transfer"|
|
||||
|
||||
"actions.descriptions.create"|
|
||||
"actions.descriptions.close"|
|
||||
"actions.descriptions.delete"|
|
||||
"actions.descriptions.reopen"|
|
||||
"actions.descriptions.claim"|
|
||||
"actions.descriptions.unclaim"|
|
||||
"actions.descriptions.pin"|
|
||||
"actions.descriptions.unpin"|
|
||||
"actions.descriptions.rename"|
|
||||
"actions.descriptions.move"|
|
||||
"actions.descriptions.add"|
|
||||
"actions.descriptions.remove"|
|
||||
|
||||
"actions.descriptions.helpExplanation"|
|
||||
"actions.descriptions.statsReset"|
|
||||
"actions.descriptions.statsError"|
|
||||
"actions.descriptions.blacklistAdd"|
|
||||
"actions.descriptions.blacklistRemove"|
|
||||
"actions.descriptions.blacklistGetSuccess"|
|
||||
"actions.descriptions.blacklistGetEmpty"|
|
||||
"actions.descriptions.blacklistViewEmpty"|
|
||||
"actions.descriptions.blacklistViewTip"|
|
||||
"actions.descriptions.clearVerify"|
|
||||
"actions.descriptions.clearReady"|
|
||||
"actions.descriptions.rolesEmpty"|
|
||||
|
||||
"actions.descriptions.autocloseLeave"|
|
||||
"actions.descriptions.autocloseTimeout"|
|
||||
"actions.descriptions.autodeleteLeave"|
|
||||
"actions.descriptions.autodeleteTimeout"|
|
||||
"actions.descriptions.autocloseEnabled"|
|
||||
"actions.descriptions.autocloseDisabled"|
|
||||
"actions.descriptions.autodeleteEnabled"|
|
||||
"actions.descriptions.autodeleteDisabled"|
|
||||
|
||||
"actions.descriptions.ticketMessageLimit"|
|
||||
"actions.descriptions.ticketMessageAutoclose"|
|
||||
"actions.descriptions.ticketMessageAutodelete"|
|
||||
"actions.descriptions.panelReady"|
|
||||
|
||||
"actions.descriptions.topicSet"|
|
||||
"actions.descriptions.prioritySet"|
|
||||
"actions.descriptions.priorityGet"|
|
||||
"actions.descriptions.transfer"|
|
||||
|
||||
"actions.modal.closePlaceholder"|
|
||||
"actions.modal.deletePlaceholder"|
|
||||
"actions.modal.reopenPlaceholder"|
|
||||
"actions.modal.claimPlaceholder"|
|
||||
"actions.modal.unclaimPlaceholder"|
|
||||
"actions.modal.pinPlaceholder"|
|
||||
"actions.modal.unpinPlaceholder"|
|
||||
|
||||
"actions.logs.createLog"|
|
||||
"actions.logs.closeLog"|
|
||||
"actions.logs.closeDm"|
|
||||
"actions.logs.deleteLog"|
|
||||
"actions.logs.deleteDm"|
|
||||
"actions.logs.reopenLog"|
|
||||
"actions.logs.reopenDm"|
|
||||
"actions.logs.claimLog"|
|
||||
"actions.logs.claimDm"|
|
||||
"actions.logs.unclaimLog"|
|
||||
"actions.logs.unclaimDm"|
|
||||
"actions.logs.pinLog"|
|
||||
"actions.logs.pinDm"|
|
||||
"actions.logs.unpinLog"|
|
||||
"actions.logs.unpinDm"|
|
||||
"actions.logs.renameLog"|
|
||||
"actions.logs.renameDm"|
|
||||
"actions.logs.moveLog"|
|
||||
"actions.logs.moveDm"|
|
||||
"actions.logs.addLog"|
|
||||
"actions.logs.addDm"|
|
||||
"actions.logs.removeLog"|
|
||||
"actions.logs.removeDm"|
|
||||
|
||||
"actions.logs.blacklistAddLog"|
|
||||
"actions.logs.blacklistRemoveLog"|
|
||||
"actions.logs.blacklistAddDm"|
|
||||
"actions.logs.blacklistRemoveDm"|
|
||||
"actions.logs.clearLog"|
|
||||
|
||||
"actions.logs.transferLog"|
|
||||
"actions.logs.transferDm"|
|
||||
"actions.logs.prioritySetLog"|
|
||||
"actions.logs.prioritySetDm"|
|
||||
"actions.logs.roleUpdateLog"|
|
||||
"actions.logs.roleUpdateDm"|
|
||||
|
||||
"transcripts.success.visit"|
|
||||
"transcripts.success.ready"|
|
||||
"transcripts.success.textFileDescription"|
|
||||
"transcripts.success.htmlProgress"|
|
||||
|
||||
"transcripts.success.createdChannel"|
|
||||
"transcripts.success.createdCreator"|
|
||||
"transcripts.success.createdParticipant"|
|
||||
"transcripts.success.createdActiveAdmin"|
|
||||
"transcripts.success.createdEveryAdmin"|
|
||||
"transcripts.success.createdOther"|
|
||||
|
||||
"transcripts.errors.retry"|
|
||||
"transcripts.errors.continue"|
|
||||
"transcripts.errors.backup"|
|
||||
"transcripts.errors.error"|
|
||||
"transcripts.errors.title"|
|
||||
|
||||
"transcripts.text.messagesTitle"|
|
||||
"transcripts.text.embedTitle"|
|
||||
"transcripts.text.fileTitle"|
|
||||
"transcripts.text.fieldsTitle"|
|
||||
"transcripts.text.reactionsTitle"|
|
||||
"transcripts.text.statsTitle"|
|
||||
"transcripts.text.emptyContent"|
|
||||
"transcripts.text.noTitle"|
|
||||
"transcripts.text.noDesc"|
|
||||
|
||||
"errors.titles.internalError"|
|
||||
"errors.titles.optionMissing"|
|
||||
"errors.titles.optionInvalid"|
|
||||
"errors.titles.unknownCommand"|
|
||||
"errors.titles.noPermissions"|
|
||||
"errors.titles.unknownTicket"|
|
||||
"errors.titles.deprecatedTicket"|
|
||||
"errors.titles.unknownOption"|
|
||||
"errors.titles.unknownPanel"|
|
||||
"errors.titles.notInGuild"|
|
||||
"errors.titles.channelRename"|
|
||||
"errors.titles.busy"|
|
||||
"errors.titles.permissionError"|
|
||||
|
||||
"errors.descriptions.askForInfo"|
|
||||
"errors.descriptions.askForInfoResolve"|
|
||||
"errors.descriptions.internalError"|
|
||||
"errors.descriptions.optionMissing"|
|
||||
"errors.descriptions.optionInvalid"|
|
||||
"errors.descriptions.optionInvalidChoose"|
|
||||
"errors.descriptions.unknownCommand"|
|
||||
"errors.descriptions.noPermissions"|
|
||||
"errors.descriptions.noPermissionsList"|
|
||||
"errors.descriptions.noPermissionsCooldown"|
|
||||
"errors.descriptions.noPermissionsBlacklist"|
|
||||
"errors.descriptions.noPermissionsLimitGlobal"|
|
||||
"errors.descriptions.noPermissionsLimitGlobalUser"|
|
||||
"errors.descriptions.noPermissionsLimitOption"|
|
||||
"errors.descriptions.noPermissionsLimitOptionUser"|
|
||||
"errors.descriptions.unknownTicket"|
|
||||
"errors.descriptions.deprecatedTicket"|
|
||||
"errors.descriptions.notInGuild"|
|
||||
"errors.descriptions.channelRename"|
|
||||
"errors.descriptions.channelRenameSource"|
|
||||
"errors.descriptions.busy"|
|
||||
"errors.descriptions.closeBeforeMessage"|
|
||||
"errors.descriptions.closeBeforeAdminMessage"|
|
||||
"errors.descriptions.unableToCreateTicket"|
|
||||
|
||||
"errors.optionInvalidReasons.stringRegex"|
|
||||
"errors.optionInvalidReasons.stringMinLength"|
|
||||
"errors.optionInvalidReasons.stringMaxLength"|
|
||||
"errors.optionInvalidReasons.numberInvalid"|
|
||||
"errors.optionInvalidReasons.numberMin"|
|
||||
"errors.optionInvalidReasons.numberMax"|
|
||||
"errors.optionInvalidReasons.numberDecimal"|
|
||||
"errors.optionInvalidReasons.numberNegative"|
|
||||
"errors.optionInvalidReasons.numberPositive"|
|
||||
"errors.optionInvalidReasons.numberZero"|
|
||||
"errors.optionInvalidReasons.channelNotFound"|
|
||||
"errors.optionInvalidReasons.userNotFound"|
|
||||
"errors.optionInvalidReasons.roleNotFound"|
|
||||
"errors.optionInvalidReasons.memberNotFound"|
|
||||
"errors.optionInvalidReasons.mentionableNotFound"|
|
||||
"errors.optionInvalidReasons.channelType"|
|
||||
"errors.optionInvalidReasons.notInGuild"|
|
||||
|
||||
"errors.permissions.developer"|
|
||||
"errors.permissions.owner"|
|
||||
"errors.permissions.admin"|
|
||||
"errors.permissions.moderator"|
|
||||
"errors.permissions.support"|
|
||||
"errors.permissions.member"|
|
||||
"errors.permissions.discord-administrator"|
|
||||
|
||||
"errors.actionInvalid.close"|
|
||||
"errors.actionInvalid.reopen"|
|
||||
"errors.actionInvalid.claim"|
|
||||
"errors.actionInvalid.unclaim"|
|
||||
"errors.actionInvalid.pin"|
|
||||
"errors.actionInvalid.unpin"|
|
||||
"errors.actionInvalid.add"|
|
||||
"errors.actionInvalid.remove"|
|
||||
|
||||
"params.uppercase.ticket"|
|
||||
"params.uppercase.tickets"|
|
||||
"params.uppercase.reason"|
|
||||
"params.uppercase.creator"|
|
||||
"params.uppercase.remaining"|
|
||||
"params.uppercase.added"|
|
||||
"params.uppercase.removed"|
|
||||
"params.uppercase.filter"|
|
||||
"params.uppercase.method"|
|
||||
"params.uppercase.type"|
|
||||
"params.uppercase.blacklisted"|
|
||||
"params.uppercase.panel"|
|
||||
"params.uppercase.command"|
|
||||
"params.uppercase.system"|
|
||||
"params.uppercase.true"|
|
||||
"params.uppercase.false"|
|
||||
"params.uppercase.syntax"|
|
||||
"params.uppercase.originalName"|
|
||||
"params.uppercase.newName"|
|
||||
"params.uppercase.until"|
|
||||
"params.uppercase.validOptions"|
|
||||
"params.uppercase.validPanels"|
|
||||
"params.uppercase.autoclose"|
|
||||
"params.uppercase.autodelete"|
|
||||
"params.uppercase.startupDate"|
|
||||
"params.uppercase.version"|
|
||||
"params.uppercase.name"|
|
||||
"params.uppercase.role"|
|
||||
"params.uppercase.status"|
|
||||
"params.uppercase.claimed"|
|
||||
"params.uppercase.pinned"|
|
||||
"params.uppercase.creationDate"|
|
||||
|
||||
"params.uppercase.noone"|
|
||||
"params.uppercase.open"|
|
||||
"params.uppercase.closed"|
|
||||
"params.uppercase.priority"|
|
||||
"params.uppercase.status"|
|
||||
"params.uppercase.participants"|
|
||||
"params.uppercase.yes"|
|
||||
"params.uppercase.no"|
|
||||
"params.uppercase.option"|
|
||||
"params.uppercase.topic"|
|
||||
"params.uppercase.uptime"|
|
||||
"params.uppercase.messages"|
|
||||
"params.uppercase.embeds"|
|
||||
"params.uppercase.files"|
|
||||
"params.uppercase.components"|
|
||||
"params.uppercase.cooldown"|
|
||||
"params.uppercase.maxTickets"|
|
||||
"params.uppercase.admins"|
|
||||
"params.uppercase.roles"|
|
||||
"params.uppercase.size"|
|
||||
|
||||
"params.lowercase.text"|
|
||||
"params.lowercase.html"|
|
||||
"params.lowercase.command"|
|
||||
"params.lowercase.modal"|
|
||||
"params.lowercase.button"|
|
||||
"params.lowercase.dropdown"|
|
||||
"params.lowercase.method"|
|
||||
|
||||
"commands.reason"|
|
||||
"commands.help"|
|
||||
"commands.panel"|
|
||||
"commands.panelId"|
|
||||
"commands.panelAutoUpdate"|
|
||||
"commands.ticket"|
|
||||
"commands.ticketId"|
|
||||
"commands.close"|
|
||||
"commands.delete"|
|
||||
"commands.deleteNoTranscript"|
|
||||
"commands.reopen"|
|
||||
"commands.claim"|
|
||||
"commands.claimUser"|
|
||||
"commands.unclaim"|
|
||||
"commands.pin"|
|
||||
"commands.unpin"|
|
||||
"commands.move"|
|
||||
"commands.moveId"|
|
||||
"commands.rename"|
|
||||
"commands.renameName"|
|
||||
"commands.add"|
|
||||
"commands.addUser"|
|
||||
"commands.remove"|
|
||||
"commands.removeUser"|
|
||||
"commands.blacklist"|
|
||||
"commands.blacklistView"|
|
||||
"commands.blacklistAdd"|
|
||||
"commands.blacklistRemove"|
|
||||
"commands.blacklistGet"|
|
||||
"commands.blacklistGetUser"|
|
||||
"commands.stats"|
|
||||
"commands.statsReset"|
|
||||
"commands.statsGlobal"|
|
||||
"commands.statsUser"|
|
||||
"commands.statsUserUser"|
|
||||
"commands.statsTicket"|
|
||||
"commands.statsTicketTicket"|
|
||||
"commands.clear"|
|
||||
"commands.clearFilter"|
|
||||
|
||||
"commands.clearFilters.all"|
|
||||
"commands.clearFilters.open"|
|
||||
"commands.clearFilters.close"|
|
||||
"commands.clearFilters.claim"|
|
||||
"commands.clearFilters.unclaim"|
|
||||
"commands.clearFilters.pin"|
|
||||
"commands.clearFilters.unpin"|
|
||||
"commands.clearFilters.autoclose"|
|
||||
|
||||
"commands.autoclose"|
|
||||
"commands.autocloseDisable"|
|
||||
"commands.autocloseEnable"|
|
||||
"commands.autocloseEnableTime"|
|
||||
"commands.autodelete"|
|
||||
"commands.autodeleteDisable"|
|
||||
"commands.autodeleteEnable"|
|
||||
"commands.autodeleteEnableTime"|
|
||||
|
||||
"commands.topic"|
|
||||
"commands.topicSet"|
|
||||
"commands.topicValue"|
|
||||
"commands.topicList"|
|
||||
"commands.priority"|
|
||||
"commands.prioritySet"|
|
||||
"commands.priorityValue"|
|
||||
"commands.priorityGet"|
|
||||
"commands.priorityList"|
|
||||
"commands.transfer"|
|
||||
"commands.transferUser"|
|
||||
|
||||
"helpMenu.help"|
|
||||
"helpMenu.ticket"|
|
||||
"helpMenu.close"|
|
||||
"helpMenu.delete"|
|
||||
"helpMenu.reopen"|
|
||||
"helpMenu.pin"|
|
||||
"helpMenu.unpin"|
|
||||
"helpMenu.move"|
|
||||
"helpMenu.rename"|
|
||||
"helpMenu.claim"|
|
||||
"helpMenu.unclaim"|
|
||||
"helpMenu.add"|
|
||||
"helpMenu.remove"|
|
||||
"helpMenu.panel"|
|
||||
"helpMenu.blacklistView"|
|
||||
"helpMenu.blacklistAdd"|
|
||||
"helpMenu.blacklistRemove"|
|
||||
"helpMenu.blacklistGet"|
|
||||
"helpMenu.statsGlobal"|
|
||||
"helpMenu.statsTicket"|
|
||||
"helpMenu.statsUser"|
|
||||
"helpMenu.statsReset"|
|
||||
"helpMenu.autocloseDisable"|
|
||||
"helpMenu.autocloseEnable"|
|
||||
"helpMenu.autodeleteDisable"|
|
||||
"helpMenu.autodeleteEnable"|
|
||||
|
||||
"helpMenu.categories.general"|
|
||||
"helpMenu.categories.basicTicket"|
|
||||
"helpMenu.categories.advancedTicket"|
|
||||
"helpMenu.categories.userTicket"|
|
||||
"helpMenu.categories.admin"|
|
||||
"helpMenu.categories.advanced"|
|
||||
"helpMenu.categories.extra"|
|
||||
|
||||
"stats.scopes.global"|
|
||||
"stats.scopes.system"|
|
||||
"stats.scopes.user"|
|
||||
"stats.scopes.ticket"|
|
||||
"stats.scopes.participants"|
|
||||
"stats.scopes.messages"|
|
||||
|
||||
"stats.properties.ticketsCreated"|
|
||||
"stats.properties.ticketsClosed"|
|
||||
"stats.properties.ticketsDeleted"|
|
||||
"stats.properties.ticketsReopened"|
|
||||
"stats.properties.ticketsAutoclosed"|
|
||||
"stats.properties.ticketsClaimed"|
|
||||
"stats.properties.ticketsPinned"|
|
||||
"stats.properties.ticketsMoved"|
|
||||
"stats.properties.usersBlacklisted"|
|
||||
"stats.properties.transcriptsCreated"|
|
||||
"stats.properties.ticketsAutodeleted"|
|
||||
"stats.properties.ticketsTransferred"|
|
||||
"stats.properties.ticketVolume"|
|
||||
"stats.properties.averageTickets"|
|
||||
"stats.properties.currentTickets"|
|
||||
"stats.properties.age"|
|
||||
"stats.properties.responseTime"|
|
||||
"stats.properties.resolutionTime"|
|
||||
"stats.properties.createdOn"|
|
||||
"stats.properties.createdBy"|
|
||||
"stats.properties.closedOn"|
|
||||
"stats.properties.closedBy"|
|
||||
"stats.properties.claimedOn"|
|
||||
"stats.properties.claimedBy"|
|
||||
"stats.properties.pinnedOn"|
|
||||
"stats.properties.pinnedBy"|
|
||||
"stats.properties.deletedOn"|
|
||||
"stats.properties.deletedBy"|
|
||||
|
||||
"stats.roles.developer"|
|
||||
"stats.roles.serverOwner"|
|
||||
"stats.roles.serverAdmin"|
|
||||
"stats.roles.moderator"|
|
||||
"stats.roles.support"|
|
||||
"stats.roles.member"|
|
||||
|
||||
"panel.selectTicket"|
|
||||
"panel.selectRole"|
|
||||
"panel.selectOption"|
|
||||
|
||||
"priorities.urgent"|
|
||||
"priorities.veryHigh"|
|
||||
"priorities.high"|
|
||||
"priorities.normal"|
|
||||
"priorities.low"|
|
||||
"priorities.veryLow"|
|
||||
"priorities.none"
|
||||
)
|
||||
|
||||
/**## ODMappedLanguageManager `class
|
||||
* A special class with types for the Open Ticket `ODLanguageManager` class.
|
||||
*/
|
||||
export class ODMappedLanguageManager extends api.ODLanguageManager<ODLanguageManagerIdMappings,ODLanguageManagerTranslationIdMappings> {}
|
||||
@@ -0,0 +1,30 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET PERMISSION MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODPermissionManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODPermissionManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODPermissionManagerIdMappings extends api.ODPermissionManagerIdConstraint {
|
||||
//"opendiscord:test-permission":api.ODPermission
|
||||
}
|
||||
|
||||
/**## ODMappedPermissionManager `class
|
||||
* A special class with types for the Open Ticket `ODPermissionManager` class.
|
||||
*/
|
||||
export class ODMappedPermissionManager extends api.ODPermissionManager<ODPermissionManagerIdMappings> {}
|
||||
|
||||
/**## ODPermissionEmbedType `type`
|
||||
* A collection of all types available in the `opendiscord:no-permissions` embed.
|
||||
*/
|
||||
export type ODPermissionEmbedType = (
|
||||
"developer"|
|
||||
"owner"|
|
||||
"admin"|
|
||||
"moderator"|
|
||||
"support"|
|
||||
"member"|
|
||||
"discord-administrator"
|
||||
)
|
||||
@@ -0,0 +1,30 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET POST MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODPluginManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODPluginManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODPluginManagerIdMappings extends api.ODPluginManagerIdConstraint {
|
||||
//"opendiscord:example-plugin":api.ODPlugin
|
||||
}
|
||||
|
||||
/**## ODPluginClassManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODPluginClassManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODPluginClassManagerIdMappings extends api.ODPluginClassManagerIdConstraint {
|
||||
//"opendiscord:example-plugin":any
|
||||
}
|
||||
|
||||
/**## ODMappedPluginManager `class
|
||||
* A special class with types for the Open Ticket `ODPluginManager` class.
|
||||
*/
|
||||
export class ODMappedPluginManager extends api.ODPluginManager<ODPluginManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedPluginClassManager `class
|
||||
* A special class with types for the Open Ticket `ODPluginClassManager` class.
|
||||
*/
|
||||
export class ODMappedPluginClassManager extends api.ODPluginClassManager<ODPluginClassManagerIdMappings> {}
|
||||
@@ -0,0 +1,19 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET POST MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import * as discord from "discord.js"
|
||||
|
||||
/**## ODPostManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODPostManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODPostManagerIdMappings extends api.ODPostManagerIdConstraint {
|
||||
"opendiscord:logs":api.ODPost<discord.GuildTextBasedChannel>|null,
|
||||
"opendiscord:transcripts":api.ODPost<discord.GuildTextBasedChannel>|null
|
||||
}
|
||||
|
||||
/**## ODMappedPostManager `class
|
||||
* A special class with types for the Open Ticket `ODPostManager` class.
|
||||
*/
|
||||
export class ODMappedPostManager extends api.ODPostManager<ODPostManagerIdMappings> {}
|
||||
@@ -0,0 +1,40 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET PROGRESS BAR MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODProgressBarManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODProgressBarManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODProgressBarManagerIdMappings extends api.ODProgressBarManagerIdConstraint {
|
||||
"opendiscord:slash-command-remove":api.ODManualProgressBar,
|
||||
"opendiscord:slash-command-create":api.ODManualProgressBar,
|
||||
"opendiscord:slash-command-update":api.ODManualProgressBar,
|
||||
"opendiscord:context-menu-remove":api.ODManualProgressBar,
|
||||
"opendiscord:context-menu-create":api.ODManualProgressBar,
|
||||
"opendiscord:context-menu-update":api.ODManualProgressBar,
|
||||
}
|
||||
|
||||
/**## ODProgressBarRendererManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODProgressBarRendererManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODProgressBarRendererManagerIdMappings extends api.ODProgressBarRendererManagerIdConstraint {
|
||||
"opendiscord:value-renderer":api.ODDefaultProgressBarRenderer,
|
||||
"opendiscord:fraction-renderer":api.ODDefaultProgressBarRenderer,
|
||||
"opendiscord:percentage-renderer":api.ODDefaultProgressBarRenderer,
|
||||
"opendiscord:time-ms-renderer":api.ODDefaultProgressBarRenderer,
|
||||
"opendiscord:time-sec-renderer":api.ODDefaultProgressBarRenderer,
|
||||
"opendiscord:time-min-renderer":api.ODDefaultProgressBarRenderer,
|
||||
}
|
||||
|
||||
/**## ODMappedProgressBarManager `class
|
||||
* A special class with types for the Open Ticket `ODProgressBarManager` class.
|
||||
*/
|
||||
export class ODMappedProgressBarManager extends api.ODProgressBarManager<ODProgressBarManagerIdMappings,ODProgressBarRendererManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedProgressBarRendererManager `class
|
||||
* A special class with types for the Open Ticket `ODProgressBarRendererManager` class.
|
||||
*/
|
||||
export class ODMappedProgressBarRendererManager extends api.ODProgressBarRendererManager<ODProgressBarRendererManagerIdMappings> {}
|
||||
@@ -0,0 +1,139 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET RESPONDER MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODCommandResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODCommandResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODCommandResponderManagerIdMappings extends api.ODCommandResponderManagerIdConstraint {
|
||||
"opendiscord:help":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:help"|"opendiscord:logs"},
|
||||
"opendiscord:stats":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:stats"|"opendiscord:logs"},
|
||||
"opendiscord:panel":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:panel"|"opendiscord:logs"},
|
||||
"opendiscord:ticket":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:ticket"|"opendiscord:logs"},
|
||||
"opendiscord:blacklist":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:blacklist"|"opendiscord:discord-logs"|"opendiscord:logs"},
|
||||
|
||||
"opendiscord:close":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:close"|"opendiscord:logs"},
|
||||
"opendiscord:reopen":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:reopen"|"opendiscord:logs"},
|
||||
"opendiscord:delete":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:delete"|"opendiscord:logs"},
|
||||
"opendiscord:claim":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:claim"|"opendiscord:logs"},
|
||||
"opendiscord:unclaim":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:unclaim"|"opendiscord:logs"},
|
||||
"opendiscord:pin":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:pin"|"opendiscord:logs"},
|
||||
"opendiscord:unpin":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:unpin"|"opendiscord:logs"},
|
||||
|
||||
"opendiscord:rename":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:rename"|"opendiscord:logs"},
|
||||
"opendiscord:move":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:move"|"opendiscord:logs"},
|
||||
"opendiscord:add":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:add"|"opendiscord:logs"},
|
||||
"opendiscord:remove":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:remove"|"opendiscord:logs"},
|
||||
"opendiscord:clear":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:clear"|"opendiscord:logs"},
|
||||
"opendiscord:topic":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:topic"|"opendiscord:logs"},
|
||||
"opendiscord:priority":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:priority"|"opendiscord:logs"},
|
||||
"opendiscord:transfer":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:transfer"|"opendiscord:logs"},
|
||||
|
||||
"opendiscord:autoclose":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:autoclose"|"opendiscord:logs"},
|
||||
"opendiscord:autodelete":{source:"slash"|"text",params:{},workers:"opendiscord:permissions"|"opendiscord:autodelete"|"opendiscord:logs"},
|
||||
}
|
||||
|
||||
/**## ODButtonResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODButtonResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODButtonResponderManagerIdMappings extends api.ODButtonResponderManagerIdConstraint {
|
||||
"opendiscord:verifybar-success":{source:"button",params:{},workers:"opendiscord:handle-verifybar"},
|
||||
"opendiscord:verifybar-failure":{source:"button",params:{},workers:"opendiscord:handle-verifybar"},
|
||||
|
||||
"opendiscord:help-menu-switch":{source:"button",params:{},workers:"opendiscord:update-help-menu"},
|
||||
"opendiscord:help-menu-previous":{source:"button",params:{},workers:"opendiscord:update-help-menu"},
|
||||
"opendiscord:help-menu-next":{source:"button",params:{},workers:"opendiscord:update-help-menu"},
|
||||
|
||||
"opendiscord:ticket-option":{source:"button",params:{},workers:"opendiscord:ticket-option"},
|
||||
"opendiscord:role-option":{source:"button",params:{},workers:"opendiscord:role-option"},
|
||||
|
||||
"opendiscord:claim-ticket":{source:"button",params:{},workers:"opendiscord:claim-ticket"},
|
||||
"opendiscord:unclaim-ticket":{source:"button",params:{},workers:"opendiscord:unclaim-ticket"},
|
||||
"opendiscord:pin-ticket":{source:"button",params:{},workers:"opendiscord:pin-ticket"},
|
||||
"opendiscord:unpin-ticket":{source:"button",params:{},workers:"opendiscord:unpin-ticket"},
|
||||
"opendiscord:close-ticket":{source:"button",params:{},workers:"opendiscord:close-ticket"},
|
||||
"opendiscord:reopen-ticket":{source:"button",params:{},workers:"opendiscord:reopen-ticket"},
|
||||
"opendiscord:delete-ticket":{source:"button",params:{},workers:"opendiscord:delete-ticket"},
|
||||
|
||||
"opendiscord:transcript-error-retry":{source:"button",params:{},workers:"opendiscord:permissions"|"opendiscord:delete-ticket"|"opendiscord:logs"},
|
||||
"opendiscord:transcript-error-continue":{source:"button",params:{},workers:"opendiscord:permissions"|"opendiscord:delete-ticket"|"opendiscord:logs"},
|
||||
"opendiscord:clear-continue":{source:"button",params:{},workers:"opendiscord:clear-continue"},
|
||||
}
|
||||
|
||||
/**## ODDropdownResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODDropdownResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODDropdownResponderManagerIdMappings extends api.ODDropdownResponderManagerIdConstraint {
|
||||
"opendiscord:panel-dropdown-tickets":{source:"dropdown",params:{},workers:"opendiscord:panel-dropdown-tickets"},
|
||||
}
|
||||
|
||||
/**## ODModalResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODModalResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODModalResponderManagerIdMappings extends api.ODModalResponderManagerIdConstraint {
|
||||
"opendiscord:ticket-questions":{source:"modal",params:{},workers:"opendiscord:ticket-questions"},
|
||||
"opendiscord:close-ticket-reason":{source:"modal",params:{},workers:"opendiscord:close-ticket-reason"},
|
||||
"opendiscord:reopen-ticket-reason":{source:"modal",params:{},workers:"opendiscord:reopen-ticket-reason"},
|
||||
"opendiscord:delete-ticket-reason":{source:"modal",params:{},workers:"opendiscord:delete-ticket-reason"},
|
||||
"opendiscord:claim-ticket-reason":{source:"modal",params:{},workers:"opendiscord:claim-ticket-reason"},
|
||||
"opendiscord:unclaim-ticket-reason":{source:"modal",params:{},workers:"opendiscord:unclaim-ticket-reason"},
|
||||
"opendiscord:pin-ticket-reason":{source:"modal",params:{},workers:"opendiscord:pin-ticket-reason"},
|
||||
"opendiscord:unpin-ticket-reason":{source:"modal",params:{},workers:"opendiscord:unpin-ticket-reason"},
|
||||
}
|
||||
|
||||
/**## ODContextMenuResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODContextMenuResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODContextMenuResponderManagerIdMappings extends api.ODContextMenuResponderManagerIdConstraint {
|
||||
//"opendiscord:example":{source:"context-menu",params:{},workers:"opendiscord:example"},
|
||||
}
|
||||
|
||||
/**## ODAutocompleteResponderManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODAutocompleteResponderManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODAutocompleteResponderManagerIdMappings extends api.ODAutocompleteResponderManagerIdConstraint {
|
||||
"opendiscord:panel-id":{source:"autocomplete",params:{},workers:"opendiscord:panel-id"},
|
||||
"opendiscord:option-id":{source:"autocomplete",params:{},workers:"opendiscord:option-id"}
|
||||
}
|
||||
|
||||
/**## ODMappedCommandResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODCommandResponderManager` class.
|
||||
*/
|
||||
export class ODMappedCommandResponderManager extends api.ODCommandResponderManager<ODCommandResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedButtonResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODButtonResponderManager` class.
|
||||
*/
|
||||
export class ODMappedButtonResponderManager extends api.ODButtonResponderManager<ODButtonResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedDropdownResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODDropdownResponderManager` class.
|
||||
*/
|
||||
export class ODMappedDropdownResponderManager extends api.ODDropdownResponderManager<ODDropdownResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedModalResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODModalResponderManager` class.
|
||||
*/
|
||||
export class ODMappedModalResponderManager extends api.ODModalResponderManager<ODModalResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedContextMenuResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODContextMenuResponderManager` class.
|
||||
*/
|
||||
export class ODMappedContextMenuResponderManager extends api.ODContextMenuResponderManager<ODContextMenuResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedAutocompleteResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODAutocompleteResponderManager` class.
|
||||
*/
|
||||
export class ODMappedAutocompleteResponderManager extends api.ODAutocompleteResponderManager<ODAutocompleteResponderManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedResponderManager `class
|
||||
* A special class with types for the Open Ticket `ODResponderManager` class.
|
||||
*/
|
||||
export class ODMappedResponderManager extends api.ODResponderManager<ODCommandResponderManagerIdMappings,ODButtonResponderManagerIdMappings,ODDropdownResponderManagerIdMappings,ODModalResponderManagerIdMappings,ODContextMenuResponderManagerIdMappings,ODAutocompleteResponderManagerIdMappings> {}
|
||||
@@ -0,0 +1,17 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET SESSION MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODSessionManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODSessionManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODSessionManagerIdMappings extends api.ODSessionManagerIdConstraint {
|
||||
//"opendiscord:example-session":api.ODSession
|
||||
}
|
||||
|
||||
/**## ODMappedSessionManager `class
|
||||
* A special class with types for the Open Ticket `ODSessionManager` class.
|
||||
*/
|
||||
export class ODMappedSessionManager extends api.ODSessionManager<ODSessionManagerIdMappings> {}
|
||||
@@ -0,0 +1,24 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET STARTSCREEN MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import { ODLiveStatusManagerIdMappings } from "./console"
|
||||
|
||||
/**## ODStartScreenManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODStartScreenManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODStartScreenManagerIdMappings extends api.ODStartScreenManagerIdConstraint {
|
||||
"opendiscord:logo":api.ODStartScreenLogoComponent,
|
||||
"opendiscord:header":api.ODStartScreenHeaderComponent,
|
||||
"opendiscord:flags":api.ODStartScreenFlagsCategoryComponent,
|
||||
"opendiscord:plugins":api.ODStartScreenPluginsCategoryComponent,
|
||||
"opendiscord:stats":api.ODStartScreenPropertiesCategoryComponent,
|
||||
"opendiscord:livestatus":api.ODStartScreenLiveStatusCategoryComponent<api.ODLiveStatusManager<ODLiveStatusManagerIdMappings>>,
|
||||
"opendiscord:logs":api.ODStartScreenCategoryComponent
|
||||
}
|
||||
|
||||
/**## ODMappedStartScreenManager `class
|
||||
* A special class with types for the Open Ticket `ODStartScreenManager` class.
|
||||
*/
|
||||
export class ODMappedStartScreenManager extends api.ODStartScreenManager<ODStartScreenManagerIdMappings> {}
|
||||
@@ -0,0 +1,139 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET STATISTICS MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODStatisticManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODStatisticManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODStatisticManagerIdMappings extends api.ODStatisticManagerIdConstraint {
|
||||
"opendiscord:global":ODGlobalStatisticScope,
|
||||
"opendiscord:system":ODSystemStatisticScope,
|
||||
"opendiscord:user":ODUserStatisticScope,
|
||||
"opendiscord:ticket":ODTicketStatisticScope,
|
||||
"opendiscord:participants":ODParticipantsStatisticScope,
|
||||
"opendiscord:messages":ODMessagesStatisticScope,
|
||||
}
|
||||
|
||||
/**## ODMappedStatisticManager `class
|
||||
* A special class with types for the Open Ticket `ODStatisticManager` class.
|
||||
*/
|
||||
export class ODMappedStatisticManager extends api.ODStatisticManager<ODStatisticManagerIdMappings> {}
|
||||
|
||||
/**## ODGlobalStatisticScope `class
|
||||
* A special class with types for the Open Ticket `Global` statistics category/scope.
|
||||
*/
|
||||
export class ODGlobalStatisticScope extends api.ODStatisticGlobalScope<ODGlobalStatisticScopeIdMappings> {}
|
||||
|
||||
/**## ODSystemStatisticScope `class
|
||||
* A special class with types for the Open Ticket `System` statistics category/scope.
|
||||
*/
|
||||
export class ODSystemStatisticScope extends api.ODStatisticGlobalScope<ODSystemStatisticScopeIdMappings> {}
|
||||
|
||||
/**## ODUserStatisticScope `class
|
||||
* A special class with types for the Open Ticket `User` statistics category/scope.
|
||||
*/
|
||||
export class ODUserStatisticScope extends api.ODStatisticScope<ODUserStatisticScopeIdMappings> {}
|
||||
|
||||
/**## ODTicketStatisticScope `class
|
||||
* A special class with types for the Open Ticket `Ticket` statistics category/scope.
|
||||
*/
|
||||
export class ODTicketStatisticScope extends api.ODStatisticScope<ODTicketStatisticScopeIdMappings> {}
|
||||
|
||||
/**## ODParticipantsStatisticScope `class
|
||||
* A special class with types for the Open Ticket `Participants` statistics category/scope.
|
||||
*/
|
||||
export class ODParticipantsStatisticScope extends api.ODStatisticScope<ODParticipantsStatisticScopeIdMappings> {}
|
||||
|
||||
/**## ODMessagesStatisticScope `class
|
||||
* A special class with types for the Open Ticket `Messages` statistics category/scope.
|
||||
*/
|
||||
export class ODMessagesStatisticScope extends api.ODStatisticScope<ODMessagesStatisticScopeIdMappings> {}
|
||||
|
||||
/////////////////////////////////////////
|
||||
// STATISTICS MAPPINGS, CATEGORIES & TYPES
|
||||
/////////////////////////////////////////
|
||||
|
||||
/**## ODGlobalStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODGlobalStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODGlobalStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:tickets-created":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-closed":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-deleted":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-reopened":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-autoclosed":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-autodeleted":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-claimed":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-pinned":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-moved":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-transferred":api.ODBaseStatistic,
|
||||
"opendiscord:users-blacklisted":api.ODBaseStatistic,
|
||||
"opendiscord:transcripts-created":api.ODBaseStatistic,
|
||||
"opendiscord:ticket-volume":api.ODDynamicStatistic,
|
||||
"opendiscord:average-tickets":api.ODDynamicStatistic,
|
||||
}
|
||||
|
||||
/**## ODSystemStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODSystemStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODSystemStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:startup-date":api.ODDynamicStatistic,
|
||||
"opendiscord:system-uptime":api.ODDynamicStatistic,
|
||||
"opendiscord:version":api.ODDynamicStatistic
|
||||
}
|
||||
|
||||
/**## ODUserStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODUserStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODUserStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:name":api.ODDynamicStatistic,
|
||||
"opendiscord:role":api.ODDynamicStatistic,
|
||||
"opendiscord:tickets-created":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-closed":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-deleted":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-reopened":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-claimed":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-pinned":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-moved":api.ODBaseStatistic,
|
||||
"opendiscord:tickets-transferred":api.ODBaseStatistic,
|
||||
"opendiscord:users-blacklisted":api.ODBaseStatistic,
|
||||
"opendiscord:transcripts-created":api.ODBaseStatistic,
|
||||
"opendiscord:current-tickets":api.ODDynamicStatistic,
|
||||
}
|
||||
|
||||
/**## ODTicketStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODTicketStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODTicketStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:name":api.ODDynamicStatistic,
|
||||
"opendiscord:status":api.ODDynamicStatistic,
|
||||
"opendiscord:claimed":api.ODDynamicStatistic,
|
||||
"opendiscord:pinned":api.ODDynamicStatistic,
|
||||
"opendiscord:creation-date":api.ODDynamicStatistic,
|
||||
"opendiscord:creator":api.ODDynamicStatistic,
|
||||
"opendiscord:ticket-age":api.ODDynamicStatistic,
|
||||
"opendiscord:response-time":api.ODDynamicStatistic,
|
||||
"opendiscord:resolution-time":api.ODDynamicStatistic,
|
||||
}
|
||||
|
||||
/**## ODParticipantsStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODParticipantsStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODParticipantsStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:participants":api.ODDynamicStatistic
|
||||
}
|
||||
|
||||
/**## ODMessagesStatisticScopeIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODMessagesStatisticScope` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODMessagesStatisticScopeIdMappings extends api.ODStatisticScopeIdConstraint {
|
||||
"opendiscord:count":api.ODDynamicStatistic
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET VERIFYBAR MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
|
||||
/**## ODVerifyBarManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODVerifyBarManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODVerifyBarManagerIdMappings extends api.ODVerifyBarManagerIdConstraint {
|
||||
"opendiscord:claim-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:claim-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:claim-ticket-unclaim-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:claim-ticket",failureWorkerIds:"opendiscord:back-to-unclaim-message"},
|
||||
"opendiscord:unclaim-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:unclaim-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:unclaim-ticket-claim-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:unclaim-ticket",failureWorkerIds:"opendiscord:back-to-claim-message"},
|
||||
"opendiscord:pin-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:pin-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:pin-ticket-unpin-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:pin-ticket",failureWorkerIds:"opendiscord:back-to-unpin-message"},
|
||||
"opendiscord:unpin-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:unpin-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:unpin-ticket-pin-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:unpin-ticket",failureWorkerIds:"opendiscord:back-to-pin-message"},
|
||||
"opendiscord:close-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:close-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:close-ticket-reopen-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:close-ticket",failureWorkerIds:"opendiscord:back-to-reopen-message"},
|
||||
"opendiscord:reopen-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:reopen-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"},
|
||||
"opendiscord:reopen-ticket-close-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:reopen-ticket",failureWorkerIds:"opendiscord:back-to-close-message"},
|
||||
"opendiscord:reopen-ticket-autoclose-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:reopen-ticket",failureWorkerIds:"opendiscord:back-to-autoclose-message"},
|
||||
"opendiscord:delete-ticket-ticket-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:delete-ticket",failureWorkerIds:"opendiscord:back-to-ticket-message"}
|
||||
"opendiscord:delete-ticket-close-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:delete-ticket",failureWorkerIds:"opendiscord:back-to-close-message"}
|
||||
"opendiscord:delete-ticket-reopen-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:delete-ticket",failureWorkerIds:"opendiscord:back-to-reopen-message"}
|
||||
"opendiscord:delete-ticket-autoclose-message":{successWorkerIds:"opendiscord:permissions"|"opendiscord:delete-ticket",failureWorkerIds:"opendiscord:back-to-autoclose-message"}
|
||||
}
|
||||
|
||||
/**## ODMappedVerifyBarManager `class
|
||||
* A special class with types for the Open Ticket `ODVerifyBarManager` class.
|
||||
*/
|
||||
export class ODMappedVerifyBarManager extends api.ODVerifyBarManager<ODVerifyBarManagerIdMappings> {}
|
||||
Reference in New Issue
Block a user