(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:
DJj123dj
2026-04-03 11:18:59 +02:00
parent f42b70d1b9
commit fa8bc0eb6c
79 changed files with 2044 additions and 5111 deletions
-42
View File
@@ -1,42 +0,0 @@
//EXPORT FRAMEWORK
export * from "@open-discord-bots/framework/api"
//EXPORT DEFAULT MODULES
export * from "./defaults/base"
export * from "./defaults/event"
export * from "./defaults/config"
export * from "./defaults/database"
export * from "./defaults/plugin"
export * from "./defaults/checker"
export * from "./defaults/client"
export * from "./defaults/language"
export * from "./defaults/builder"
export * from "./defaults/responder"
export * from "./defaults/action"
export * from "./defaults/flag"
export * from "./defaults/permission"
export * from "./defaults/helpmenu"
export * from "./defaults/session"
export * from "./defaults/stat"
export * from "./defaults/worker"
export * from "./defaults/code"
export * from "./defaults/cooldown"
export * from "./defaults/post"
export * from "./defaults/progressbar"
export * from "./defaults/startscreen"
export * from "./defaults/console"
export * from "./defaults/verifybar"
export * from "./defaults/fuse"
//EXPORT OPENTICKET MODULES
export * from "./openticket/question"
export * from "./openticket/option"
export * from "./openticket/panel"
export * from "./openticket/ticket"
export * from "./openticket/blacklist"
export * from "./openticket/transcript"
export * from "./openticket/role"
export * from "./openticket/priority"
//EXPORT MAIN MODULE
export { ODOpenTicketMain } from "./main"
-171
View File
@@ -1,171 +0,0 @@
///////////////////////////////////////
//DEFAULT ACTION MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODWorkerManager_Default } from "./worker"
import * as discord from "discord.js"
import { ODRoleOption, ODTicketOption } from "../openticket/option"
import { ODTicket, ODTicketClearFilter } from "../openticket/ticket"
import { ODTranscriptCompiler, ODTranscriptCompilerCompileResult } from "../openticket/transcript"
import { ODRole, ODRoleUpdateMode, ODRoleUpdateResult } from "../openticket/role"
import { ODPriorityLevel } from "../openticket/priority"
/**## ODActionManagerIds_Default `interface`
* This interface is a list of ids available in the `ODActionManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODActionManagerIds_Default {
"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"
},
}
/**## ODActionManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODActionManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.actions`!
*/
export class ODActionManager_Default extends api.ODActionManager {
get<ActionId extends keyof ODActionManagerIds_Default>(id:ActionId): ODAction_Default<ODActionManagerIds_Default[ActionId]["source"],ODActionManagerIds_Default[ActionId]["params"],ODActionManagerIds_Default[ActionId]["result"],ODActionManagerIds_Default[ActionId]["workers"]>
get(id:api.ODValidId): api.ODAction<string,any,any>|null
get(id:api.ODValidId): api.ODAction<string,any,any>|null {
return super.get(id)
}
remove<ActionId extends keyof ODActionManagerIds_Default>(id:ActionId): ODAction_Default<ODActionManagerIds_Default[ActionId]["source"],ODActionManagerIds_Default[ActionId]["params"],ODActionManagerIds_Default[ActionId]["result"],ODActionManagerIds_Default[ActionId]["workers"]>
remove(id:api.ODValidId): api.ODAction<string,any,any>|null
remove(id:api.ODValidId): api.ODAction<string,any,any>|null {
return super.remove(id)
}
exists(id:keyof ODActionManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODAction_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODAction class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODAction`'s!
*/
export class ODAction_Default<Source extends string, Params extends object, Result extends object, WorkerIds extends string> extends api.ODAction<Source,Params,Result> {
declare workers: ODWorkerManager_Default<Result,Source,Params,WorkerIds>
}
-45
View File
@@ -1,45 +0,0 @@
///////////////////////////////////////
//BASE MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODVersionManagerIds_Default `interface`
* This interface is a list of ids available in the `ODVersionManager` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODVersionManagerIds_Default {
"opendiscord:version":api.ODVersion,
"opendiscord:last-version":api.ODVersion,
"opendiscord:api":api.ODVersion,
"opendiscord:transcripts":api.ODVersion,
"opendiscord:livestatus":api.ODVersion
}
/**## ODFlagManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODFlagManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.flags`!
*/
export class ODVersionManager_Default extends api.ODVersionManager {
get<VersionId extends keyof ODVersionManagerIds_Default>(id:VersionId): ODVersionManagerIds_Default[VersionId]
get(id:api.ODValidId): api.ODVersion|null
get(id:api.ODValidId): api.ODVersion|null {
return super.get(id)
}
remove<VersionId extends keyof ODVersionManagerIds_Default>(id:VersionId): ODVersionManagerIds_Default[VersionId]
remove(id:api.ODValidId): api.ODVersion|null
remove(id:api.ODValidId): api.ODVersion|null {
return super.remove(id)
}
exists(id:keyof ODVersionManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-546
View File
@@ -1,546 +0,0 @@
///////////////////////////////////////
//DEFAULT BUILDER MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODWorkerManager_Default } from "./worker"
import { ODPermissionEmbedType } from "./permission"
import { ODTranscriptCompiler, ODTranscriptCompilerCompileResult } from "../openticket/transcript"
import { ODRoleOption, ODTicketOption, ODWebsiteOption } from "../openticket/option"
import { ODTicket, ODTicketClearFilter } from "../openticket/ticket"
import { ODRole, ODRoleUpdateResult } from "../openticket/role"
import { ODPriorityLevel } from "../openticket/priority"
import { ODPanel } from "../openticket/panel"
import * as discord from "discord.js"
/**## ODBuilderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODBuilderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders`!
*/
export class ODBuilderManager_Default extends api.ODBuilderManager {
declare buttons: ODButtonManager_Default
declare dropdowns: ODDropdownManager_Default
declare files: ODFileManager_Default
declare embeds: ODEmbedManager_Default
declare messages: ODMessageManager_Default
declare modals: ODModalManager_Default
}
/**## ODButtonManagerIds_Default `interface`
* This interface is a list of ids available in the `ODButtonManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODButtonManagerIds_Default {
"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"},
}
/**## ODButtonManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODButtonManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.buttons`!
*/
export class ODButtonManager_Default extends api.ODButtonManager {
get<ButtonId extends keyof ODButtonManagerIds_Default>(id:ButtonId): ODButton_Default<ODButtonManagerIds_Default[ButtonId]["source"],ODButtonManagerIds_Default[ButtonId]["params"],ODButtonManagerIds_Default[ButtonId]["workers"]>
get(id:api.ODValidId): api.ODButton<string,any>|null
get(id:api.ODValidId): api.ODButton<string,any>|null {
return super.get(id)
}
remove<ButtonId extends keyof ODButtonManagerIds_Default>(id:ButtonId): ODButton_Default<ODButtonManagerIds_Default[ButtonId]["source"],ODButtonManagerIds_Default[ButtonId]["params"],ODButtonManagerIds_Default[ButtonId]["workers"]>
remove(id:api.ODValidId): api.ODButton<string,any>|null
remove(id:api.ODValidId): api.ODButton<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODButtonManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<ButtonId extends keyof ODButtonManagerIds_Default>(id:ButtonId): ODButton_Default<ODButtonManagerIds_Default[ButtonId]["source"],ODButtonManagerIds_Default[ButtonId]["params"],ODButtonManagerIds_Default[ButtonId]["workers"]>
getSafe(id:api.ODValidId): api.ODButton<string,any>
getSafe(id:api.ODValidId): api.ODButton<string,any> {
return super.getSafe(id)
}
}
/**## ODButton_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODButton class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODButton`'s!
*/
export class ODButton_Default<Source extends string, Params, WorkerIds extends string> extends api.ODButton<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODButtonInstance,Source,Params,WorkerIds>
}
/**## ODDropdownManagerIds_Default `interface`
* This interface is a list of ids available in the `ODDropdownManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODDropdownManagerIds_Default {
"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"}
}
/**## ODDropdownManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODDropdownManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.dropdowns`!
*/
export class ODDropdownManager_Default extends api.ODDropdownManager {
get<DropdownId extends keyof ODDropdownManagerIds_Default>(id:DropdownId): ODDropdown_Default<ODDropdownManagerIds_Default[DropdownId]["source"],ODDropdownManagerIds_Default[DropdownId]["params"],ODDropdownManagerIds_Default[DropdownId]["workers"]>
get(id:api.ODValidId): api.ODDropdown<string,any>|null
get(id:api.ODValidId): api.ODDropdown<string,any>|null {
return super.get(id)
}
remove<DropdownId extends keyof ODDropdownManagerIds_Default>(id:DropdownId): ODDropdown_Default<ODDropdownManagerIds_Default[DropdownId]["source"],ODDropdownManagerIds_Default[DropdownId]["params"],ODDropdownManagerIds_Default[DropdownId]["workers"]>
remove(id:api.ODValidId): api.ODDropdown<string,any>|null
remove(id:api.ODValidId): api.ODDropdown<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODDropdownManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<DropdownId extends keyof ODDropdownManagerIds_Default>(id:DropdownId): ODDropdown_Default<ODDropdownManagerIds_Default[DropdownId]["source"],ODDropdownManagerIds_Default[DropdownId]["params"],ODDropdownManagerIds_Default[DropdownId]["workers"]>
getSafe(id:api.ODValidId): api.ODDropdown<string,any>
getSafe(id:api.ODValidId): api.ODDropdown<string,any> {
return super.getSafe(id)
}
}
/**## ODDropdown_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODDropdown class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODDropdown`'s!
*/
export class ODDropdown_Default<Source extends string, Params, WorkerIds extends string> extends api.ODDropdown<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODDropdownInstance,Source,Params,WorkerIds>
}
/**## ODFileManagerIds_Default `interface`
* This interface is a list of ids available in the `ODFileManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFileManagerIds_Default {
"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"}
}
/**## ODFileManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODFileManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.files`!
*/
export class ODFileManager_Default extends api.ODFileManager {
get<FileId extends keyof ODFileManagerIds_Default>(id:FileId): ODFile_Default<ODFileManagerIds_Default[FileId]["source"],ODFileManagerIds_Default[FileId]["params"],ODFileManagerIds_Default[FileId]["workers"]>
get(id:api.ODValidId): api.ODFile<string,any>|null
get(id:api.ODValidId): api.ODFile<string,any>|null {
return super.get(id)
}
remove<FileId extends keyof ODFileManagerIds_Default>(id:FileId): ODFile_Default<ODFileManagerIds_Default[FileId]["source"],ODFileManagerIds_Default[FileId]["params"],ODFileManagerIds_Default[FileId]["workers"]>
remove(id:api.ODValidId): api.ODFile<string,any>|null
remove(id:api.ODValidId): api.ODFile<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODFileManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<FileId extends keyof ODFileManagerIds_Default>(id:FileId): ODFile_Default<ODFileManagerIds_Default[FileId]["source"],ODFileManagerIds_Default[FileId]["params"],ODFileManagerIds_Default[FileId]["workers"]>
getSafe(id:api.ODValidId): api.ODFile<string,any>
getSafe(id:api.ODValidId): api.ODFile<string,any> {
return super.getSafe(id)
}
}
/**## ODFile_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODFile class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODFile`'s!
*/
export class ODFile_Default<Source extends string, Params, WorkerIds extends string> extends api.ODFile<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODFileInstance,Source,Params,WorkerIds>
}
/**## ODEmbedManagerIds_Default `interface`
* This interface is a list of ids available in the `ODEmbedManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODEmbedManagerIds_Default {
"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"},
}
/**## ODEmbedManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODEmbedManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.embeds`!
*/
export class ODEmbedManager_Default extends api.ODEmbedManager {
get<EmbedId extends keyof ODEmbedManagerIds_Default>(id:EmbedId): ODEmbed_Default<ODEmbedManagerIds_Default[EmbedId]["source"],ODEmbedManagerIds_Default[EmbedId]["params"],ODEmbedManagerIds_Default[EmbedId]["workers"]>
get(id:api.ODValidId): api.ODEmbed<string,any>|null
get(id:api.ODValidId): api.ODEmbed<string,any>|null {
return super.get(id)
}
remove<EmbedId extends keyof ODEmbedManagerIds_Default>(id:EmbedId): ODEmbed_Default<ODEmbedManagerIds_Default[EmbedId]["source"],ODEmbedManagerIds_Default[EmbedId]["params"],ODEmbedManagerIds_Default[EmbedId]["workers"]>
remove(id:api.ODValidId): api.ODEmbed<string,any>|null
remove(id:api.ODValidId): api.ODEmbed<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODEmbedManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<EmbedId extends keyof ODEmbedManagerIds_Default>(id:EmbedId): ODEmbed_Default<ODEmbedManagerIds_Default[EmbedId]["source"],ODEmbedManagerIds_Default[EmbedId]["params"],ODEmbedManagerIds_Default[EmbedId]["workers"]>
getSafe(id:api.ODValidId): api.ODEmbed<string,any>
getSafe(id:api.ODValidId): api.ODEmbed<string,any> {
return super.getSafe(id)
}
}
/**## ODEmbed_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODEmbed class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODEmbed`'s!
*/
export class ODEmbed_Default<Source extends string, Params, WorkerIds extends string> extends api.ODEmbed<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODEmbedInstance,Source,Params,WorkerIds>
}
/**## ODMessageManagerIds_Default `interface`
* This interface is a list of ids available in the `ODMessageManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODMessageManagerIds_Default {
"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"},
}
/**## ODMessageManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODMessageManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.messages`!
*/
export class ODMessageManager_Default extends api.ODMessageManager {
get<MessageId extends keyof ODMessageManagerIds_Default>(id:MessageId): ODMessage_Default<ODMessageManagerIds_Default[MessageId]["source"],ODMessageManagerIds_Default[MessageId]["params"],ODMessageManagerIds_Default[MessageId]["workers"]>
get(id:api.ODValidId): api.ODMessage<string,any>|null
get(id:api.ODValidId): api.ODMessage<string,any>|null {
return super.get(id)
}
remove<MessageId extends keyof ODMessageManagerIds_Default>(id:MessageId): ODMessage_Default<ODMessageManagerIds_Default[MessageId]["source"],ODMessageManagerIds_Default[MessageId]["params"],ODMessageManagerIds_Default[MessageId]["workers"]>
remove(id:api.ODValidId): api.ODMessage<string,any>|null
remove(id:api.ODValidId): api.ODMessage<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODMessageManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<MessageId extends keyof ODMessageManagerIds_Default>(id:MessageId): ODMessage_Default<ODMessageManagerIds_Default[MessageId]["source"],ODMessageManagerIds_Default[MessageId]["params"],ODMessageManagerIds_Default[MessageId]["workers"]>
getSafe(id:api.ODValidId): api.ODMessage<string,any>
getSafe(id:api.ODValidId): api.ODMessage<string,any> {
return super.getSafe(id)
}
}
/**## ODMessage_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODMessage class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODMessage`'s!
*/
export class ODMessage_Default<Source extends string, Params, WorkerIds extends string> extends api.ODMessage<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODMessageInstance,Source,Params,WorkerIds>
}
/**## ODModalManagerIds_Default `interface`
* This interface is a list of ids available in the `ODModalManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODModalManagerIds_Default {
"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"}
}
/**## ODModalManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODModalManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.builders.modals`!
*/
export class ODModalManager_Default extends api.ODModalManager {
get<ModalId extends keyof ODModalManagerIds_Default>(id:ModalId): ODModal_Default<ODModalManagerIds_Default[ModalId]["source"],ODModalManagerIds_Default[ModalId]["params"],ODModalManagerIds_Default[ModalId]["workers"]>
get(id:api.ODValidId): api.ODModal<string,any>|null
get(id:api.ODValidId): api.ODModal<string,any>|null {
return super.get(id)
}
remove<ModalId extends keyof ODModalManagerIds_Default>(id:ModalId): ODModal_Default<ODModalManagerIds_Default[ModalId]["source"],ODModalManagerIds_Default[ModalId]["params"],ODModalManagerIds_Default[ModalId]["workers"]>
remove(id:api.ODValidId): api.ODModal<string,any>|null
remove(id:api.ODValidId): api.ODModal<string,any>|null {
return super.remove(id)
}
exists(id:keyof ODModalManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getSafe<ModalId extends keyof ODModalManagerIds_Default>(id:ModalId): ODModal_Default<ODModalManagerIds_Default[ModalId]["source"],ODModalManagerIds_Default[ModalId]["params"],ODModalManagerIds_Default[ModalId]["workers"]>
getSafe(id:api.ODValidId): api.ODModal<string,any>
getSafe(id:api.ODValidId): api.ODModal<string,any> {
return super.getSafe(id)
}
}
/**## ODModal_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODModal class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODModal`'s!
*/
export class ODModal_Default<Source extends string, Params, WorkerIds extends string> extends api.ODModal<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODModalInstance,Source,Params,WorkerIds>
}
-384
View File
@@ -1,384 +0,0 @@
///////////////////////////////////////
//DEFAULT CONFIG CHECKER MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODLanguageManager_Default } from "./language"
import ansis from "ansis"
/**## ODCheckerManagerIds_Default `interface`
* This interface is a list of ids available in the `ODCheckerManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODCheckerManagerIds_Default {
"opendiscord:general":api.ODChecker,
"opendiscord:questions":api.ODChecker,
"opendiscord:options":api.ODChecker,
"opendiscord:panels":api.ODChecker,
"opendiscord:transcripts":api.ODChecker
}
/**## ODCheckerManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCheckerManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.checkers`!
*/
export class ODCheckerManager_Default extends api.ODCheckerManager {
declare translation: ODCheckerTranslationRegister_Default
declare renderer: ODCheckerRenderer_Default
declare functions: ODCheckerFunctionManager_Default
get<CheckerId extends keyof ODCheckerManagerIds_Default>(id:CheckerId): ODCheckerManagerIds_Default[CheckerId]
get(id:api.ODValidId): api.ODChecker|null
get(id:api.ODValidId): api.ODChecker|null {
return super.get(id)
}
remove<CheckerId extends keyof ODCheckerManagerIds_Default>(id:CheckerId): ODCheckerManagerIds_Default[CheckerId]
remove(id:api.ODValidId): api.ODChecker|null
remove(id:api.ODValidId): api.ODChecker|null {
return super.remove(id)
}
exists(id:keyof ODCheckerManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODCheckerRenderer_Default `default_class`
* This is a special class that adds type definitions & features to the ODCheckerRenderer class.
* It contains the code that renders the default config checker.
*
* This default class is made for the global variable `opendiscord.checkers.renderer`!
*/
export class ODCheckerRenderer_Default extends api.ODCheckerRenderer {
extraHeaderText: string[] = []
extraFooterText: string[] = []
extraTopText: string[] = []
extraBottomText: string[] = []
horizontalFiller: string = "="
verticalFiller: string = "|"
descriptionSeparator: string = " => "
headerSeparator: string = " => "
footerTipPrefix: string = "=> "
disableHeader: boolean = false
disableFooter: boolean = false
getComponents(compact:boolean, renderEmpty:boolean, translation:ODCheckerTranslationRegister_Default, data:api.ODCheckerResult): string[] {
const tm = translation
const t = {
headerOpenticket:tm.get("other","opendiscord:header-openticket") ?? "OPEN TICKET",
headerConfigchecker:tm.get("other","opendiscord:header-configchecker") ?? "CONFIG CHECKER",
headerDescription:tm.get("other","opendiscord:header-description") ?? "check for errors in your config files!",
footerError:tm.get("other","opendiscord:footer-error") ?? "the bot won't start until all {0}'s are fixed!",
footerWarning:tm.get("other","opendiscord:footer-warning") ?? "it's recommended to fix all {0}'s before starting!",
footerSupport:tm.get("other","opendiscord:footer-support") ?? "SUPPORT: {0} - DOCS: {1}",
error:tm.get("other","opendiscord:type-error") ?? "[ERROR]",
warning:tm.get("other","opendiscord:type-warning") ?? "[WARNING]",
info:tm.get("other","opendiscord:type-info") ?? "[INFO]",
compactInfo:tm.get("other","opendiscord:compact-information") ?? "use {0} for more information!",
dataPath:tm.get("other","opendiscord:data-path") ?? "path",
dataDocs:tm.get("other","opendiscord:data-docs") ?? "docs",
dataMessage:tm.get("other","opendiscord:data-message") ?? "message"
}
const hasErrors = data.messages.filter((m) => m.type == "error").length > 0
const hasWarnings = data.messages.filter((m) => m.type == "warning").length > 0
const hasInfo = data.messages.filter((m) => m.type == "info").length > 0
if (!renderEmpty && !hasErrors && !hasWarnings && (!hasInfo || compact)) return []
const headerText = ansis.bold.hex("#f8ba00")(t.headerOpenticket)+" "+t.headerConfigchecker+this.headerSeparator+ansis.hex("#f8ba00")(t.headerDescription)
const footerErrorText = (hasErrors) ? this.footerTipPrefix+ansis.gray(tm.insertTranslationParams(t.footerError,[ansis.bold.red(t.error)])) : ""
const footerWarningText = (hasWarnings) ? this.footerTipPrefix+ansis.gray(tm.insertTranslationParams(t.footerWarning,[ansis.bold.yellow(t.warning)])) : ""
const footerSupportText = tm.insertTranslationParams(t.footerSupport,[ansis.green("https://discord.dj-dj.be"),ansis.green("https://otdocs.dj-dj.be")])
const bottomCompactInfo = (compact) ? ansis.gray(tm.insertTranslationParams(t.compactInfo,[ansis.bold.green("npm start -- --checker")])) : ""
const finalHeader = [headerText,...this.extraHeaderText]
const finalFooter = [footerErrorText,footerWarningText,footerSupportText,...this.extraFooterText]
const finalTop = [...this.extraTopText]
const finalBottom = [bottomCompactInfo,...this.extraBottomText]
const borderLength = this.#getLongestLength([...finalHeader,...finalFooter])
const finalComponents: string[] = []
//header
if (!this.disableHeader){
finalHeader.forEach((text) => {
if (text.length < 1) return
finalComponents.push(this.#createBlockFromText(text,borderLength))
})
}
finalComponents.push(this.#getHorizontalDivider(borderLength+4))
//top
finalTop.forEach((text) => {
if (text.length < 1) return
finalComponents.push(this.verticalFiller+" "+text)
})
finalComponents.push(this.verticalFiller)
//messages
if (compact){
//use compact messages
data.messages.forEach((msg,index) => {
//compact mode doesn't render info
if (msg.type == "info") return
//check if translation available & use it if possible
const rawTranslation = tm.get("message",msg.messageId.value)
const translatedMessage = (rawTranslation) ? tm.insertTranslationParams(rawTranslation,msg.translationParams) : msg.message
if (msg.type == "error") finalComponents.push(this.verticalFiller+" "+ansis.bold.red(`${t.error} ${translatedMessage}`))
else if (msg.type == "warning") finalComponents.push(this.verticalFiller+" "+ansis.bold.yellow(`${t.warning} ${translatedMessage}`))
const pathSplitter = msg.path ? ":" : ""
finalComponents.push(this.verticalFiller+ansis.bold(this.descriptionSeparator)+ansis.cyan(`${ansis.magenta(msg.filepath+pathSplitter)} ${msg.path}`))
if (index != data.messages.length-1) finalComponents.push(this.verticalFiller)
})
}else{
//use full messages
data.messages.forEach((msg,index) => {
//check if translation available & use it if possible
const rawTranslation = tm.get("message",msg.messageId.value)
const translatedMessage = (rawTranslation) ? tm.insertTranslationParams(rawTranslation,msg.translationParams) : msg.message
if (msg.type == "error") finalComponents.push(this.verticalFiller+" "+ansis.bold.red(`${t.error} ${translatedMessage}`))
else if (msg.type == "warning") finalComponents.push(this.verticalFiller+" "+ansis.bold.yellow(`${t.warning} ${translatedMessage}`))
else if (msg.type == "info") finalComponents.push(this.verticalFiller+" "+ansis.bold.blue(`${t.info} ${translatedMessage}`))
const pathSplitter = msg.path ? ":" : ""
finalComponents.push(this.verticalFiller+" "+ansis.bold((t.dataPath)+this.descriptionSeparator)+ansis.cyan(`${ansis.magenta(msg.filepath+pathSplitter)} ${msg.path}`))
if (msg.locationDocs) finalComponents.push(this.verticalFiller+" "+ansis.bold(t.dataDocs+this.descriptionSeparator)+ansis.italic.gray(msg.locationDocs))
if (msg.messageDocs) finalComponents.push(this.verticalFiller+" "+ansis.bold(t.dataMessage+this.descriptionSeparator)+ansis.italic.gray(msg.messageDocs))
if (index != data.messages.length-1) finalComponents.push(this.verticalFiller)
})
}
//bottom
finalComponents.push(this.verticalFiller)
finalBottom.forEach((text) => {
if (text.length < 1) return
finalComponents.push(this.verticalFiller+" "+text)
})
//footer
finalComponents.push(this.#getHorizontalDivider(borderLength+4))
if (!this.disableFooter){
finalFooter.forEach((text) => {
if (text.length < 1) return
finalComponents.push(this.#createBlockFromText(text,borderLength))
})
finalComponents.push(this.#getHorizontalDivider(borderLength+4))
}
//return all components
return finalComponents
}
/**Get the length of the longest string in the array. */
#getLongestLength(texts:string[]): number {
return Math.max(...texts.map((t) => ansis.strip(t).length))
}
/**Get a horizontal divider used between different parts of the config checker result. */
#getHorizontalDivider(width:number): string {
if (width > 2) width = width-2
else return this.verticalFiller+this.verticalFiller
let divider = this.verticalFiller + this.horizontalFiller.repeat(width) + this.verticalFiller
return divider
}
/**Create a block of text with a vertical divider on the left & right side. */
#createBlockFromText(text:string,width:number): string {
if (width < 3) return this.verticalFiller+this.verticalFiller
let newWidth = width-ansis.strip(text).length+1
let final = this.verticalFiller+" "+text+" ".repeat(newWidth)+this.verticalFiller
return final
}
}
/**## ODCheckerTranslationRegisterOtherIds_Default `interface`
* This interface is a list of ids available in the `ODCheckerTranslationRegister_Default` class.
* It's used to generate typescript declarations for this class.
*/
export type ODCheckerTranslationRegisterOtherIds_Default = (
"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"
)
/**## ODCheckerTranslationRegisterMessageIds_Default `interface`
* This interface is a list of ids available in the `ODCheckerTranslationRegister_Default` class.
* It's used to generate typescript declarations for this class.
*/
export type ODCheckerTranslationRegisterMessageIds_Default = (
"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"
)
/**## ODCheckerTranslationRegister_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCheckerTranslationRegister class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.checkers.translation`!
*/
export class ODCheckerTranslationRegister_Default extends api.ODCheckerTranslationRegister {
get(type:"other", id:ODCheckerTranslationRegisterOtherIds_Default): string
get(type:"message", id:ODCheckerTranslationRegisterMessageIds_Default): string
get(type:"message"|"other", id:string): string|null
get(type:"message"|"other", id:string): string|null {
return super.get(type,id)
}
set(type:"other", id:ODCheckerTranslationRegisterOtherIds_Default, translation:string): boolean
set(type:"message", id:ODCheckerTranslationRegisterMessageIds_Default, translation:string): boolean
set(type:"message"|"other", id:string, translation:string): boolean
set(type:"message"|"other", id:string, translation:string): boolean {
return super.set(type,id,translation)
}
delete(type:"other", id:ODCheckerTranslationRegisterOtherIds_Default): boolean
delete(type:"message", id:ODCheckerTranslationRegisterMessageIds_Default): boolean
delete(type:"message"|"other", id:string): boolean
delete(type:"message"|"other", id:string): boolean {
return super.delete(type,id)
}
quickTranslate(manager:ODLanguageManager_Default, translationId:string, type:"other"|"message", id:ODCheckerTranslationRegisterOtherIds_Default|ODCheckerTranslationRegisterMessageIds_Default)
quickTranslate(manager:ODLanguageManager_Default, translationId:string, type:"other"|"message", id:string)
quickTranslate(manager:ODLanguageManager_Default, translationId:string, type:"other"|"message", id:ODCheckerTranslationRegisterOtherIds_Default|ODCheckerTranslationRegisterMessageIds_Default|string){
super.quickTranslate(manager,translationId,type,id)
}
}
/**## ODCheckerFunctionManagerIds_Default `interface`
* This interface is a list of ids available in the `ODCheckerFunctionManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODCheckerFunctionManagerIds_Default {
"opendiscord:unused-options":api.ODCheckerFunction,
"opendiscord:unused-questions":api.ODCheckerFunction,
"opendiscord:dropdown-options":api.ODCheckerFunction
}
/**## ODCheckerFunctionManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCheckerFunctionManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.checkers.functions`!
*/
export class ODCheckerFunctionManager_Default extends api.ODCheckerFunctionManager {
get<CheckerFunctionId extends keyof ODCheckerFunctionManagerIds_Default>(id:CheckerFunctionId): ODCheckerFunctionManagerIds_Default[CheckerFunctionId]
get(id:api.ODValidId): api.ODCheckerFunction|null
get(id:api.ODValidId): api.ODCheckerFunction|null {
return super.get(id)
}
remove<CheckerFunctionId extends keyof ODCheckerFunctionManagerIds_Default>(id:CheckerFunctionId): ODCheckerFunctionManagerIds_Default[CheckerFunctionId]
remove(id:api.ODValidId): api.ODCheckerFunction|null
remove(id:api.ODValidId): api.ODCheckerFunction|null {
return super.remove(id)
}
exists(id:keyof ODCheckerFunctionManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-206
View File
@@ -1,206 +0,0 @@
///////////////////////////////////////
//DEFAULT CLIENT MODULE
///////////////////////////////////////
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.
*/
/**## ODClientManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODClientManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.client`!
*/
export class ODClientManager_Default extends api.ODClientManager {
declare slashCommands: ODSlashCommandManager_Default
declare textCommands: ODTextCommandManager_Default
declare contextMenus: ODContextMenuManager_Default
}
/**## ODSlashCommandManagerIds_Default `interface`
* This interface is a list of ids available in the `ODSlashCommandManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODSlashCommandManagerIds_Default {
"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,
}
/**## ODSlashCommandManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODSlashCommandManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.client.slashCommands`!
*/
export class ODSlashCommandManager_Default extends api.ODSlashCommandManager {
get<SlashCommandId extends keyof ODSlashCommandManagerIds_Default>(id:SlashCommandId): ODSlashCommandManagerIds_Default[SlashCommandId]
get(id:api.ODValidId): api.ODSlashCommand|null
get(id:api.ODValidId): api.ODSlashCommand|null {
return super.get(id)
}
remove<SlashCommandId extends keyof ODSlashCommandManagerIds_Default>(id:SlashCommandId): ODSlashCommandManagerIds_Default[SlashCommandId]
remove(id:api.ODValidId): api.ODSlashCommand|null
remove(id:api.ODValidId): api.ODSlashCommand|null {
return super.remove(id)
}
exists(id:keyof ODSlashCommandManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
onInteraction(commandName:keyof ODSlashCommandManagerIds_Default, callback:api.ODSlashCommandInteractionCallback): void
onInteraction(commandName:string|RegExp, callback:api.ODSlashCommandInteractionCallback): void
onInteraction(commandName:string|RegExp, callback:api.ODSlashCommandInteractionCallback): void {
return super.onInteraction(commandName,callback)
}
}
/**## ODTextCommandManagerIds_Default `interface`
* This interface is a list of ids available in the `ODTextCommandManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODTextCommandManagerIds_Default {
"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,
}
/**## ODTextCommandManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODTextCommandManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.client.textCommands`!
*/
export class ODTextCommandManager_Default extends api.ODTextCommandManager {
get<TextCommandId extends keyof ODTextCommandManagerIds_Default>(id:TextCommandId): ODTextCommandManagerIds_Default[TextCommandId]
get(id:api.ODValidId): api.ODTextCommand|null
get(id:api.ODValidId): api.ODTextCommand|null {
return super.get(id)
}
remove<TextCommandId extends keyof ODTextCommandManagerIds_Default>(id:TextCommandId): ODTextCommandManagerIds_Default[TextCommandId]
remove(id:api.ODValidId): api.ODTextCommand|null
remove(id:api.ODValidId): api.ODTextCommand|null {
return super.remove(id)
}
exists(id:keyof ODTextCommandManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
onInteraction(commandPrefix:string, commandName:string|RegExp, callback:api.ODTextCommandInteractionCallback): void {
return super.onInteraction(commandPrefix,commandName,callback)
}
}
/**## ODContextMenuManagerIds_Default `interface`
* This interface is a list of ids available in the `ODContextMenuManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODContextMenuManagerIds_Default {
//"opendiscord:test-menu":ODContextMenu
}
/**## ODContextMenuManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODContextMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.client.contextMenus`!
*/
export class ODContextMenuManager_Default extends api.ODContextMenuManager {
get<ContextMenuId extends keyof ODContextMenuManagerIds_Default>(id:ContextMenuId): ODContextMenuManagerIds_Default[ContextMenuId]
get(id:api.ODValidId): api.ODContextMenu|null
get(id:api.ODValidId): api.ODContextMenu|null {
return super.get(id)
}
remove<ContextMenuId extends keyof ODContextMenuManagerIds_Default>(id:ContextMenuId): ODContextMenuManagerIds_Default[ContextMenuId]
remove(id:api.ODValidId): api.ODContextMenu|null
remove(id:api.ODValidId): api.ODContextMenu|null {
return super.remove(id)
}
exists(id:keyof ODContextMenuManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
onInteraction(menuName:keyof ODContextMenuManagerIds_Default, callback:api.ODContextMenuInteractionCallback): void
onInteraction(menuName:string|RegExp, callback:api.ODContextMenuInteractionCallback): void
onInteraction(menuName:string|RegExp, callback:api.ODContextMenuInteractionCallback): void {
return super.onInteraction(menuName,callback)
}
}
-56
View File
@@ -1,56 +0,0 @@
///////////////////////////////////////
//DEFAULT CODE MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODCodeManagerIds_Default `interface`
* This interface is a list of ids available in the `ODCodeManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODCodeManagerIds_Default {
"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,
}
/**## ODCodeManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCodeManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.code`!
*/
export class ODCodeManager_Default extends api.ODCodeManager {
get<CodeId extends keyof ODCodeManagerIds_Default>(id:CodeId): ODCodeManagerIds_Default[CodeId]
get(id:api.ODValidId): api.ODCode|null
get(id:api.ODValidId): api.ODCode|null {
return super.get(id)
}
remove<CodeId extends keyof ODCodeManagerIds_Default>(id:CodeId): ODCodeManagerIds_Default[CodeId]
remove(id:api.ODValidId): api.ODCode|null
remove(id:api.ODValidId): api.ODCode|null {
return super.remove(id)
}
exists(id:keyof ODCodeManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-831
View File
@@ -1,831 +0,0 @@
///////////////////////////////////////
//DEFAULT CONFIG MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import * as discord from "discord.js"
import { ODRoleUpdateMode } from "../openticket/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.
*/
/**## ODConfigManagerIds_Default `interface`
* This interface is a list of ids available in the `ODConfigManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODConfigManagerIds_Default {
"opendiscord:general":ODJsonConfig_DefaultGeneral,
"opendiscord:questions":ODJsonConfig_DefaultQuestions,
"opendiscord:options":ODJsonConfig_DefaultOptions,
"opendiscord:panels":ODJsonConfig_DefaultPanels,
"opendiscord:transcripts":ODJsonConfig_DefaultTranscripts
}
/**## ODConfigManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODConfigManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.configs`!
*/
export class ODConfigManager_Default extends api.ODConfigManager {
get<ConfigId extends keyof ODConfigManagerIds_Default>(id:ConfigId): ODConfigManagerIds_Default[ConfigId]
get(id:api.ODValidId): api.ODConfig|null
get(id:api.ODValidId): api.ODConfig|null {
return super.get(id)
}
remove<ConfigId extends keyof ODConfigManagerIds_Default>(id:ConfigId): ODConfigManagerIds_Default[ConfigId]
remove(id:api.ODValidId): api.ODConfig|null
remove(id:api.ODValidId): api.ODConfig|null {
return super.remove(id)
}
exists(id:keyof ODConfigManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODJsonConfig_DefaultStatusType `interface`
* This interface is an object which has all properties for the status object in the `general.json` config!
*/
export interface ODJsonConfig_DefaultStatusType {
/**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,
}
/**## ODJsonConfig_DefaultMessageSettingsType `interface`
* This interface is an object which has all properties for the "system"."messages".... object in the `general.json` config!
*/
export interface ODJsonConfig_DefaultMessageSettingsType {
/**Enable sending DM logs to the ticket creator for this action. */
dm:boolean,
/**Enable sending logsto the log channel for this action. */
logs:boolean
}
/**## ODJsonConfig_DefaultCmdPermissionSettingsType `type`
* This type is a collection of command permission settings for the "system"."permissions".... object in the `general.json` config!
*/
export type ODJsonConfig_DefaultCmdPermissionSettingsType = "admin"|"everyone"|"none"|string
/**## ODJsonConfig_DefaultInfo `interface`
* This object contains a few URLs and metadata for the config.
*/
export interface ODJsonConfig_DefaultInfo {
/**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
}
/**## ODJsonConfig_DefaultSystemLogs `interface`
* All settings related to the log channel.
*/
export interface ODJsonConfig_DefaultSystemLogs {
/**Enable logging. Individual actions should still be added via the `"system"."messages"..."logs"` */
enabled:boolean,
/**The channel to send logs to. */
channel:string
}
/**## ODJsonConfig_DefaultSystemLimits `interface`
* All settings related to global ticket limits.
*/
export interface ODJsonConfig_DefaultSystemLimits {
/**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
}
/**## ODJsonConfig_DefaultSystemChannelTopic `interface`
* All global channel topic settings.
*/
export interface ODJsonConfig_DefaultSystemChannelTopic {
/**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
}
/**## ODJsonConfig_DefaultSystemPermissions `interface`
* Configure permissions for all Open Ticket commands & actions.
*/
export interface ODJsonConfig_DefaultSystemPermissions {
help:ODJsonConfig_DefaultCmdPermissionSettingsType,
panel:ODJsonConfig_DefaultCmdPermissionSettingsType,
ticket:ODJsonConfig_DefaultCmdPermissionSettingsType,
close:ODJsonConfig_DefaultCmdPermissionSettingsType,
delete:ODJsonConfig_DefaultCmdPermissionSettingsType,
reopen:ODJsonConfig_DefaultCmdPermissionSettingsType,
claim:ODJsonConfig_DefaultCmdPermissionSettingsType,
unclaim:ODJsonConfig_DefaultCmdPermissionSettingsType,
pin:ODJsonConfig_DefaultCmdPermissionSettingsType,
unpin:ODJsonConfig_DefaultCmdPermissionSettingsType,
move:ODJsonConfig_DefaultCmdPermissionSettingsType,
rename:ODJsonConfig_DefaultCmdPermissionSettingsType,
add:ODJsonConfig_DefaultCmdPermissionSettingsType,
remove:ODJsonConfig_DefaultCmdPermissionSettingsType,
blacklist:ODJsonConfig_DefaultCmdPermissionSettingsType,
stats:ODJsonConfig_DefaultCmdPermissionSettingsType,
clear:ODJsonConfig_DefaultCmdPermissionSettingsType,
autoclose:ODJsonConfig_DefaultCmdPermissionSettingsType,
autodelete:ODJsonConfig_DefaultCmdPermissionSettingsType,
transfer:ODJsonConfig_DefaultCmdPermissionSettingsType,
topic:ODJsonConfig_DefaultCmdPermissionSettingsType,
priority:ODJsonConfig_DefaultCmdPermissionSettingsType,
}
/**## ODJsonConfig_DefaultSystemMessages `interface`
* Configure dm & log messages for all Open Ticket commands & actions.
*/
export interface ODJsonConfig_DefaultSystemMessages {
creation:ODJsonConfig_DefaultMessageSettingsType,
closing:ODJsonConfig_DefaultMessageSettingsType,
deleting:ODJsonConfig_DefaultMessageSettingsType,
reopening:ODJsonConfig_DefaultMessageSettingsType,
claiming:ODJsonConfig_DefaultMessageSettingsType,
pinning:ODJsonConfig_DefaultMessageSettingsType,
adding:ODJsonConfig_DefaultMessageSettingsType,
removing:ODJsonConfig_DefaultMessageSettingsType,
renaming:ODJsonConfig_DefaultMessageSettingsType,
moving:ODJsonConfig_DefaultMessageSettingsType,
blacklisting:ODJsonConfig_DefaultMessageSettingsType,
transferring:ODJsonConfig_DefaultMessageSettingsType,
topicChange:ODJsonConfig_DefaultMessageSettingsType,
priorityChange:ODJsonConfig_DefaultMessageSettingsType,
reactionRole:ODJsonConfig_DefaultMessageSettingsType,
}
/**## ODJsonConfig_DefaultSystem `interface`
* All settings related to the ticket system.
*/
export interface ODJsonConfig_DefaultSystem {
/**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:ODJsonConfig_DefaultSystemLogs,
/**All settings related to global ticket limits. */
limits:ODJsonConfig_DefaultSystemLimits,
/**All global channel topic settings. */
channelTopic:ODJsonConfig_DefaultSystemChannelTopic,
/**Configure permissions for all Open Ticket commands & actions. */
permissions:ODJsonConfig_DefaultSystemPermissions,
/**Configure dm & log messages for all Open Ticket commands & actions. */
messages:ODJsonConfig_DefaultSystemMessages
}
/**## ODJsonConfig_DefaultGeneralData `interface`
* All contents of the `general.json` config file.
*/
export interface ODJsonConfig_DefaultGeneralData {
/**This object contains a few URLs and metadata for the config. */
_INFO:ODJsonConfig_DefaultInfo,
/**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:ODJsonConfig_DefaultStatusType,
/**All settings related to the ticket system. */
system:ODJsonConfig_DefaultSystem
}
/**## ODJsonConfig_DefaultGeneral `default_class`
* This is a special class that adds type definitions & typescript to the ODJsonConfig class.
* It doesn't add any extra features!
*
* This default class is made for the `general.json` config!
*/
export class ODJsonConfig_DefaultGeneral extends api.ODJsonConfig {
declare data: ODJsonConfig_DefaultGeneralData
}
/**## ODJsonConfig_DefaultOptionType `interface`
* This interface is an object which has all basic properties for options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionType {
/**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
}
}
/**## ODJsonConfig_DefaultOptionButtonSettingsType `interface`
* This interface is an object which has all button settings for ticket & reaction role options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionButtonSettingsType {
/**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
}
/**## ODJsonConfig_DefaultOptionEmbedSettingsType `interface`
* This interface is an object which has all message embed settings for ticket options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionEmbedSettingsType {
/**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
}
/**## ODJsonConfig_DefaultOptionPingSettingsType `interface`
* This interface is an object which has all message ping settings for ticket options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionPingSettingsType {
/**Ping `@here`. */
"@here":boolean,
/**Ping `@everyone`. */
"@everyone":boolean,
/**A list of custom discord role ids to ping. */
custom:string[]
}
/**## ODJsonConfig_DefaultOptionTicketChannelType `interface`
* All settings related to the ticket channel itself in a ticket option.
*/
export interface ODJsonConfig_DefaultOptionTicketChannelType {
/**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
}
/**## ODJsonConfig_DefaultOptionTicketType `interface`
* This interface is an object which has all ticket properties for options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionTicketType extends ODJsonConfig_DefaultOptionType {
type:"ticket",
button:ODJsonConfig_DefaultOptionButtonSettingsType,
/**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:ODJsonConfig_DefaultOptionTicketChannelType,
/**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:ODJsonConfig_DefaultOptionEmbedSettingsType
},
/**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:ODJsonConfig_DefaultOptionEmbedSettingsType,
/**Additional ping/mention settings for this ticket channel. */
ping:ODJsonConfig_DefaultOptionPingSettingsType
},
/**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
}
}
/**## ODJsonConfig_DefaultOptionWebsiteType `interface`
* This interface is an object which has all website properties for options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionWebsiteType extends ODJsonConfig_DefaultOptionType {
type:"website",
/**The URL this button will point to. */
url:string
}
/**## ODJsonConfig_DefaultOptionRoleType `interface`
* This interface is an object which has all reaction role properties for options in the `options.json` config!
*/
export interface ODJsonConfig_DefaultOptionRoleType extends ODJsonConfig_DefaultOptionType {
type:"role",
button:ODJsonConfig_DefaultOptionButtonSettingsType,
/**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
}
/**## ODJsonConfig_DefaultOptionsData `type`
* All contents of the `options.json` config file.
*/
export type ODJsonConfig_DefaultOptionsData = (ODJsonConfig_DefaultOptionTicketType|ODJsonConfig_DefaultOptionWebsiteType|ODJsonConfig_DefaultOptionRoleType)[]
/**## ODJsonConfig_DefaultOptions `default_class`
* This is a special class that adds type definitions & typescript to the ODJsonConfig class.
* It doesn't add any extra features!
*
* This default class is made for the `options.json` config!
*/
export class ODJsonConfig_DefaultOptions extends api.ODJsonConfig {
declare data: ODJsonConfig_DefaultOptionsData
}
/**## ODJsonConfig_DefaultPanelEmbedSettingsType `interface`
* This interface is an object which has all message embed settings for panels in the `panels.json` config!
*/
export interface ODJsonConfig_DefaultPanelEmbedSettingsType {
/**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
}
/**## ODJsonConfig_DefaultPanelSettingsType `interface`
* This interface is a collection of additional settings for extra customisation in a panel.
*/
export interface ODJsonConfig_DefaultPanelSettingsType {
/**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
}
/**## ODJsonConfig_DefaultPanelType `interface`
* This interface is an object which has all properties for panels in the `panels.json` config!
*/
export interface ODJsonConfig_DefaultPanelType {
/**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:ODJsonConfig_DefaultPanelEmbedSettingsType,
/**A collection of additional settings for extra customisation in a panel. */
settings:ODJsonConfig_DefaultPanelSettingsType
}
/**## ODJsonConfig_DefaultPanelsData `type`
* All contents of the `panels.json` config file.
*/
export type ODJsonConfig_DefaultPanelsData = ODJsonConfig_DefaultPanelType[]
/**## ODJsonConfig_DefaultPanels `default_class`
* This is a special class that adds type definitions & typescript to the ODJsonConfig class.
* It doesn't add any extra features!
*
* This default class is made for the `panels.json` config!
*/
export class ODJsonConfig_DefaultPanels extends api.ODJsonConfig {
declare data: ODJsonConfig_DefaultPanelsData
}
/**## ODJSonConfig_DefaultQuestionLengthSettings `interface`
* This interface is a collection of settings related to length validation in a question.
*/
export interface ODJSonConfig_DefaultQuestionLengthSettings {
/**Enable text length verification. */
enabled:boolean,
/**The minimum text input length. */
min:number,
/**The maximum text input length. */
max:number
}
/**## ODJsonConfig_DefaultShortQuestionType `interface`
* This interface is an object which has all properties for short questions in the `questions.json` config!
*/
export interface ODJsonConfig_DefaultShortQuestionType {
/**The id of this question. */
id:string,
/**The name of this question. */
name:string,
/**The type of this question. */
type:"short",
/**Is this question required? */
required:boolean,
/**A placeholder for the question. */
placeholder:string,
/**A collection of settings related to length validation in a question. */
length:ODJSonConfig_DefaultQuestionLengthSettings
}
/**## ODJsonConfig_DefaultParagraphQuestionType `interface`
* This interface is an object which has all properties for paragraph questions in the `questions.json` config!
*/
export interface ODJsonConfig_DefaultParagraphQuestionType {
/**The id of this question. */
id:string,
/**The name of this question. */
name:string,
/**The type of this question. */
type:"paragraph",
/**Is this question required? */
required:boolean,
/**A placeholder for the question. */
placeholder:string,
/**A collection of settings related to length validation in a question. */
length:ODJSonConfig_DefaultQuestionLengthSettings
}
/**## ODJsonConfig_DefaultQuestionsData `type`
* All contents of the `questions.json` config file.
*/
export type ODJsonConfig_DefaultQuestionsData = (ODJsonConfig_DefaultShortQuestionType|ODJsonConfig_DefaultParagraphQuestionType)[]
/**## ODJsonConfig_DefaultQuestions `default_class`
* This is a special class that adds type definitions & typescript to the ODJsonConfig class.
* It doesn't add any extra features!
*
* This default class is made for the `questions.json` config!
*/
export class ODJsonConfig_DefaultQuestions extends api.ODJsonConfig {
declare data: ODJsonConfig_DefaultQuestionsData
}
/**## ODJsonConfig_DefaultTranscriptsTextLayout `interface`
* This interface contains the layout of the text transcripts.
*/
export interface ODJsonConfig_DefaultTranscriptsTextLayout {
/**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
}
/**## ODJsonConfig_DefaultTranscriptsHtmlLayout `interface`
* This interface contains the layout of the HTML transcripts.
*/
export interface ODJsonConfig_DefaultTranscriptsHtmlLayout {
/**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
}
}
/**## ODJsonConfig_DefaultTranscriptsData `interface`
* All contents of the `transcripts.json` config file.
*/
export interface ODJsonConfig_DefaultTranscriptsData {
/**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:ODJsonConfig_DefaultTranscriptsTextLayout,
/**The layout of the HTML transcripts. */
htmlTranscriptStyle:ODJsonConfig_DefaultTranscriptsHtmlLayout
}
/**## ODJsonConfig_DefaultTranscripts `default_class`
* This is a special class that adds type definitions & typescript to the ODJsonConfig class.
* It doesn't add any extra features!
*
* This default class is made for the `transcripts.json` config!
*/
export class ODJsonConfig_DefaultTranscripts extends api.ODJsonConfig {
declare data: ODJsonConfig_DefaultTranscriptsData
}
-41
View File
@@ -1,41 +0,0 @@
///////////////////////////////////////
//DEFAULT CONSOLE MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODLiveStatusManagerIds_Default `interface`
* This interface is a list of ids available in the `ODLiveStatusManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODLiveStatusManagerIds_Default {
"opendiscord:default-djdj-dev":api.ODLiveStatusUrlSource
}
/**## ODLiveStatusManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODLiveStatusManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.livestatus`!
*/
export class ODLiveStatusManager_Default extends api.ODLiveStatusManager {
get<LiveStatusId extends keyof ODLiveStatusManagerIds_Default>(id:LiveStatusId): ODLiveStatusManagerIds_Default[LiveStatusId]
get(id:api.ODValidId): api.ODLiveStatusSource|null
get(id:api.ODValidId): api.ODLiveStatusSource|null {
return super.get(id)
}
remove<LiveStatusId extends keyof ODLiveStatusManagerIds_Default>(id:LiveStatusId): ODLiveStatusManagerIds_Default[LiveStatusId]
remove(id:api.ODValidId): api.ODLiveStatusSource|null
remove(id:api.ODValidId): api.ODLiveStatusSource|null {
return super.remove(id)
}
exists(id:keyof ODLiveStatusManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-41
View File
@@ -1,41 +0,0 @@
///////////////////////////////////////
//DEFAULT COOLDOWN MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODCooldownManagerIds_Default `interface`
* This interface is a list of ids available in the `ODCooldownManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODCooldownManagerIds_Default {
}
/**## ODCooldownManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCooldownManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.cooldowns`!
*/
export class ODCooldownManager_Default extends api.ODCooldownManager {
get<CooldownId extends keyof ODCooldownManagerIds_Default>(id:CooldownId): ODCooldownManagerIds_Default[CooldownId]
get(id:api.ODValidId): api.ODCooldown<object>|null
get(id:api.ODValidId): api.ODCooldown<object>|null {
return super.get(id)
}
remove<CooldownId extends keyof ODCooldownManagerIds_Default>(id:CooldownId): ODCooldownManagerIds_Default[CooldownId]
remove(id:api.ODValidId): api.ODCooldown<object>|null
remove(id:api.ODValidId): api.ODCooldown<object>|null {
return super.remove(id)
}
exists(id:keyof ODCooldownManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-256
View File
@@ -1,256 +0,0 @@
///////////////////////////////////////
//DEFAULT DATABASE MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODTicketJson } from "../openticket/ticket"
import { ODOptionJson } from "../openticket/option"
/**## ODDatabaseManagerIds_Default `interface`
* This interface is a list of ids available in the `ODDatabaseManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODDatabaseManagerIds_Default {
"opendiscord:global":ODFormattedJsonDatabase_DefaultGlobal,
"opendiscord:stats":api.ODFormattedJsonDatabase,
"opendiscord:tickets":ODFormattedJsonDatabase_DefaultTickets,
"opendiscord:users":ODFormattedJsonDatabase_DefaultUsers,
"opendiscord:options":ODFormattedJsonDatabase_DefaultOptions,
}
/**## ODDatabaseManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODDatabaseManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.databases`!
*/
export class ODDatabaseManager_Default extends api.ODDatabaseManager {
get<DatabaseId extends keyof ODDatabaseManagerIds_Default>(id:DatabaseId): ODDatabaseManagerIds_Default[DatabaseId]
get(id:api.ODValidId): api.ODDatabase|null
get(id:api.ODValidId): api.ODDatabase|null {
return super.get(id)
}
remove<DatabaseId extends keyof ODDatabaseManagerIds_Default>(id:DatabaseId): ODDatabaseManagerIds_Default[DatabaseId]
remove(id:api.ODValidId): api.ODDatabase|null
remove(id:api.ODValidId): api.ODDatabase|null {
return super.remove(id)
}
exists(id:keyof ODDatabaseManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODFormattedJsonDatabaseIds_DefaultGlobal `type`
* This interface is a list of ids available in the `ODFormattedJsonDatabase_DefaultGlobal` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFormattedJsonDatabaseIds_DefaultGlobal {
"opendiscord:panel-message":string,
"opendiscord:panel-update":string,
"opendiscord:option-suffix-counter":number,
"opendiscord:option-suffix-history":string[],
"opendiscord:last-version":string
}
/**## ODFormattedJsonDatabase_DefaultGlobal `default_class`
* This is a special class that adds type definitions & typescript to the ODFormattedJsonDatabase class.
* It doesn't add any extra features!
*
* This default class is made for the `global.json` database!
*/
export class ODFormattedJsonDatabase_DefaultGlobal extends api.ODFormattedJsonDatabase {
set<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultGlobal>(category:CategoryId, key:string, value:ODFormattedJsonDatabaseIds_DefaultGlobal[CategoryId]): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean> {
return super.set(category,key,value)
}
get<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultGlobal>(category:CategoryId, key:string): api.ODOptionalPromise<ODFormattedJsonDatabaseIds_DefaultGlobal[CategoryId]|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined> {
return super.get(category,key)
}
delete<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultGlobal>(category:CategoryId, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.delete(category,key)
}
exists(category:keyof ODFormattedJsonDatabaseIds_DefaultGlobal, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.exists(category,key)
}
getCategory<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultGlobal>(category:CategoryId): api.ODOptionalPromise<{key:string, value:ODFormattedJsonDatabaseIds_DefaultGlobal[CategoryId]}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined> {
return super.getCategory(category)
}
}
/**## ODFormattedJsonDatabaseIds_DefaultTickets `type`
* This interface is a list of ids available in the `ODDatabaseManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFormattedJsonDatabaseIds_DefaultTickets {
"opendiscord:ticket":ODTicketJson
}
/**## ODFormattedJsonDatabase_DefaultTickets `default_class`
* This is a special class that adds type definitions & typescript to the ODFormattedJsonDatabase class.
* It doesn't add any extra features!
*
* This default class is made for the `tickets.json` database!
*/
export class ODFormattedJsonDatabase_DefaultTickets extends api.ODFormattedJsonDatabase {
set<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultTickets>(category:CategoryId, key:string, value:ODFormattedJsonDatabaseIds_DefaultTickets[CategoryId]): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean> {
return super.set(category,key,value)
}
get<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultTickets>(category:CategoryId, key:string): api.ODOptionalPromise<ODFormattedJsonDatabaseIds_DefaultTickets[CategoryId]|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined> {
return super.get(category,key)
}
delete<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultTickets>(category:CategoryId, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.delete(category,key)
}
exists(category:keyof ODFormattedJsonDatabaseIds_DefaultTickets, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.exists(category,key)
}
getCategory<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultTickets>(category:CategoryId): api.ODOptionalPromise<{key:string, value:ODFormattedJsonDatabaseIds_DefaultTickets[CategoryId]}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined> {
return super.getCategory(category)
}
}
/**## ODFormattedJsonDatabaseIds_DefaultUsers `type`
* This interface is a list of ids available in the `ODDatabaseManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFormattedJsonDatabaseIds_DefaultUsers {
"opendiscord:blacklist":ODTicketJson
}
/**## ODFormattedJsonDatabase_DefaultUsers `default_class`
* This is a special class that adds type definitions & typescript to the ODFormattedJsonDatabase class.
* It doesn't add any extra features!
*
* This default class is made for the `users.json` database!
*/
export class ODFormattedJsonDatabase_DefaultUsers extends api.ODFormattedJsonDatabase {
set<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultUsers>(category:CategoryId, key:string, value:ODFormattedJsonDatabaseIds_DefaultUsers[CategoryId]): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean> {
return super.set(category,key,value)
}
get<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultUsers>(category:CategoryId, key:string): api.ODOptionalPromise<ODFormattedJsonDatabaseIds_DefaultUsers[CategoryId]|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined> {
return super.get(category,key)
}
delete<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultUsers>(category:CategoryId, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.delete(category,key)
}
exists(category:keyof ODFormattedJsonDatabaseIds_DefaultUsers, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.exists(category,key)
}
getCategory<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultUsers>(category:CategoryId): api.ODOptionalPromise<{key:string, value:ODFormattedJsonDatabaseIds_DefaultUsers[CategoryId]}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined> {
return super.getCategory(category)
}
}
/**## ODFormattedJsonDatabaseIds_DefaultOptions `type`
* This interface is a list of ids available in the `ODDatabaseManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFormattedJsonDatabaseIds_DefaultOptions {
"opendiscord:used-option":ODOptionJson
}
/**## ODFormattedJsonDatabase_DefaultOptions `default_class`
* This is a special class that adds type definitions & typescript to the ODFormattedJsonDatabase class.
* It doesn't add any extra features!
*
* This default class is made for the `options.json` database!
*/
export class ODFormattedJsonDatabase_DefaultOptions extends api.ODFormattedJsonDatabase {
set<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultOptions>(category:CategoryId, key:string, value:ODFormattedJsonDatabaseIds_DefaultOptions[CategoryId]): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean>
set(category:string, key:string, value:api.ODValidJsonType): api.ODOptionalPromise<boolean> {
return super.set(category,key,value)
}
get<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultOptions>(category:CategoryId, key:string): api.ODOptionalPromise<ODFormattedJsonDatabaseIds_DefaultOptions[CategoryId]|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined>
get(category:string, key:string): api.ODOptionalPromise<api.ODValidJsonType|undefined> {
return super.get(category,key)
}
delete<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultOptions>(category:CategoryId, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean>
delete(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.delete(category,key)
}
exists(category:keyof ODFormattedJsonDatabaseIds_DefaultOptions, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean>
exists(category:string, key:string): api.ODOptionalPromise<boolean> {
return super.exists(category,key)
}
getCategory<CategoryId extends keyof ODFormattedJsonDatabaseIds_DefaultOptions>(category:CategoryId): api.ODOptionalPromise<{key:string, value:ODFormattedJsonDatabaseIds_DefaultOptions[CategoryId]}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined>
getCategory(category:string): api.ODOptionalPromise<{key:string, value:api.ODValidJsonType}[]|undefined> {
return super.getCategory(category)
}
}
-384
View File
@@ -1,384 +0,0 @@
///////////////////////////////////////
//DEFAULT EVENT MODULE
///////////////////////////////////////
//BASE MODULES
import * as api from "@open-discord-bots/framework/api"
import * as discord from "discord.js"
//DEFAULT MODULES
import { ODPluginClassManager_Default, ODPluginManager_Default } from "./plugin"
import { ODConfigManager_Default} from "./config"
import { ODDatabaseManager_Default } from "./database"
import { ODFlagManager_Default } from "./flag"
import { ODSessionManager_Default } from "./session"
import { ODLanguageManager_Default } from "./language"
import { ODCheckerFunctionManager_Default, ODCheckerManager_Default, ODCheckerRenderer_Default, ODCheckerTranslationRegister_Default } from "./checker"
import { ODClientManager_Default, ODContextMenuManager_Default, ODSlashCommandManager_Default, ODTextCommandManager_Default } from "./client"
import { ODBuilderManager_Default, ODButtonManager_Default, ODDropdownManager_Default, ODEmbedManager_Default, ODFileManager_Default, ODMessageManager_Default, ODModalManager_Default } from "./builder"
import { ODAutocompleteResponderManager_Default, ODButtonResponderManager_Default, ODCommandResponderManager_Default, ODContextMenuResponderManager_Default, ODDropdownResponderManager_Default, ODModalResponderManager_Default, ODResponderManager_Default } from "./responder"
import { ODActionManager_Default } from "./action"
import { ODPermissionManager_Default } from "./permission"
import { ODHelpMenuManager_Default } from "./helpmenu"
import { ODStatsManager_Default } from "./stat"
import { ODCodeManager_Default } from "./code"
import { ODCooldownManager_Default } from "./cooldown"
import { ODPostManager_Default } from "./post"
import { ODVerifyBarManager_Default } from "./verifybar"
import { ODStartScreenManager_Default } from "./startscreen"
import { ODLiveStatusManager_Default } from "./console"
import { ODProgressBarManager_Default, ODProgressBarRendererManager_Default } from "./progressbar"
//OPEN TICKET MODULES
import { ODOptionManager, ODTicketOption } from "../openticket/option"
import { ODPanel, ODPanelManager } from "../openticket/panel"
import { ODTicket, ODTicketClearFilter, ODTicketManager } from "../openticket/ticket"
import { ODQuestionManager } from "../openticket/question"
import { ODBlacklistManager } from "../openticket/blacklist"
import { ODTranscriptManager_Default } from "../openticket/transcript"
import { ODRole, ODRoleManager } from "../openticket/role"
import { ODPriorityLevel, ODPriorityManager_Default } from "../openticket/priority"
/**## ODEventIds_Default `interface`
* This interface is a list of ids available in the `ODEvent_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODEventIds_Default {
//error handling
"onErrorHandling": ODEvent_Default<(error:Error, origin:NodeJS.UncaughtExceptionOrigin) => api.ODPromiseVoid>
"afterErrorHandling": ODEvent_Default<(error:Error, origin:NodeJS.UncaughtExceptionOrigin, message:api.ODError) => api.ODPromiseVoid>
//plugins
"afterPluginsLoaded": ODEvent_Default<(plugins:ODPluginManager_Default) => api.ODPromiseVoid>
"onPluginClassLoad": ODEvent_Default<(classes:ODPluginClassManager_Default, plugins:ODPluginManager_Default) => api.ODPromiseVoid>
"afterPluginClassesLoaded": ODEvent_Default<(classes:ODPluginClassManager_Default, plugins:ODPluginManager_Default) => api.ODPromiseVoid>
//flags
"onFlagLoad": ODEvent_Default<(flags:ODFlagManager_Default) => api.ODPromiseVoid>
"afterFlagsLoaded": ODEvent_Default<(flags:ODFlagManager_Default) => api.ODPromiseVoid>
"onFlagInit": ODEvent_Default<(flags:ODFlagManager_Default) => api.ODPromiseVoid>
"afterFlagsInitiated": ODEvent_Default<(flags:ODFlagManager_Default) => api.ODPromiseVoid>
//progress bars
"onProgressBarRendererLoad": ODEvent_Default<(renderers:ODProgressBarRendererManager_Default) => api.ODPromiseVoid>
"afterProgressBarRenderersLoaded": ODEvent_Default<(renderers:ODProgressBarRendererManager_Default) => api.ODPromiseVoid>
"onProgressBarLoad": ODEvent_Default<(progressbars:ODProgressBarManager_Default) => api.ODPromiseVoid>
"afterProgressBarsLoaded": ODEvent_Default<(progressbars:ODProgressBarManager_Default) => api.ODPromiseVoid>
//configs
"onConfigLoad": ODEvent_Default<(configs:ODConfigManager_Default) => api.ODPromiseVoid>
"afterConfigsLoaded": ODEvent_Default<(configs:ODConfigManager_Default) => api.ODPromiseVoid>
"onConfigInit": ODEvent_Default<(configs:ODConfigManager_Default) => api.ODPromiseVoid>
"afterConfigsInitiated": ODEvent_Default<(configs:ODConfigManager_Default) => api.ODPromiseVoid>
//databases
"onDatabaseLoad": ODEvent_Default<(databases:ODDatabaseManager_Default) => api.ODPromiseVoid>
"afterDatabasesLoaded": ODEvent_Default<(databases:ODDatabaseManager_Default) => api.ODPromiseVoid>
"onDatabaseInit": ODEvent_Default<(databases:ODDatabaseManager_Default) => api.ODPromiseVoid>
"afterDatabasesInitiated": ODEvent_Default<(databases:ODDatabaseManager_Default) => api.ODPromiseVoid>
//languages
"onLanguageLoad": ODEvent_Default<(languages:ODLanguageManager_Default) => api.ODPromiseVoid>
"afterLanguagesLoaded": ODEvent_Default<(languages:ODLanguageManager_Default) => api.ODPromiseVoid>
"onLanguageInit": ODEvent_Default<(languages:ODLanguageManager_Default) => api.ODPromiseVoid>
"afterLanguagesInitiated": ODEvent_Default<(languages:ODLanguageManager_Default) => api.ODPromiseVoid>
"onLanguageSelect": ODEvent_Default<(languages:ODLanguageManager_Default) => api.ODPromiseVoid>
"afterLanguagesSelected": ODEvent_Default<(main:api.ODLanguage|null, backup:api.ODLanguage|null, languages:ODLanguageManager_Default) => api.ODPromiseVoid>
//sessions
"onSessionLoad": ODEvent_Default<(languages:ODSessionManager_Default) => api.ODPromiseVoid>
"afterSessionsLoaded": ODEvent_Default<(languages:ODSessionManager_Default) => api.ODPromiseVoid>
//config checkers
"onCheckerLoad": ODEvent_Default<(checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"afterCheckersLoaded": ODEvent_Default<(checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"onCheckerFunctionLoad": ODEvent_Default<(functions:ODCheckerFunctionManager_Default, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"afterCheckerFunctionsLoaded": ODEvent_Default<(functions:ODCheckerFunctionManager_Default, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"onCheckerExecute": ODEvent_Default<(checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"afterCheckersExecuted": ODEvent_Default<(result:api.ODCheckerResult, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"onCheckerTranslationLoad": ODEvent_Default<(translations:ODCheckerTranslationRegister_Default, enabled:boolean, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"afterCheckerTranslationsLoaded": ODEvent_Default<(translations:ODCheckerTranslationRegister_Default, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"onCheckerRender": ODEvent_Default<(renderer:ODCheckerRenderer_Default, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"afterCheckersRendered": ODEvent_Default<(renderer:ODCheckerRenderer_Default, checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
"onCheckerQuit": ODEvent_Default<(checkers:ODCheckerManager_Default) => api.ODPromiseVoid>
//plugin loading before client
"onPluginBeforeClientLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeClientLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//client configuration
"onClientLoad": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"afterClientLoaded": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"onClientInit": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"afterClientInitiated": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"onClientReady": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"afterClientReady": ODEvent_Default<(client:ODClientManager_Default) => api.ODPromiseVoid>
"onClientActivityLoad": ODEvent_Default<(activity:api.ODClientActivityManager, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterClientActivityLoaded": ODEvent_Default<(activity:api.ODClientActivityManager, client:ODClientManager_Default) => api.ODPromiseVoid>
"onClientActivityInit": ODEvent_Default<(activity:api.ODClientActivityManager, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterClientActivityInitiated": ODEvent_Default<(activity:api.ODClientActivityManager, client:ODClientManager_Default) => api.ODPromiseVoid>
//priority levels
"onPriorityLoad": ODEvent_Default<(priorities:ODPriorityManager_Default) => api.ODPromiseVoid>
"afterPrioritiesLoaded": ODEvent_Default<(priorities:ODPriorityManager_Default) => api.ODPromiseVoid>
//client slash commands
"onSlashCommandLoad": ODEvent_Default<(slash:ODSlashCommandManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterSlashCommandsLoaded": ODEvent_Default<(slash:ODSlashCommandManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"onSlashCommandRegister": ODEvent_Default<(slash:ODSlashCommandManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterSlashCommandsRegistered": ODEvent_Default<(slash:ODSlashCommandManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
//client context menus
"onContextMenuLoad": ODEvent_Default<(menu:ODContextMenuManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterContextMenusLoaded": ODEvent_Default<(menu:ODContextMenuManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"onContextMenuRegister": ODEvent_Default<(menu:ODContextMenuManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
"afterContextMenusRegistered": ODEvent_Default<(menu:ODContextMenuManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
//client text commands
"onTextCommandLoad": ODEvent_Default<(text:ODTextCommandManager_Default, client:ODClientManager_Default,) => api.ODPromiseVoid>
"afterTextCommandsLoaded": ODEvent_Default<(text:ODTextCommandManager_Default, client:ODClientManager_Default) => api.ODPromiseVoid>
//plugin loading before managers
"onPluginBeforeManagerLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeManagerLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//questions
"onQuestionLoad": ODEvent_Default<(questions:ODQuestionManager) => api.ODPromiseVoid>
"afterQuestionsLoaded": ODEvent_Default<(questions:ODQuestionManager) => api.ODPromiseVoid>
//options
"onOptionLoad": ODEvent_Default<(options:ODOptionManager) => api.ODPromiseVoid>
"afterOptionsLoaded": ODEvent_Default<(options:ODOptionManager) => api.ODPromiseVoid>
//panels
"onPanelLoad": ODEvent_Default<(panels:ODPanelManager) => api.ODPromiseVoid>
"afterPanelsLoaded": ODEvent_Default<(panels:ODPanelManager) => api.ODPromiseVoid>
"onPanelSpawn": ODEvent_Default<(panel:ODPanel) => api.ODPromiseVoid>
"afterPanelSpawned": ODEvent_Default<(panel:ODPanel) => api.ODPromiseVoid>
//tickets
"onTicketLoad": ODEvent_Default<(tickets:ODTicketManager) => api.ODPromiseVoid>
"afterTicketsLoaded": ODEvent_Default<(tickets:ODTicketManager) => api.ODPromiseVoid>
//ticket creation
"onTicketChannelCreation": ODEvent_Default<(option:ODTicketOption, user:discord.User) => api.ODPromiseVoid>
"afterTicketChannelCreated": ODEvent_Default<(option:ODTicketOption, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
"onTicketChannelDeletion": ODEvent_Default<(ticket:ODTicket, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
"afterTicketChannelDeleted": ODEvent_Default<(ticket:ODTicket, user:discord.User) => api.ODPromiseVoid>
"onTicketPermissionsCreated": ODEvent_Default<(option:ODTicketOption, permissions:ODPermissionManager_Default, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
"afterTicketPermissionsCreated": ODEvent_Default<(option:ODTicketOption, permissions:ODPermissionManager_Default, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
"onTicketMainMessageCreated": ODEvent_Default<(ticket:ODTicket, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
"afterTicketMainMessageCreated": ODEvent_Default<(ticket:ODTicket, message:discord.Message, channel:discord.GuildTextBasedChannel, user:discord.User) => api.ODPromiseVoid>
//ticket actions
"onTicketCreate": ODEvent_Default<(creator:discord.User) => api.ODPromiseVoid>
"afterTicketCreated": ODEvent_Default<(ticket:ODTicket, creator:discord.User, channel:discord.GuildTextBasedChannel) => api.ODPromiseVoid>
"onTicketClose": ODEvent_Default<(ticket:ODTicket, closer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketClosed": ODEvent_Default<(ticket:ODTicket, closer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketReopen": ODEvent_Default<(ticket:ODTicket, reopener:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketReopened": ODEvent_Default<(ticket:ODTicket, reopener:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketDelete": ODEvent_Default<(ticket:ODTicket, deleter:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketDeleted": ODEvent_Default<(ticket:ODTicket, deleter:discord.User, reason:string|null) => api.ODPromiseVoid>
"onTicketMove": ODEvent_Default<(ticket:ODTicket, mover:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketMoved": ODEvent_Default<(ticket:ODTicket, mover:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketClaim": ODEvent_Default<(ticket:ODTicket, claimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketClaimed": ODEvent_Default<(ticket:ODTicket, claimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketUnclaim": ODEvent_Default<(ticket:ODTicket, unclaimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketUnclaimed": ODEvent_Default<(ticket:ODTicket, unclaimer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketPin": ODEvent_Default<(ticket:ODTicket, pinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketPinned": ODEvent_Default<(ticket:ODTicket, pinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketUnpin": ODEvent_Default<(ticket:ODTicket, unpinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketUnpinned": ODEvent_Default<(ticket:ODTicket, unpinner:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketUserAdd": ODEvent_Default<(ticket:ODTicket, adder:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketUserAdded": ODEvent_Default<(ticket:ODTicket, adder:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketUserRemove": ODEvent_Default<(ticket:ODTicket, remover:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketUserRemoved": ODEvent_Default<(ticket:ODTicket, remover:discord.User, user:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketRename": ODEvent_Default<(ticket:ODTicket, renamer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"afterTicketRenamed": ODEvent_Default<(ticket:ODTicket, renamer:discord.User, channel:discord.GuildTextBasedChannel, reason:string|null) => api.ODPromiseVoid>
"onTicketsClear": ODEvent_Default<(tickets:ODTicket[], clearer:discord.User, channel:discord.GuildTextBasedChannel, filter:ODTicketClearFilter) => api.ODPromiseVoid>
"afterTicketsCleared": ODEvent_Default<(tickets:ODTicket[], clearer:discord.User, channel:discord.GuildTextBasedChannel, filter:ODTicketClearFilter) => api.ODPromiseVoid>
"onTicketTopicChange": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldTopic:string, newTopic:string) => api.ODPromiseVoid>
"afterTicketTopicChanged": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldTopic:string, newTopic:string) => api.ODPromiseVoid>
"onTicketPriorityChange": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldPriority:ODPriorityLevel, newPriority:ODPriorityLevel, reason:string|null) => api.ODPromiseVoid>
"afterTicketPriorityChanged": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldPriority:ODPriorityLevel, newPriority:ODPriorityLevel, reason:string|null) => api.ODPromiseVoid>
"onTicketTransfer": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldCreator:discord.User, newCreator:discord.User, reason:string|null) => api.ODPromiseVoid>
"afterTicketTransferred": ODEvent_Default<(ticket:ODTicket, changer:discord.User, channel:discord.GuildTextBasedChannel, oldCreator:discord.User, newCreator:discord.User, reason:string|null) => api.ODPromiseVoid>
//roles
"onRoleLoad": ODEvent_Default<(roles:ODRoleManager) => api.ODPromiseVoid>
"afterRolesLoaded": ODEvent_Default<(roles:ODRoleManager) => api.ODPromiseVoid>
"onRoleUpdate": ODEvent_Default<(user:discord.User,role:ODRole) => api.ODPromiseVoid>
"afterRolesUpdated": ODEvent_Default<(user:discord.User,role:ODRole) => api.ODPromiseVoid>
//blacklist
"onBlacklistLoad": ODEvent_Default<(blacklist:ODBlacklistManager) => api.ODPromiseVoid>
"afterBlacklistLoaded": ODEvent_Default<(blacklist:ODBlacklistManager) => api.ODPromiseVoid>
//transcripts
"onTranscriptCompilerLoad": ODEvent_Default<(transcripts:ODTranscriptManager_Default) => api.ODPromiseVoid>
"afterTranscriptCompilersLoaded": ODEvent_Default<(transcripts:ODTranscriptManager_Default) => api.ODPromiseVoid>
"onTranscriptHistoryLoad": ODEvent_Default<(transcripts:ODTranscriptManager_Default) => api.ODPromiseVoid>
"afterTranscriptHistoryLoaded": ODEvent_Default<(transcripts:ODTranscriptManager_Default) => api.ODPromiseVoid>
//transcript creation
"onTranscriptCreate": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"afterTranscriptCreated": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"onTranscriptInit": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"afterTranscriptInitiated": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"onTranscriptCompile": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"afterTranscriptCompiled": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"onTranscriptReady": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
"afterTranscriptReady": ODEvent_Default<(transcripts:ODTranscriptManager_Default,ticket:ODTicket,channel:discord.TextChannel,user:discord.User) => api.ODPromiseVoid>
//plugin loading before builders
"onPluginBeforeBuilderLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeBuilderLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//builders
"onButtonBuilderLoad": ODEvent_Default<(buttons:ODButtonManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterButtonBuildersLoaded": ODEvent_Default<(buttons:ODButtonManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onDropdownBuilderLoad": ODEvent_Default<(dropdowns:ODDropdownManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterDropdownBuildersLoaded": ODEvent_Default<(dropdowns:ODDropdownManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onFileBuilderLoad": ODEvent_Default<(files:ODFileManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterFileBuildersLoaded": ODEvent_Default<(files:ODFileManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onEmbedBuilderLoad": ODEvent_Default<(embeds:ODEmbedManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterEmbedBuildersLoaded": ODEvent_Default<(embeds:ODEmbedManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onMessageBuilderLoad": ODEvent_Default<(messages:ODMessageManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterMessageBuildersLoaded": ODEvent_Default<(messages:ODMessageManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onModalBuilderLoad": ODEvent_Default<(modals:ODModalManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterModalBuildersLoaded": ODEvent_Default<(modals:ODModalManager_Default, builders:ODBuilderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
//plugin loading before responders
"onPluginBeforeResponderLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeResponderLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//responders
"onCommandResponderLoad": ODEvent_Default<(commands:ODCommandResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterCommandRespondersLoaded": ODEvent_Default<(commands:ODCommandResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onButtonResponderLoad": ODEvent_Default<(buttons:ODButtonResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterButtonRespondersLoaded": ODEvent_Default<(buttons:ODButtonResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onDropdownResponderLoad": ODEvent_Default<(dropdowns:ODDropdownResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterDropdownRespondersLoaded": ODEvent_Default<(dropdowns:ODDropdownResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onModalResponderLoad": ODEvent_Default<(modals:ODModalResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterModalRespondersLoaded": ODEvent_Default<(modals:ODModalResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onContextMenuResponderLoad": ODEvent_Default<(menus:ODContextMenuResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterContextMenuRespondersLoaded": ODEvent_Default<(menus:ODContextMenuResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"onAutocompleteResponderLoad": ODEvent_Default<(autocomplete:ODAutocompleteResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterAutocompleteRespondersLoaded": ODEvent_Default<(autocomplete:ODAutocompleteResponderManager_Default, responders:ODResponderManager_Default, actions:ODActionManager_Default) => api.ODPromiseVoid>
//plugin loading before finalizations
"onPluginBeforeFinalizationLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeFinalizationLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//actions
"onActionLoad": ODEvent_Default<(actions:ODActionManager_Default) => api.ODPromiseVoid>
"afterActionsLoaded": ODEvent_Default<(actions:ODActionManager_Default) => api.ODPromiseVoid>
//verifybars
"onVerifyBarLoad": ODEvent_Default<(verifybars:ODVerifyBarManager_Default) => api.ODPromiseVoid>
"afterVerifyBarsLoaded": ODEvent_Default<(verifybars:ODVerifyBarManager_Default) => api.ODPromiseVoid>
//permissions
"onPermissionLoad": ODEvent_Default<(permissions:ODPermissionManager_Default) => api.ODPromiseVoid>
"afterPermissionsLoaded": ODEvent_Default<(permissions:ODPermissionManager_Default) => api.ODPromiseVoid>
//posts
"onPostLoad": ODEvent_Default<(posts:ODPostManager_Default) => api.ODPromiseVoid>
"afterPostsLoaded": ODEvent_Default<(posts:ODPostManager_Default) => api.ODPromiseVoid>
"onPostInit": ODEvent_Default<(posts:ODPostManager_Default) => api.ODPromiseVoid>
"afterPostsInitiated": ODEvent_Default<(posts:ODPostManager_Default) => api.ODPromiseVoid>
//cooldowns
"onCooldownLoad": ODEvent_Default<(cooldowns:ODCooldownManager_Default) => api.ODPromiseVoid>
"afterCooldownsLoaded": ODEvent_Default<(cooldowns:ODCooldownManager_Default) => api.ODPromiseVoid>
"onCooldownInit": ODEvent_Default<(cooldowns:ODCooldownManager_Default) => api.ODPromiseVoid>
"afterCooldownsInitiated": ODEvent_Default<(cooldowns:ODCooldownManager_Default) => api.ODPromiseVoid>
//help menu
"onHelpMenuCategoryLoad": ODEvent_Default<(menu:ODHelpMenuManager_Default) => api.ODPromiseVoid>
"afterHelpMenuCategoriesLoaded": ODEvent_Default<(menu:ODHelpMenuManager_Default) => api.ODPromiseVoid>
"onHelpMenuComponentLoad": ODEvent_Default<(menu:ODHelpMenuManager_Default) => api.ODPromiseVoid>
"afterHelpMenuComponentsLoaded": ODEvent_Default<(menu:ODHelpMenuManager_Default) => api.ODPromiseVoid>
//stats
"onStatScopeLoad": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
"afterStatScopesLoaded": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
"onStatLoad": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
"afterStatsLoaded": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
"onStatInit": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
"afterStatsInitiated": ODEvent_Default<(stats:ODStatsManager_Default) => api.ODPromiseVoid>
//plugin loading before code
"onPluginBeforeCodeLoad": ODEvent_Default<() => api.ODPromiseVoid>,
"afterPluginBeforeCodeLoaded": ODEvent_Default<() => api.ODPromiseVoid>,
//code
"onCodeLoad": ODEvent_Default<(code:ODCodeManager_Default) => api.ODPromiseVoid>
"afterCodeLoaded": ODEvent_Default<(code:ODCodeManager_Default) => api.ODPromiseVoid>
"onCodeExecute": ODEvent_Default<(code:ODCodeManager_Default) => api.ODPromiseVoid>
"afterCodeExecuted": ODEvent_Default<(code:ODCodeManager_Default) => api.ODPromiseVoid>
//livestatus
"onLiveStatusSourceLoad": ODEvent_Default<(livestatus:ODLiveStatusManager_Default) => api.ODPromiseVoid>
"afterLiveStatusSourcesLoaded": ODEvent_Default<(livestatus:ODLiveStatusManager_Default) => api.ODPromiseVoid>
//startscreen
"onStartScreenLoad": ODEvent_Default<(startscreen:ODStartScreenManager_Default) => api.ODPromiseVoid>
"afterStartScreensLoaded": ODEvent_Default<(startscreen:ODStartScreenManager_Default) => api.ODPromiseVoid>
"onStartScreenRender": ODEvent_Default<(startscreen:ODStartScreenManager_Default) => api.ODPromiseVoid>
"afterStartScreensRendered": ODEvent_Default<(startscreen:ODStartScreenManager_Default) => api.ODPromiseVoid>
//ready
"beforeReadyForUsage": ODEvent_Default<() => api.ODPromiseVoid>
"onReadyForUsage": ODEvent_Default<() => api.ODPromiseVoid>
}
/**## ODEventManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODEvent class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.events`!
*/
export class ODEventManager_Default extends api.ODEventManager {
get<StartScreenId extends keyof ODEventIds_Default>(id:StartScreenId): ODEventIds_Default[StartScreenId]
get(id:api.ODValidId): api.ODEvent|null
get(id:api.ODValidId): api.ODEvent|null {
return super.get(id)
}
remove<StartScreenId extends keyof ODEventIds_Default>(id:StartScreenId): ODEventIds_Default[StartScreenId]
remove(id:api.ODValidId): api.ODEvent|null
remove(id:api.ODValidId): api.ODEvent|null {
return super.remove(id)
}
exists(id:keyof ODEventIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODEventManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODEvent class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.events`!
*/
export class ODEvent_Default<Callback extends ((...args:any) => api.ODPromiseVoid)> extends api.ODEvent {
listen(callback:Callback): void {
return super.listen(callback)
}
listenOnce(callback:Callback): void {
return super.listenOnce(callback)
}
wait(): Promise<Parameters<Callback>>
wait(): Promise<any[]> {
return super.wait()
}
emit(params:Parameters<Callback>): Promise<void> {
return super.emit(params)
}
}
-56
View File
@@ -1,56 +0,0 @@
///////////////////////////////////////
//DEFAULT PROCESS MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODFlagManagerIds_Default `interface`
* This interface is a list of ids available in the `ODFlagManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODFlagManagerIds_Default {
"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,
}
/**## ODFlagManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODFlagManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.flags`!
*/
export class ODFlagManager_Default extends api.ODFlagManager {
get<FlagId extends keyof ODFlagManagerIds_Default>(id:FlagId): ODFlagManagerIds_Default[FlagId]
get(id:api.ODValidId): api.ODFlag|null
get(id:api.ODValidId): api.ODFlag|null {
return super.get(id)
}
remove<FlagId extends keyof ODFlagManagerIds_Default>(id:FlagId): ODFlagManagerIds_Default[FlagId]
remove(id:api.ODValidId): api.ODFlag|null
remove(id:api.ODValidId): api.ODFlag|null {
return super.remove(id)
}
exists(id:keyof ODFlagManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-27
View File
@@ -1,27 +0,0 @@
///////////////////////////////////////
//DEFAULT FUSE MODULE
///////////////////////////////////////
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,
}
-337
View File
@@ -1,337 +0,0 @@
///////////////////////////////////////
//DEFAULT HELP MODULE
///////////////////////////////////////
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.
*/
/**## ODHelpMenuManagerIds_Default `interface`
* This interface is a list of ids available in the `ODHelpMenuManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerIds_Default {
"opendiscord:general":ODHelpMenuCategory_DefaultGeneral,
"opendiscord:ticket-basic":ODHelpMenuCategory_DefaultTicketBasic,
"opendiscord:ticket-advanced":ODHelpMenuCategory_DefaultTicketAdvanced,
"opendiscord:ticket-user":ODHelpMenuCategory_DefaultTicketUser,
"opendiscord:admin":ODHelpMenuCategory_DefaultAdmin,
"opendiscord:advanced":ODHelpMenuCategory_DefaultAdvanced,
"opendiscord:extra":ODHelpMenuCategory_DefaultExtra
}
/**## ODHelpMenuManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.helpmenu`!
*/
export class ODHelpMenuManager_Default extends api.ODHelpMenuManager {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerIds_Default>(id:HelpMenuCategoryId): ODHelpMenuManagerIds_Default[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuCategory|null
get(id:api.ODValidId): api.ODHelpMenuCategory|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerIds_Default>(id:HelpMenuCategoryId): ODHelpMenuManagerIds_Default[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuCategory|null
remove(id:api.ODValidId): api.ODHelpMenuCategory|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultGeneral `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultGeneral` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultGeneral {
"opendiscord:help":api.ODHelpMenuCommandComponent,
"opendiscord:ticket":api.ODHelpMenuCommandComponent|null
}
/**## ODHelpMenuCategory_DefaultGeneral `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:general` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultGeneral extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultGeneral>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultGeneral[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultGeneral>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultGeneral[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultGeneral): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultTicketBasic `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultTicketBasic` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultTicketBasic {
"opendiscord:close":api.ODHelpMenuCommandComponent,
"opendiscord:delete":api.ODHelpMenuCommandComponent,
"opendiscord:reopen":api.ODHelpMenuCommandComponent
}
/**## ODHelpMenuCategory_DefaultTicketBasic `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:ticket` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultTicketBasic extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketBasic>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketBasic[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketBasic>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketBasic[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultTicketBasic): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultTicketAdvanced` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced {
"opendiscord:pin":api.ODHelpMenuCommandComponent,
"opendiscord:unpin":api.ODHelpMenuCommandComponent,
"opendiscord:move":api.ODHelpMenuCommandComponent,
"opendiscord:rename":api.ODHelpMenuCommandComponent
}
/**## ODHelpMenuCategory_DefaultTicketAdvanced `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:ticket` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultTicketAdvanced extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultTicketAdvanced): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultTicketUser `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultTicketUser` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultTicketUser {
"opendiscord:claim":api.ODHelpMenuCommandComponent,
"opendiscord:unclaim":api.ODHelpMenuCommandComponent,
"opendiscord:add":api.ODHelpMenuCommandComponent,
"opendiscord:remove":api.ODHelpMenuCommandComponent,
"opendiscord:transfer":api.ODHelpMenuCommandComponent,
}
/**## ODHelpMenuCategory_DefaultTicketUser `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:ticket` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultTicketUser extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketUser>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketUser[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultTicketUser>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultTicketUser[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultTicketUser): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultAdmin `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultAdmin` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultAdmin {
"opendiscord:panel":api.ODHelpMenuCommandComponent,
"opendiscord:blacklist-view":api.ODHelpMenuCommandComponent,
"opendiscord:blacklist-add":api.ODHelpMenuCommandComponent,
"opendiscord:blacklist-remove":api.ODHelpMenuCommandComponent,
"opendiscord:blacklist-get":api.ODHelpMenuCommandComponent
}
/**## ODHelpMenuCategory_DefaultAdmin `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:admin` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultAdmin extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultAdmin>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultAdmin[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultAdmin>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultAdmin[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultAdmin): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultAdvanced `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultAdvanced` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultAdvanced {
"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,
}
/**## ODHelpMenuCategory_DefaultAdvanced `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:advanced` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultAdvanced extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultAdvanced>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultAdvanced[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultAdvanced>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultAdvanced[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultAdvanced): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODHelpMenuManagerCategoryIds_DefaultExtra `type`
* This interface is a list of ids available in the `ODHelpMenuCategory_DefaultExtra` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODHelpMenuManagerCategoryIds_DefaultExtra {}
/**## ODHelpMenuCategory_DefaultExtra `default_class`
* This is a special class that adds type definitions & typescript to the ODHelpMenuManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:general` category in `opendiscord.helpmenu`!
*/
export class ODHelpMenuCategory_DefaultExtra extends api.ODHelpMenuCategory {
get<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultExtra>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultExtra[HelpMenuCategoryId]
get(id:api.ODValidId): api.ODHelpMenuComponent|null
get(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.get(id)
}
remove<HelpMenuCategoryId extends keyof ODHelpMenuManagerCategoryIds_DefaultExtra>(id:HelpMenuCategoryId): ODHelpMenuManagerCategoryIds_DefaultExtra[HelpMenuCategoryId]
remove(id:api.ODValidId): api.ODHelpMenuComponent|null
remove(id:api.ODValidId): api.ODHelpMenuComponent|null {
return super.remove(id)
}
exists(id:keyof ODHelpMenuManagerCategoryIds_DefaultExtra): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-680
View File
@@ -1,680 +0,0 @@
///////////////////////////////////////
//DEFAULT LANGUAGE MODULE
///////////////////////////////////////
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.
*/
/**## ODLanguageManagerIds_Default `interface`
* This interface is a list of ids available in the `ODLanguageManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODLanguageManagerIds_Default {
"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!!!
}
/**## ODLanguageManagerTranslations_Default `type`
* This interface is a list of ids available in the `ODLanguageManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export type ODLanguageManagerTranslations_Default = (
"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"
)
/**## ODLanguageManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODLanguageManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.languages`!
*/
export class ODLanguageManager_Default extends api.ODLanguageManager {
get<LanguageId extends keyof ODLanguageManagerIds_Default>(id:LanguageId): ODLanguageManagerIds_Default[LanguageId]
get(id:api.ODValidId): api.ODLanguage|null
get(id:api.ODValidId): api.ODLanguage|null {
return super.get(id)
}
remove<LanguageId extends keyof ODLanguageManagerIds_Default>(id:LanguageId): ODLanguageManagerIds_Default[LanguageId]
remove(id:api.ODValidId): api.ODLanguage|null
remove(id:api.ODValidId): api.ODLanguage|null {
return super.remove(id)
}
exists(id:keyof ODLanguageManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getTranslation(id:ODLanguageManagerTranslations_Default): string
getTranslation(id:string): string|null
getTranslation(id:string): string|null {
return super.getTranslation(id)
}
setCurrentLanguage(id:keyof ODLanguageManagerIds_Default): void
setCurrentLanguage(id:api.ODValidId): void
setCurrentLanguage(id:api.ODValidId): void {
return super.setCurrentLanguage(id)
}
setBackupLanguage(id:keyof ODLanguageManagerIds_Default): void
setBackupLanguage(id:api.ODValidId): void
setBackupLanguage(id:api.ODValidId): void {
return super.setBackupLanguage(id)
}
getTranslationWithParams(id:ODLanguageManagerTranslations_Default, params:string[]): string
getTranslationWithParams(id:string, params:string[]): string|null
getTranslationWithParams(id:string, params:string[]): string|null {
return super.getTranslationWithParams(id,params)
}
}
-30
View File
@@ -1,30 +0,0 @@
///////////////////////////////////////
//DEFAULT PERMISSION MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODClientManager_Default } from "./client"
/**## ODPermissionManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODPermissionManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.permissions`!
*/
export class ODPermissionManager_Default extends api.ODPermissionManager {
constructor(debug:api.ODDebugger,client:ODClientManager_Default){
super(debug,client,true)
}
}
/**## ODPermissionEmbedType `type`
* This type contains all types available in the `opendiscord:no-permissions` embed.
*/
export type ODPermissionEmbedType = (
"developer"|
"owner"|
"admin"|
"moderator"|
"support"|
"member"|
"discord-administrator"
)
-76
View File
@@ -1,76 +0,0 @@
///////////////////////////////////////
//DEFAULT POST MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODPluginManagerIds_Default `interface`
* This interface is a list of ids available in the `ODPluginManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODPluginManagerIds_Default {}
/**## ODPluginManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODPluginManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.plugins`!
*/
export class ODPluginManager_Default extends api.ODPluginManager {
declare classes: ODPluginClassManager_Default
get<PluginId extends keyof ODPluginManagerIds_Default>(id:PluginId): ODPluginManagerIds_Default[PluginId]
get(id:api.ODValidId): api.ODPlugin|null
get(id:api.ODValidId): api.ODPlugin|null {
return super.get(id)
}
remove<PluginId extends keyof ODPluginManagerIds_Default>(id:PluginId): ODPluginManagerIds_Default[PluginId]
remove(id:api.ODValidId): api.ODPlugin|null
remove(id:api.ODValidId): api.ODPlugin|null {
return super.remove(id)
}
exists(id:keyof ODPluginManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODPluginClassManagerIds_Default `interface`
* This interface is a list of ids available in the `ODPluginClassManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODPluginClassManagerIds_Default {}
/**## ODPluginClassManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODPluginClassManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.plugins.classes`!
*/
export class ODPluginClassManager_Default extends api.ODPluginClassManager {
get<PluginClassId extends keyof ODPluginClassManagerIds_Default>(id:PluginClassId): ODPluginClassManagerIds_Default[PluginClassId]
get(id:api.ODValidId): api.ODManagerData|null
get(id:api.ODValidId): api.ODManagerData|null {
return super.get(id)
}
remove<PluginClassId extends keyof ODPluginClassManagerIds_Default>(id:PluginClassId): ODPluginClassManagerIds_Default[PluginClassId]
remove(id:api.ODValidId): api.ODManagerData|null
remove(id:api.ODValidId): api.ODManagerData|null {
return super.remove(id)
}
exists(id:keyof ODPluginClassManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-43
View File
@@ -1,43 +0,0 @@
///////////////////////////////////////
//DEFAULT POST MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import * as discord from "discord.js"
/**## ODPostManagerIds_Default `interface`
* This interface is a list of ids available in the `ODPostManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODPostManagerIds_Default {
"opendiscord:logs":api.ODPost<discord.GuildTextBasedChannel>|null,
"opendiscord:transcripts":api.ODPost<discord.GuildTextBasedChannel>|null
}
/**## ODPostManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODPostManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.code`!
*/
export class ODPostManager_Default extends api.ODPostManager {
get<PostId extends keyof ODPostManagerIds_Default>(id:PostId): ODPostManagerIds_Default[PostId]
get(id:api.ODValidId): api.ODPost<discord.GuildBasedChannel>|null
get(id:api.ODValidId): api.ODPost<discord.GuildBasedChannel>|null {
return super.get(id)
}
remove<PostId extends keyof ODPostManagerIds_Default>(id:PostId): ODPostManagerIds_Default[PostId]
remove(id:api.ODValidId): api.ODPost<discord.GuildBasedChannel>|null
remove(id:api.ODValidId): api.ODPost<discord.GuildBasedChannel>|null {
return super.remove(id)
}
exists(id:keyof ODPostManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-169
View File
@@ -1,169 +0,0 @@
///////////////////////////////////////
//DEFAULT PROGRESS BAR MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import ansis from "ansis"
/**## ODProgressBarRenderer_DefaultSettingsLabel `type`
* All available label types for the default progress bar renderer
*/
export type ODProgressBarRenderer_DefaultSettingsLabel = "value"|"percentage"|"fraction"|"time-ms"|"time-sec"|"time-min"
/**## ODProgressBarRenderer_DefaultSettings `interface`
* This interface contains the settings for the default progress bar renderer.
*/
export interface ODProgressBarRenderer_DefaultSettings {
/**The color of the progress bar border. */
borderColor:api.ODValidConsoleColor|"openticket",
/**The color of the progress bar (filled side). */
filledBarColor:api.ODValidConsoleColor|"openticket",
/**The color of the progress bar (empty side). */
emptyBarColor:api.ODValidConsoleColor|"openticket",
/**The color of the text before the progress bar. */
prefixColor:api.ODValidConsoleColor|"openticket",
/**The color of the text after the progress bar. */
suffixColor:api.ODValidConsoleColor|"openticket",
/**The color of the progress bar label. */
labelColor:api.ODValidConsoleColor|"openticket",
/**The character used in the left border. */
leftBorderChar:string,
/**The character used in the right border. */
rightBorderChar:string,
/**The character used in the filled side of the progress bar. */
filledBarChar:string,
/**The character used in the empty side of the progress bar. */
emptyBarChar:string,
/**The label type. (will show a number related to the progress) */
labelType:ODProgressBarRenderer_DefaultSettingsLabel,
/**The position of the label. */
labelPosition:"start"|"end",
/**The width of the bar. (50 characters by default) */
barWidth:number,
/**Show the bar. */
showBar:boolean,
/**Show the label. */
showLabel:boolean,
/**Show the border. */
showBorder:boolean,
}
export class ODProgressBarRenderer_Default extends api.ODProgressBarRenderer<ODProgressBarRenderer_DefaultSettings> {
constructor(id:api.ODValidId,settings:ODProgressBarRenderer_DefaultSettings){
super(id,(settings,min,max,value,rawPrefix,rawSuffix) => {
const percentage = (value-min)/(max-min)
const barLevel = Math.round(percentage*settings.barWidth)
const borderAnsis = (settings.borderColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.borderColor]
const filledBarAnsis = (settings.filledBarColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.filledBarColor]
const emptyBarAnsis = (settings.emptyBarColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.emptyBarColor]
const labelAnsis = (settings.labelColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.labelColor]
const prefixAnsis = (settings.prefixColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.prefixColor]
const suffixAnsis = (settings.suffixColor == "openticket") ? ansis.hex("#f8ba00") : ansis[settings.suffixColor]
const leftBorder = (settings.showBorder) ? borderAnsis(settings.leftBorderChar) : ""
const rightBorder = (settings.showBorder) ? borderAnsis(settings.rightBorderChar) : ""
const bar = (settings.showBar) ? filledBarAnsis(settings.filledBarChar.repeat(barLevel))+emptyBarAnsis(settings.emptyBarChar.repeat(settings.barWidth-barLevel)) : ""
const prefix = (rawPrefix) ? prefixAnsis(rawPrefix)+" " : ""
const suffix = (rawSuffix) ? " "+suffixAnsis(rawSuffix) : ""
let label: string
if (!settings.showLabel) label = ""
if (settings.labelType == "fraction") label = labelAnsis(value+"/"+max)
else if (settings.labelType == "percentage") label = labelAnsis(Math.round(percentage*100)+"%")
else if (settings.labelType == "time-ms") label = labelAnsis(value+"ms")
else if (settings.labelType == "time-sec") label = labelAnsis(Math.round(value*10)/10+"sec")
else if (settings.labelType == "time-min") label = labelAnsis(Math.round(value*10)/10+"min")
else label = labelAnsis(value.toString())
const labelWithPrefixAndSuffix = prefix+label+suffix
return (settings.labelPosition == "start") ? labelWithPrefixAndSuffix+" "+leftBorder+bar+rightBorder : leftBorder+bar+rightBorder+" "+labelWithPrefixAndSuffix
},settings)
}
}
/**## ODProgressBarRendererManagerIds_Default `interface`
* This interface is a list of ids available in the `ODProgressBarRendererManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODProgressBarRendererManagerIds_Default {
"opendiscord:value-renderer":ODProgressBarRenderer_Default,
"opendiscord:fraction-renderer":ODProgressBarRenderer_Default,
"opendiscord:percentage-renderer":ODProgressBarRenderer_Default,
"opendiscord:time-ms-renderer":ODProgressBarRenderer_Default,
"opendiscord:time-sec-renderer":ODProgressBarRenderer_Default,
"opendiscord:time-min-renderer":ODProgressBarRenderer_Default,
}
/**## ODProgressBarRendererManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODProgressBarRendererManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.progressbars.renderers`!
*/
export class ODProgressBarRendererManager_Default extends api.ODProgressBarRendererManager {
get<ProgressBarId extends keyof ODProgressBarRendererManagerIds_Default>(id:ProgressBarId): ODProgressBarRendererManagerIds_Default[ProgressBarId]
get(id:api.ODValidId): api.ODProgressBarRenderer<{}>|null
get(id:api.ODValidId): api.ODProgressBarRenderer<{}>|null {
return super.get(id)
}
remove<ProgressBarId extends keyof ODProgressBarRendererManagerIds_Default>(id:ProgressBarId): ODProgressBarRendererManagerIds_Default[ProgressBarId]
remove(id:api.ODValidId): api.ODProgressBarRenderer<{}>|null
remove(id:api.ODValidId): api.ODProgressBarRenderer<{}>|null {
return super.remove(id)
}
exists(id:keyof ODProgressBarRendererManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODProgressBarManagerIds_Default `interface`
* This interface is a list of ids available in the `ODProgressBarManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODProgressBarManagerIds_Default {
"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,
}
/**## ODProgressBarManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODProgressBarManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.progressbars`!
*/
export class ODProgressBarManager_Default extends api.ODProgressBarManager {
declare renderers: ODProgressBarRendererManager_Default
get<ProgressBarId extends keyof ODProgressBarManagerIds_Default>(id:ProgressBarId): ODProgressBarManagerIds_Default[ProgressBarId]
get(id:api.ODValidId): api.ODProgressBar|null
get(id:api.ODValidId): api.ODProgressBar|null {
return super.get(id)
}
remove<ProgressBarId extends keyof ODProgressBarManagerIds_Default>(id:ProgressBarId): ODProgressBarManagerIds_Default[ProgressBarId]
remove(id:api.ODValidId): api.ODProgressBar|null
remove(id:api.ODValidId): api.ODProgressBar|null {
return super.remove(id)
}
exists(id:keyof ODProgressBarManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-354
View File
@@ -1,354 +0,0 @@
///////////////////////////////////////
//DEFAULT RESPONDER MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODWorkerManager_Default } from "./worker"
/**## ODResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders`!
*/
export class ODResponderManager_Default extends api.ODResponderManager {
declare commands: ODCommandResponderManager_Default
declare buttons: ODButtonResponderManager_Default
declare dropdowns: ODDropdownResponderManager_Default
declare modals: ODModalResponderManager_Default
declare contextMenus: ODContextMenuResponderManager_Default
declare autocomplete: ODAutocompleteResponderManager_Default
}
/**## ODCommandResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODCommandResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODCommandResponderManagerIds_Default {
"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"},
}
/**## ODCommandResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCommandResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.commands`!
*/
export class ODCommandResponderManager_Default extends api.ODCommandResponderManager {
get<CommandResponderId extends keyof ODCommandResponderManagerIds_Default>(id:CommandResponderId): ODCommandResponder_Default<ODCommandResponderManagerIds_Default[CommandResponderId]["source"],ODCommandResponderManagerIds_Default[CommandResponderId]["params"],ODCommandResponderManagerIds_Default[CommandResponderId]["workers"]>
get(id:api.ODValidId): api.ODCommandResponder<"slash"|"text",any>|null
get(id:api.ODValidId): api.ODCommandResponder<"slash"|"text",any>|null {
return super.get(id)
}
remove<CommandResponderId extends keyof ODCommandResponderManagerIds_Default>(id:CommandResponderId): ODCommandResponder_Default<ODCommandResponderManagerIds_Default[CommandResponderId]["source"],ODCommandResponderManagerIds_Default[CommandResponderId]["params"],ODCommandResponderManagerIds_Default[CommandResponderId]["workers"]>
remove(id:api.ODValidId): api.ODCommandResponder<"slash"|"text",any>|null
remove(id:api.ODValidId): api.ODCommandResponder<"slash"|"text",any>|null {
return super.remove(id)
}
exists(id:keyof ODCommandResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODCommandResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODCommandResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODCommandResponder`'s!
*/
export class ODCommandResponder_Default<Source extends "slash"|"text", Params, WorkerIds extends string> extends api.ODCommandResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODCommandResponderInstance,Source,Params,WorkerIds>
}
/**## ODButtonResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODButtonResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODButtonResponderManagerIds_Default {
"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"},
}
/**## ODButtonResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODButtonResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.buttons`!
*/
export class ODButtonResponderManager_Default extends api.ODButtonResponderManager {
get<ButtonResponderId extends keyof ODButtonResponderManagerIds_Default>(id:ButtonResponderId): ODButtonResponder_Default<ODButtonResponderManagerIds_Default[ButtonResponderId]["source"],ODButtonResponderManagerIds_Default[ButtonResponderId]["params"],ODButtonResponderManagerIds_Default[ButtonResponderId]["workers"]>
get(id:api.ODValidId): api.ODButtonResponder<"button",any>|null
get(id:api.ODValidId): api.ODButtonResponder<"button",any>|null {
return super.get(id)
}
remove<ButtonResponderId extends keyof ODButtonResponderManagerIds_Default>(id:ButtonResponderId): ODButtonResponder_Default<ODButtonResponderManagerIds_Default[ButtonResponderId]["source"],ODButtonResponderManagerIds_Default[ButtonResponderId]["params"],ODButtonResponderManagerIds_Default[ButtonResponderId]["workers"]>
remove(id:api.ODValidId): api.ODButtonResponder<"button",any>|null
remove(id:api.ODValidId): api.ODButtonResponder<"button",any>|null {
return super.remove(id)
}
exists(id:keyof ODButtonResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODButtonResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODButtonResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODButtonResponder`'s!
*/
export class ODButtonResponder_Default<Source extends string, Params, WorkerIds extends string> extends api.ODButtonResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODButtonResponderInstance,Source,Params,WorkerIds>
}
/**## ODDropdownResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODDropdownResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODDropdownResponderManagerIds_Default {
"opendiscord:panel-dropdown-tickets":{source:"dropdown",params:{},workers:"opendiscord:panel-dropdown-tickets"},
}
/**## ODDropdownResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODDropdownResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.dropdowns`!
*/
export class ODDropdownResponderManager_Default extends api.ODDropdownResponderManager {
get<DropdownResponderId extends keyof ODDropdownResponderManagerIds_Default>(id:DropdownResponderId): ODDropdownResponder_Default<ODDropdownResponderManagerIds_Default[DropdownResponderId]["source"],ODDropdownResponderManagerIds_Default[DropdownResponderId]["params"],ODDropdownResponderManagerIds_Default[DropdownResponderId]["workers"]>
get(id:api.ODValidId): api.ODDropdownResponder<"dropdown",any>|null
get(id:api.ODValidId): api.ODDropdownResponder<"dropdown",any>|null {
return super.get(id)
}
remove<DropdownResponderId extends keyof ODDropdownResponderManagerIds_Default>(id:DropdownResponderId): ODDropdownResponder_Default<ODDropdownResponderManagerIds_Default[DropdownResponderId]["source"],ODDropdownResponderManagerIds_Default[DropdownResponderId]["params"],ODDropdownResponderManagerIds_Default[DropdownResponderId]["workers"]>
remove(id:api.ODValidId): api.ODDropdownResponder<"dropdown",any>|null
remove(id:api.ODValidId): api.ODDropdownResponder<"dropdown",any>|null {
return super.remove(id)
}
exists(id:keyof ODDropdownResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODDropdownResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODDropdownResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODDropdownResponder`'s!
*/
export class ODDropdownResponder_Default<Source extends string, Params, WorkerIds extends string> extends api.ODDropdownResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODDropdownResponderInstance,Source,Params,WorkerIds>
}
/**## ODModalResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODModalResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODModalResponderManagerIds_Default {
"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"},
}
/**## ODModalResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODModalResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.dropdowns`!
*/
export class ODModalResponderManager_Default extends api.ODModalResponderManager {
get<ModalResponderId extends keyof ODModalResponderManagerIds_Default>(id:ModalResponderId): ODModalResponder_Default<ODModalResponderManagerIds_Default[ModalResponderId]["source"],ODModalResponderManagerIds_Default[ModalResponderId]["params"],ODModalResponderManagerIds_Default[ModalResponderId]["workers"]>
get(id:api.ODValidId): api.ODModalResponder<"modal",any>|null
get(id:api.ODValidId): api.ODModalResponder<"modal",any>|null {
return super.get(id)
}
remove<ModalResponderId extends keyof ODModalResponderManagerIds_Default>(id:ModalResponderId): ODModalResponder_Default<ODModalResponderManagerIds_Default[ModalResponderId]["source"],ODModalResponderManagerIds_Default[ModalResponderId]["params"],ODModalResponderManagerIds_Default[ModalResponderId]["workers"]>
remove(id:api.ODValidId): api.ODModalResponder<"modal",any>|null
remove(id:api.ODValidId): api.ODModalResponder<"modal",any>|null {
return super.remove(id)
}
exists(id:keyof ODModalResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODModalResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODModalResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODModalResponder`'s!
*/
export class ODModalResponder_Default<Source extends string, Params, WorkerIds extends string> extends api.ODModalResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODModalResponderInstance,Source,Params,WorkerIds>
}
/**## ODContextMenuResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODContextMenuResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODContextMenuResponderManagerIds_Default {
//"opendiscord:example":{source:"context-menu",params:{},workers:"opendiscord:example"},
}
/**## ODContextMenuResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODContextMenuResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.contextMenus`!
*/
export class ODContextMenuResponderManager_Default extends api.ODContextMenuResponderManager {
get<ModalResponderId extends keyof ODContextMenuResponderManagerIds_Default>(id:ModalResponderId): ODContextMenuResponder_Default<ODContextMenuResponderManagerIds_Default[ModalResponderId]["source"],ODContextMenuResponderManagerIds_Default[ModalResponderId]["params"],ODContextMenuResponderManagerIds_Default[ModalResponderId]["workers"]>
get(id:api.ODValidId): api.ODContextMenuResponder<"context-menu",any>|null
get(id:api.ODValidId): api.ODContextMenuResponder<"context-menu",any>|null {
return super.get(id)
}
remove<ModalResponderId extends keyof ODContextMenuResponderManagerIds_Default>(id:ModalResponderId): ODContextMenuResponder_Default<ODContextMenuResponderManagerIds_Default[ModalResponderId]["source"],ODContextMenuResponderManagerIds_Default[ModalResponderId]["params"],ODContextMenuResponderManagerIds_Default[ModalResponderId]["workers"]>
remove(id:api.ODValidId): api.ODContextMenuResponder<"context-menu",any>|null
remove(id:api.ODValidId): api.ODContextMenuResponder<"context-menu",any>|null {
return super.remove(id)
}
exists(id:keyof ODContextMenuResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODContextMenuResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODContextMenuResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODContextMenuResponder`'s!
*/
export class ODContextMenuResponder_Default<Source extends string, Params, WorkerIds extends string> extends api.ODContextMenuResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODContextMenuResponderInstance,Source,Params,WorkerIds>
}
/**## ODAutocompleteResponderManagerIds_Default `interface`
* This interface is a list of ids available in the `ODAutocompleteResponderManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODAutocompleteResponderManagerIds_Default {
"opendiscord:panel-id":{source:"autocomplete",params:{},workers:"opendiscord:panel-id"},
"opendiscord:option-id":{source:"autocomplete",params:{},workers:"opendiscord:option-id"}
}
/**## ODAutocompleteResponderManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODAutocompleteResponderManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.responders.autocomplete`!
*/
export class ODAutocompleteResponderManager_Default extends api.ODAutocompleteResponderManager {
get<ModalResponderId extends keyof ODAutocompleteResponderManagerIds_Default>(id:ModalResponderId): ODAutocompleteResponder_Default<ODAutocompleteResponderManagerIds_Default[ModalResponderId]["source"],ODAutocompleteResponderManagerIds_Default[ModalResponderId]["params"],ODAutocompleteResponderManagerIds_Default[ModalResponderId]["workers"]>
get(id:api.ODValidId): api.ODAutocompleteResponder<"autocomplete",any>|null
get(id:api.ODValidId): api.ODAutocompleteResponder<"autocomplete",any>|null {
return super.get(id)
}
remove<ModalResponderId extends keyof ODAutocompleteResponderManagerIds_Default>(id:ModalResponderId): ODAutocompleteResponder_Default<ODAutocompleteResponderManagerIds_Default[ModalResponderId]["source"],ODAutocompleteResponderManagerIds_Default[ModalResponderId]["params"],ODAutocompleteResponderManagerIds_Default[ModalResponderId]["workers"]>
remove(id:api.ODValidId): api.ODAutocompleteResponder<"autocomplete",any>|null
remove(id:api.ODValidId): api.ODAutocompleteResponder<"autocomplete",any>|null {
return super.remove(id)
}
exists(id:keyof ODAutocompleteResponderManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODAutocompleteResponder_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODAutocompleteResponder class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODAutocompleteResponder`'s!
*/
export class ODAutocompleteResponder_Default<Source extends string, Params, WorkerIds extends string> extends api.ODAutocompleteResponder<Source,Params> {
declare workers: ODWorkerManager_Default<api.ODAutocompleteResponderInstance,Source,Params,WorkerIds>
}
-41
View File
@@ -1,41 +0,0 @@
///////////////////////////////////////
//DEFAULT SESSION MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODSessionManagerIds_Default `interface`
* This interface is a list of ids available in the `ODSessionManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODSessionManagerIds_Default {
//"test-session":ODSession
}
/**## ODSessionManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODSessionManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.sessions`!
*/
export class ODSessionManager_Default extends api.ODSessionManager {
get<SessionId extends keyof ODSessionManagerIds_Default>(id:SessionId): ODSessionManagerIds_Default[SessionId]
get(id:api.ODValidId): api.ODSession|null
get(id:api.ODValidId): api.ODSession|null {
return super.get(id)
}
remove<SessionId extends keyof ODSessionManagerIds_Default>(id:SessionId): ODSessionManagerIds_Default[SessionId]
remove(id:api.ODValidId): api.ODSession|null
remove(id:api.ODValidId): api.ODSession|null {
return super.remove(id)
}
exists(id:keyof ODSessionManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-47
View File
@@ -1,47 +0,0 @@
///////////////////////////////////////
//DEFAULT STARTSCREEN MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODStartScreenManagerIds_Default `interface`
* This interface is a list of ids available in the `ODStartScreenManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStartScreenManagerIds_Default {
"opendiscord:logo":api.ODStartScreenLogoComponent,
"opendiscord:header":api.ODStartScreenHeaderComponent,
"opendiscord:flags":api.ODStartScreenFlagsCategoryComponent,
"opendiscord:plugins":api.ODStartScreenPluginsCategoryComponent,
"opendiscord:stats":api.ODStartScreenPropertiesCategoryComponent,
"opendiscord:livestatus":api.ODStartScreenLiveStatusCategoryComponent,
"opendiscord:logs":api.ODStartScreenCategoryComponent
}
/**## ODStartScreenManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODStartScreenManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.startscreen`!
*/
export class ODStartScreenManager_Default extends api.ODStartScreenManager {
get<StartScreenId extends keyof ODStartScreenManagerIds_Default>(id:StartScreenId): ODStartScreenManagerIds_Default[StartScreenId]
get(id:api.ODValidId): api.ODStartScreenComponent|null
get(id:api.ODValidId): api.ODStartScreenComponent|null {
return super.get(id)
}
remove<StartScreenId extends keyof ODStartScreenManagerIds_Default>(id:StartScreenId): ODStartScreenManagerIds_Default[StartScreenId]
remove(id:api.ODValidId): api.ODStartScreenComponent|null
remove(id:api.ODValidId): api.ODStartScreenComponent|null {
return super.remove(id)
}
exists(id:keyof ODStartScreenManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-471
View File
@@ -1,471 +0,0 @@
///////////////////////////////////////
//DEFAULT SESSION MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODStatsManagerIds_Default `interface`
* This interface is a list of ids available in the `ODStatsManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatsManagerIds_Default {
"opendiscord:global":ODStatGlobalScope_DefaultGlobal,
"opendiscord:system":ODStatGlobalScope_DefaultSystem,
"opendiscord:user":ODStatScope_DefaultUser,
"opendiscord:ticket":ODStatScope_DefaultTicket,
"opendiscord:participants":ODStatScope_DefaultParticipants,
"opendiscord:messages":ODStatScope_DefaultMessages,
}
/**## ODStatsManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.stats`!
*/
export class ODStatsManager_Default extends api.ODStatsManager {
get<StatsId extends keyof ODStatsManagerIds_Default>(id:StatsId): ODStatsManagerIds_Default[StatsId]
get(id:api.ODValidId): api.ODStatScope|null
get(id:api.ODValidId): api.ODStatScope|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatsManagerIds_Default>(id:StatsId): ODStatsManagerIds_Default[StatsId]
remove(id:api.ODValidId): api.ODStatScope|null
remove(id:api.ODValidId): api.ODStatScope|null {
return super.remove(id)
}
exists(id:keyof ODStatsManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODStatGlobalScopeIds_DefaultGlobal `type`
* This interface is a list of ids available in the `ODStatGlobalScope_DefaultGlobal` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatGlobalScopeIds_DefaultGlobal {
"opendiscord:tickets-created":api.ODBasicStat,
"opendiscord:tickets-closed":api.ODBasicStat,
"opendiscord:tickets-deleted":api.ODBasicStat,
"opendiscord:tickets-reopened":api.ODBasicStat,
"opendiscord:tickets-autoclosed":api.ODBasicStat,
"opendiscord:tickets-autodeleted":api.ODBasicStat,
"opendiscord:tickets-claimed":api.ODBasicStat,
"opendiscord:tickets-pinned":api.ODBasicStat,
"opendiscord:tickets-moved":api.ODBasicStat,
"opendiscord:tickets-transferred":api.ODBasicStat,
"opendiscord:users-blacklisted":api.ODBasicStat,
"opendiscord:transcripts-created":api.ODBasicStat,
"opendiscord:ticket-volume":api.ODDynamicStat,
"opendiscord:average-tickets":api.ODDynamicStat,
}
/**## ODStatGlobalScope_DefaultGlobal `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:global` category in `opendiscord.stats`!
*/
export class ODStatGlobalScope_DefaultGlobal extends api.ODStatGlobalScope {
get<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:StatsId): ODStatGlobalScopeIds_DefaultGlobal[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:StatsId): ODStatGlobalScopeIds_DefaultGlobal[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatGlobalScopeIds_DefaultGlobal): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:StatsId): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId): Promise<api.ODValidStatValue|null> {
return super.getStat(id)
}
getAllStats<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:StatsId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,value,mode)
}
resetStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultGlobal>(id:api.ODValidId): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId): Promise<api.ODValidStatValue|null> {
return super.resetStat(id)
}
}
/**## ODStatGlobalScopeIds_DefaultSystem `type`
* This interface is a list of ids available in the `ODStatScope_DefaultSystem` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatGlobalScopeIds_DefaultSystem {
"opendiscord:startup-date":api.ODDynamicStat,
"opendiscord:system-uptime":api.ODDynamicStat,
"opendiscord:version":api.ODDynamicStat
}
/**## ODStatGlobalScope_DefaultSystem `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:system` category in `opendiscord.stats`!
*/
export class ODStatGlobalScope_DefaultSystem extends api.ODStatGlobalScope {
get<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:StatsId): ODStatGlobalScopeIds_DefaultSystem[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:StatsId): ODStatGlobalScopeIds_DefaultSystem[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatGlobalScopeIds_DefaultSystem): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:StatsId): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId): Promise<api.ODValidStatValue|null> {
return super.getStat(id)
}
getAllStats<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:StatsId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,value,mode)
}
resetStat<StatsId extends keyof ODStatGlobalScopeIds_DefaultSystem>(id:api.ODValidId): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId): Promise<api.ODValidStatValue|null> {
return super.resetStat(id)
}
}
/**## ODStatScopeIds_DefaultUser `type`
* This interface is a list of ids available in the `ODStatScope_DefaultUser` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatScopeIds_DefaultUser {
"opendiscord:name":api.ODDynamicStat,
"opendiscord:role":api.ODDynamicStat,
"opendiscord:tickets-created":api.ODBasicStat,
"opendiscord:tickets-closed":api.ODBasicStat,
"opendiscord:tickets-deleted":api.ODBasicStat,
"opendiscord:tickets-reopened":api.ODBasicStat,
"opendiscord:tickets-claimed":api.ODBasicStat,
"opendiscord:tickets-pinned":api.ODBasicStat,
"opendiscord:tickets-moved":api.ODBasicStat,
"opendiscord:tickets-transferred":api.ODBasicStat,
"opendiscord:users-blacklisted":api.ODBasicStat,
"opendiscord:transcripts-created":api.ODBasicStat,
"opendiscord:current-tickets":api.ODDynamicStat,
}
/**## ODStatScope_DefaultUser `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:user` category in `opendiscord.stats`!
*/
export class ODStatScope_DefaultUser extends api.ODStatScope {
get<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:StatsId): ODStatScopeIds_DefaultUser[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:StatsId): ODStatScopeIds_DefaultUser[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatScopeIds_DefaultUser): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:StatsId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.getStat(id,scopeId)
}
getAllStats<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:StatsId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,scopeId,value,mode)
}
resetStat<StatsId extends keyof ODStatScopeIds_DefaultUser>(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.resetStat(id,scopeId)
}
}
/**## ODStatScopeIds_DefaultTicket `type`
* This interface is a list of ids available in the `ODStatScope_DefaultTicket` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatScopeIds_DefaultTicket {
"opendiscord:name":api.ODDynamicStat,
"opendiscord:status":api.ODDynamicStat,
"opendiscord:claimed":api.ODDynamicStat,
"opendiscord:pinned":api.ODDynamicStat,
"opendiscord:creation-date":api.ODDynamicStat,
"opendiscord:creator":api.ODDynamicStat,
"opendiscord:ticket-age":api.ODDynamicStat,
"opendiscord:response-time":api.ODDynamicStat,
"opendiscord:resolution-time":api.ODDynamicStat,
}
/**## ODStatScope_DefaultTicket `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:ticket` category in `opendiscord.stats`!
*/
export class ODStatScope_DefaultTicket extends api.ODStatScope {
get<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:StatsId): ODStatScopeIds_DefaultTicket[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:StatsId): ODStatScopeIds_DefaultTicket[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatScopeIds_DefaultTicket): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:StatsId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.getStat(id,scopeId)
}
getAllStats<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:StatsId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,scopeId,value,mode)
}
resetStat<StatsId extends keyof ODStatScopeIds_DefaultTicket>(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.resetStat(id,scopeId)
}
}
/**## ODStatScopeIds_DefaultParticipants `type`
* This interface is a list of ids available in the `ODStatScope_DefaultParticipants` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatScopeIds_DefaultParticipants {
"opendiscord:participants":api.ODDynamicStat
}
/**## ODStatScope_DefaultParticipants `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:participants` category in `opendiscord.stats`!
*/
export class ODStatScope_DefaultParticipants extends api.ODStatScope {
get<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:StatsId): ODStatScopeIds_DefaultParticipants[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:StatsId): ODStatScopeIds_DefaultParticipants[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatScopeIds_DefaultParticipants): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:StatsId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.getStat(id,scopeId)
}
getAllStats<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:StatsId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,scopeId,value,mode)
}
resetStat<StatsId extends keyof ODStatScopeIds_DefaultParticipants>(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.resetStat(id,scopeId)
}
}
/**## ODStatScopeIds_DefaultMessages `type`
* This interface is a list of ids available in the `ODStatScope_DefaultMessages` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODStatScopeIds_DefaultMessages {
"opendiscord:count":api.ODDynamicStat
}
/**## ODStatScope_DefaultMessages `default_class`
* This is a special class that adds type definitions & typescript to the ODStatsManager class.
* It doesn't add any extra features!
*
* This default class is made for the `opendiscord:participants` category in `opendiscord.stats`!
*/
export class ODStatScope_DefaultMessages extends api.ODStatScope {
get<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:StatsId): ODStatScopeIds_DefaultMessages[StatsId]
get(id:api.ODValidId): api.ODStat|null
get(id:api.ODValidId): api.ODStat|null {
return super.get(id)
}
remove<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:StatsId): ODStatScopeIds_DefaultMessages[StatsId]
remove(id:api.ODValidId): api.ODStat|null
remove(id:api.ODValidId): api.ODStat|null {
return super.remove(id)
}
exists(id:keyof ODStatScopeIds_DefaultMessages): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
getStat<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:StatsId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
getStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.getStat(id,scopeId)
}
getAllStats<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:StatsId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]>
getAllStats(id:api.ODValidId): Promise<{id:string,value:api.ODValidStatValue}[]> {
return super.getAllStats(id)
}
setStat<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:StatsId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean>
setStat(id:api.ODValidId, scopeId:string, value:api.ODValidStatValue, mode:api.ODStatScopeSetMode): Promise<boolean> {
return super.setStat(id,scopeId,value,mode)
}
resetStat<StatsId extends keyof ODStatScopeIds_DefaultMessages>(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null>
resetStat(id:api.ODValidId, scopeId:string): Promise<api.ODValidStatValue|null> {
return super.resetStat(id,scopeId)
}
}
-70
View File
@@ -1,70 +0,0 @@
///////////////////////////////////////
//DEFAULT VERIFYBAR MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODWorkerManager_Default } from "../defaults/worker"
import * as discord from "discord.js"
/**## ODVerifyBarManagerIds_Default `interface`
* This interface is a list of ids available in the `ODVerifyBarManager_Default` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODVerifyBarManagerIds_Default {
"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"}
}
/**## ODVerifyBarManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODVerifyBarManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.verifybars`!
*/
export class ODVerifyBarManager_Default extends api.ODVerifyBarManager {
get<VerifyBarId extends keyof ODVerifyBarManagerIds_Default>(id:VerifyBarId): ODVerifyBar_Default<ODVerifyBarManagerIds_Default[VerifyBarId]["successWorkerIds"],ODVerifyBarManagerIds_Default[VerifyBarId]["failureWorkerIds"]>
get(id:api.ODValidId): api.ODVerifyBar|null
get(id:api.ODValidId): api.ODVerifyBar|null {
return super.get(id)
}
remove<VerifyBarId extends keyof ODVerifyBarManagerIds_Default>(id:VerifyBarId): ODVerifyBar_Default<ODVerifyBarManagerIds_Default[VerifyBarId]["successWorkerIds"],ODVerifyBarManagerIds_Default[VerifyBarId]["failureWorkerIds"]>
remove(id:api.ODValidId): api.ODVerifyBar|null
remove(id:api.ODValidId): api.ODVerifyBar|null {
return super.remove(id)
}
exists(id:keyof ODVerifyBarManagerIds_Default): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODVerifyBar_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODVerifyBar class.
* It doesn't add any extra features!
*
* This default class is made for the default `ODVerifyBar`'s!
*/
export class ODVerifyBar_Default<SuccessWorkerIds extends string,FailureWorkerIds extends string> extends api.ODVerifyBar {
declare success: ODWorkerManager_Default<api.ODButtonResponderInstance,"verifybar",{data:string|null,verifybarMessage:discord.Message<boolean>|null},SuccessWorkerIds>
declare failure: ODWorkerManager_Default<api.ODButtonResponderInstance,"verifybar",{data:string|null,verifybarMessage:discord.Message<boolean>|null},FailureWorkerIds>
}
-33
View File
@@ -1,33 +0,0 @@
///////////////////////////////////////
//DEFAULT WORKER MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
/**## ODWorkerManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODWorkerManager class.
* It doesn't add any extra features!
*
* This default class is made for the worker manager in actions, builders & responders!
*/
export class ODWorkerManager_Default<Instance, Source extends string, Params, WorkerIds extends string> extends api.ODWorkerManager<Instance,Source,Params> {
get(id:WorkerIds): api.ODWorker<Instance,Source,Params>
get(id:api.ODValidId): api.ODWorker<Instance,Source,Params>|null
get(id:api.ODValidId): api.ODWorker<Instance,Source,Params>|null {
return super.get(id)
}
remove(id:WorkerIds): api.ODWorker<Instance,Source,Params>
remove(id:api.ODValidId): api.ODWorker<Instance,Source,Params>|null
remove(id:api.ODValidId): api.ODWorker<Instance,Source,Params>|null {
return super.remove(id)
}
exists(id:WorkerIds): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
-127
View File
@@ -1,127 +0,0 @@
///////////////////////////////////////
//OPEN TICKET MAIN MODULE
///////////////////////////////////////
import * as api from "./api"
import * as utilities from "@open-discord-bots/framework/utilities"
export class ODOpenTicketMain extends api.ODMain {
declare versions: api.ODVersionManager_Default
declare events: api.ODEventManager_Default
declare plugins: api.ODPluginManager_Default
declare flags: api.ODFlagManager_Default
declare progressbars: api.ODProgressBarManager_Default
declare configs: api.ODConfigManager_Default
declare databases: api.ODDatabaseManager_Default
declare sessions: api.ODSessionManager_Default
declare languages: api.ODLanguageManager_Default
declare checkers: api.ODCheckerManager_Default
declare builders: api.ODBuilderManager_Default
declare responders: api.ODResponderManager_Default
declare actions: api.ODActionManager_Default
declare verifybars: api.ODVerifyBarManager_Default
declare permissions: api.ODPermissionManager_Default
declare cooldowns: api.ODCooldownManager_Default
declare helpmenu: api.ODHelpMenuManager_Default
declare stats: api.ODStatsManager_Default
declare code: api.ODCodeManager_Default
declare posts: api.ODPostManager_Default
declare client: api.ODClientManager_Default
declare livestatus: api.ODLiveStatusManager_Default
declare startscreen: api.ODStartScreenManager_Default
/////////////////////
//// OPEN TICKET ////
/////////////////////
/**Open Ticket specific fuses. With these fuses/switches, you can turn off "default behaviours" from the bot. Useful for replacing default behaviour with a custom implementation. */
fuses: api.ODFuseManager<api.ODOpenTicketFuseList>
/**The manager that manages all the data of questions in the bot. (these are used in options & tickets) */
questions: api.ODQuestionManager
/**The manager that manages all the data of options in the bot. (these are used for panels, ticket creation, reaction roles) */
options: api.ODOptionManager
/**The manager that manages all the data of panels in the bot. (panels contain the options) */
panels: api.ODPanelManager
/**The manager that manages all tickets in the bot. (here, you can get & edit a lot of data from tickets) */
tickets: api.ODTicketManager
/**The manager that manages the ticket blacklist. (people who are blacklisted can't create a ticket) */
blacklist: api.ODBlacklistManager
/**The manager that manages the ticket transcripts. (both the history & compilers) */
transcripts: api.ODTranscriptManager_Default
/**The manager that manages all reaction roles in the bot. (here, you can add additional data to roles) */
roles: api.ODRoleManager
/**The manager that manages all priority levels in the bot. (register/edit ticket priority levels) */
priorities: api.ODPriorityManager_Default
constructor(){
const version = api.ODVersion.fromString("opendiscord:version","v4.1.3")
const debugfile = new api.ODDebugFileManager("./","otdebug.txt",5000,version)
const console = new api.ODConsoleManager(100,debugfile)
const debug = new api.ODDebugger(console)
const client = new api.ODClientManager_Default(debug)
const livestatus = new api.ODLiveStatusManager_Default(debug,console)
const permissions = new api.ODPermissionManager_Default(debug,client)
super({
versions:new api.ODVersionManager_Default(),
debugfile,console,debug,
events:new api.ODEventManager_Default(debug),
processStartupDate:new Date(),
readyStartupDate:null,
plugins:new api.ODPluginManager_Default(debug),
flags:new api.ODFlagManager_Default(debug),
progressbars:new api.ODProgressBarManager_Default(debug),
configs:new api.ODConfigManager_Default(debug),
databases:new api.ODDatabaseManager_Default(debug),
sessions:new api.ODSessionManager_Default(debug),
languages:new api.ODLanguageManager_Default(debug,false),
checkers:new api.ODCheckerManager_Default(debug,new api.ODCheckerStorage(),new api.ODCheckerRenderer_Default(),new api.ODCheckerTranslationRegister_Default(),new api.ODCheckerFunctionManager_Default(debug)),
builders:new api.ODBuilderManager_Default(debug),
client,
responders:new api.ODResponderManager_Default(debug,client),
actions:new api.ODActionManager_Default(debug),
verifybars:new api.ODVerifyBarManager_Default(debug),
permissions,
cooldowns:new api.ODCooldownManager_Default(debug),
helpmenu:new api.ODHelpMenuManager_Default(debug),
stats:new api.ODStatsManager_Default(debug),
code:new api.ODCodeManager_Default(debug),
posts:new api.ODPostManager_Default(debug),
sharedFuses:utilities.sharedFuses,
env:new api.ODEnvHelper(),
livestatus,
startscreen:new api.ODStartScreenManager_Default(debug,livestatus),
},"openticket")
this.livestatus.useMain(this)
this.versions.add(api.ODVersion.fromString("opendiscord:version","v4.1.3"))
this.versions.add(api.ODVersion.fromString("opendiscord:transcripts","v2.1.0"))
//OPEN TICKET
this.fuses = new api.ODFuseManager<api.ODOpenTicketFuseList>({
questionLoading:true,
optionLoading:true,
panelLoading:true,
ticketLoading:true,
roleLoading:true,
blacklistLoading:true,
transcriptCompilerLoading:true,
transcriptHistoryLoading:true,
autocloseCheckInterval:300000, //5 minutes
autodeleteCheckInterval:300000 //5 minutes
})
this.questions = new api.ODQuestionManager(debug)
this.options = new api.ODOptionManager(debug)
this.panels = new api.ODPanelManager(debug)
this.tickets = new api.ODTicketManager(debug,client)
this.blacklist = new api.ODBlacklistManager(debug)
this.transcripts = new api.ODTranscriptManager_Default(debug,this.tickets,client,permissions)
this.roles = new api.ODRoleManager(debug)
this.priorities = new api.ODPriorityManager_Default(debug)
}
}
@@ -2,9 +2,9 @@
//OPENTICKET OPTION MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODJsonConfig_DefaultOptionEmbedSettingsType, ODJsonConfig_DefaultOptionPingSettingsType } from "../defaults/config"
import * as discord from "discord.js"
import * as crypto from "crypto"
import { ODOptionsJsonConfig_TicketOptionEmbedSettings, ODOptionsJsonConfig_TicketOptionPingSettings } from "../mappings/config"
import { ODRoleUpdateMode } from "./role"
/**## ODOptionManager `class`
@@ -158,12 +158,12 @@ export interface ODTicketOptionIds {
"opendiscord:dm-message-enabled":ODOptionData<boolean>,
"opendiscord:dm-message-text":ODOptionData<string>,
"opendiscord:dm-message-embed":ODOptionData<ODJsonConfig_DefaultOptionEmbedSettingsType>,
"opendiscord:dm-message-embed":ODOptionData<ODOptionsJsonConfig_TicketOptionEmbedSettings>,
"opendiscord:ticket-message-enabled":ODOptionData<boolean>,
"opendiscord:ticket-message-text":ODOptionData<string>,
"opendiscord:ticket-message-embed":ODOptionData<ODJsonConfig_DefaultOptionEmbedSettingsType>,
"opendiscord:ticket-message-ping":ODOptionData<ODJsonConfig_DefaultOptionPingSettingsType>,
"opendiscord:ticket-message-embed":ODOptionData<ODOptionsJsonConfig_TicketOptionEmbedSettings>,
"opendiscord:ticket-message-ping":ODOptionData<ODOptionsJsonConfig_TicketOptionPingSettings>,
"opendiscord:autoclose-enable-hours":ODOptionData<boolean>,
"opendiscord:autoclose-enable-leave":ODOptionData<boolean>,
@@ -2,7 +2,7 @@
//OPENTICKET PANEL MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODJsonConfig_DefaultPanelEmbedSettingsType } from "../defaults/config"
import { ODPanelsJsonConfig_PanelEmbedSettings } from "../mappings/config"
/**## ODPanelManager `class`
* This is an Open Ticket panel manager.
@@ -58,7 +58,7 @@ export interface ODPanelIds {
"opendiscord:dropdown":ODPanelData<boolean>,
"opendiscord:text":ODPanelData<string>,
"opendiscord:embed":ODPanelData<ODJsonConfig_DefaultPanelEmbedSettingsType>,
"opendiscord:embed":ODPanelData<ODPanelsJsonConfig_PanelEmbedSettings>,
"opendiscord:dropdown-placeholder":ODPanelData<string>,
@@ -2,7 +2,25 @@
//OPENTICKET PRIORITY MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import * as discord from "discord.js"
/**## ODPriorityManagerIdConstraint `type`
* The constraint/layout for id mappings/interfaces of the `ODPriorityManager` class.
*/
export type ODPriorityManagerIdConstraint = Record<string,ODPriorityLevel>
/**## ODPriorityManagerIdMappings `interface`
* A list of all available IDs in the default `ODPriorityManager` class in `opendiscord`.
* It's used to generate typescript declarations for this class.
*/
export interface ODPriorityManagerIdMappings extends ODPriorityManagerIdConstraint {
"opendiscord:urgent":ODPriorityLevel,
"opendiscord:very-high":ODPriorityLevel,
"opendiscord:high":ODPriorityLevel,
"opendiscord:normal":ODPriorityLevel,
"opendiscord:low":ODPriorityLevel,
"opendiscord:very-low":ODPriorityLevel,
"opendiscord:none":ODPriorityLevel,
}
/**## ODPriorityManager `class`
* This is an Open Ticket priority manager.
@@ -11,7 +29,7 @@ import * as discord from "discord.js"
*
* Priorities levels can be changed/updated/translated by plugins to allow for more customisability.
*/
export class ODPriorityManager extends api.ODManager<ODPriorityLevel> {
export class ODPriorityManager<IdList extends ODPriorityManagerIdConstraint = ODPriorityManagerIdConstraint> extends api.ODManager<ODPriorityLevel> {
/**A reference to the Open Ticket debugger. */
#debug: api.ODDebugger
@@ -28,44 +46,22 @@ export class ODPriorityManager extends api.ODManager<ODPriorityLevel> {
listAvailableLevels(){
return this.getAll().map((lvl) => lvl.priority)
}
}
/**## ODPriorityManagerIds `type`
* This interface is a list of ids available in the `ODPriorityManager` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODPriorityManagerIds {
"opendiscord:urgent":ODPriorityLevel,
"opendiscord:very-high":ODPriorityLevel,
"opendiscord:high":ODPriorityLevel,
"opendiscord:normal":ODPriorityLevel,
"opendiscord:low":ODPriorityLevel,
"opendiscord:very-low":ODPriorityLevel,
"opendiscord:none":ODPriorityLevel,
}
/**## ODPriorityManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODPriorityManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.priorities`!
*/
export class ODPriorityManager_Default extends ODPriorityManager {
get<PriorityId extends keyof ODPriorityManagerIds>(id:PriorityId): ODPriorityManagerIds[PriorityId]
get<PriorityId extends keyof api.ODNoGeneric<IdList>>(id:PriorityId): IdList[PriorityId]
get(id:api.ODValidId): ODPriorityLevel|null
get(id:api.ODValidId): ODPriorityLevel|null {
return super.get(id)
}
remove<PriorityId extends keyof ODPriorityManagerIds>(id:PriorityId): ODPriorityManagerIds[PriorityId]
remove<PriorityId extends keyof api.ODNoGeneric<IdList>>(id:PriorityId): IdList[PriorityId]
remove(id:api.ODValidId): ODPriorityLevel|null
remove(id:api.ODValidId): ODPriorityLevel|null {
return super.remove(id)
}
exists(id:keyof ODPriorityManagerIds): boolean
exists(id:keyof api.ODNoGeneric<IdList>): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
@@ -73,6 +69,11 @@ export class ODPriorityManager_Default extends ODPriorityManager {
}
}
/**## ODMappedPriorityManager `class
* A special class with types for the Open Ticket `ODPriorityManager` class.
*/
export class ODMappedPriorityManager extends ODPriorityManager<ODPriorityManagerIdMappings> {}
/**## ODPriorityLevel `class`
* This is an Open Ticket priority level.
*
@@ -2,7 +2,6 @@
//OPENTICKET TICKET MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODClientManager_Default } from "../defaults/client"
import { ODTicketOption } from "./option"
import * as discord from "discord.js"
@@ -17,11 +16,11 @@ export class ODTicketManager extends api.ODManager<ODTicket> {
/**A reference to the main server of the bot */
#guild: discord.Guild|null = null
/**A reference to the Open Ticket client manager. */
#client: ODClientManager_Default
#client: api.ODClientManager
/**A reference to the Open Ticket debugger. */
#debug: api.ODDebugger
constructor(debug:api.ODDebugger, client:ODClientManager_Default){
constructor(debug:api.ODDebugger, client:api.ODClientManager){
super(debug,"ticket")
this.#debug = debug
this.#client = client
@@ -2,10 +2,23 @@
//OPENTICKET TRANSCRIPT MODULE
///////////////////////////////////////
import * as api from "@open-discord-bots/framework/api"
import { ODPermissionManager_Default } from "../defaults/permission"
import { ODTicket, ODTicketManager } from "./ticket"
import * as discord from "discord.js"
/**## ODTranscriptManagerIdConstraint `type`
* The constraint/layout for id mappings/interfaces of the `ODTranscriptManager` class.
*/
export type ODTranscriptManagerIdConstraint = Record<string,ODTranscriptCompiler<any,null|object>>
/**## ODTranscriptManagerIdMappings `interface`
* A list of all available IDs in the default `ODTranscriptManager` class in `opendiscord`.
* It's used to generate typescript declarations for this class.
*/
export interface ODTranscriptManagerIdMappings extends ODTranscriptManagerIdConstraint {
"opendiscord:html-compiler":ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,
"opendiscord:text-compiler":ODTranscriptCompiler<{contents:string},null>,
}
/**## ODTranscriptManager `class`
* This is an Open Ticket transcript manager.
*
@@ -13,19 +26,45 @@ import * as discord from "discord.js"
*
* The 2 default built-in transcript generators are: `opendiscord:html-compiler` & `opendiscord:text-compiler`.
*/
export class ODTranscriptManager extends api.ODManager<ODTranscriptCompiler<any,null|object>> {
export class ODTranscriptManager<IdList extends ODTranscriptManagerIdConstraint = ODTranscriptManagerIdConstraint> extends api.ODManager<ODTranscriptCompiler<any,null|object>> {
/**The manager responsible for collecting all messages in a channel. */
collector: ODTranscriptCollector
/**Alias for the client manager. */
#client: api.ODClientManager
constructor(debug:api.ODDebugger, tickets:ODTicketManager, client:api.ODClientManager, permissions:ODPermissionManager_Default){
constructor(debug:api.ODDebugger, tickets:ODTicketManager, client:api.ODClientManager, permissions:api.ODPermissionManager){
super(debug,"transcript compiler")
this.#client = client
this.collector = new ODTranscriptCollector(tickets,client,permissions)
}
get<CompilerId extends keyof api.ODNoGeneric<IdList>>(id:CompilerId): IdList[CompilerId]
get(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null
get(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null {
return super.get(id)
}
remove<CompilerId extends keyof api.ODNoGeneric<IdList>>(id:CompilerId): IdList[CompilerId]
remove(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null
remove(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null {
return super.remove(id)
}
exists(id:keyof api.ODNoGeneric<IdList>): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODMappedTranscriptManager `class
* A special class with types for the Open Ticket `ODTranscriptManager` class.
*/
export class ODMappedTranscriptManager extends ODTranscriptManager<ODTranscriptManagerIdMappings> {}
/**## ODTranscriptCompilerInitFunction `type`
* This function will initiate/prepare the transcript system for an incoming transcript.
*/
@@ -114,44 +153,6 @@ export class ODTranscriptCompiler<Data extends object,InitData extends (object|n
}
}
/**## ODTranscriptCompilerIds `type`
* This interface is a list of ids available in the `ODTranscriptCompiler` class.
* It's used to generate typescript declarations for this class.
*/
export interface ODTranscriptCompilerIds {
"opendiscord:html-compiler":ODTranscriptCompiler<{url:string,availableUntil:Date},{auth:string}>,
"opendiscord:text-compiler":ODTranscriptCompiler<{contents:string},null>,
}
/**## ODTranscriptManager_Default `default_class`
* This is a special class that adds type definitions & typescript to the ODTranscriptManager class.
* It doesn't add any extra features!
*
* This default class is made for the global variable `opendiscord.transcripts`!
*/
export class ODTranscriptManager_Default extends ODTranscriptManager {
get<CompilerId extends keyof ODTranscriptCompilerIds>(id:CompilerId): ODTranscriptCompilerIds[CompilerId]
get(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null
get(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null {
return super.get(id)
}
remove<CompilerId extends keyof ODTranscriptCompilerIds>(id:CompilerId): ODTranscriptCompilerIds[CompilerId]
remove(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null
remove(id:api.ODValidId): ODTranscriptCompiler<any,null|object>|null {
return super.remove(id)
}
exists(id:keyof ODTranscriptCompilerIds): boolean
exists(id:api.ODValidId): boolean
exists(id:api.ODValidId): boolean {
return super.exists(id)
}
}
/**## ODTranscriptCollector `class`
* This is an Open Ticket transcript collector.
*
@@ -165,9 +166,9 @@ export class ODTranscriptCollector {
/**Alias for the client manager. */
#client: api.ODClientManager
/**Alias for the permissions manager. */
#permissions: ODPermissionManager_Default
#permissions: api.ODPermissionManager
constructor(tickets:ODTicketManager,client:api.ODClientManager,permissions:ODPermissionManager_Default){
constructor(tickets:ODTicketManager,client:api.ODClientManager,permissions:api.ODPermissionManager){
this.#tickets = tickets
this.#client = client
this.#permissions = permissions