Files
website/docs/api/modules.html
github-actions[bot] 6ba2fc60c6 deploy: 63ba2ac1e0
2024-04-27 18:49:48 +00:00

818 lines
73 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-api/modules" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.0.0">
<title data-rh="true">@sern/handler | sern - Handlers. Redefined.</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://sern.dev/img/logo.png"><meta data-rh="true" property="og:url" content="https://sern.dev/docs/api/modules"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="og:title" content="sern - Handlers. Redefined."><meta data-rh="true" name="og:description" content="A modular, customizable, fast Discord.js framework to streamline bot development"><meta data-rh="true" name="og:url" content="https://sern.dev"><meta data-rh="true" name="og:type" content="website"><meta data-rh="true" name="twitter:site" content="@sern-handler"><meta data-rh="true" property="og:image:alt" content="sernlogo"><meta data-rh="true" name="twitter:title" content="sern - Handlers. Redefined."><meta data-rh="true" name="twitter:description" content="A modular, customizable, fast Discord.js framework to streamline bot development"><meta data-rh="true" name="keywords" content="discord, bot, handler, framework, documentation, sern"><meta data-rh="true" name="twitter:image" content="https://sern.dev/img/logo.png"><meta data-rh="true" name="twitter:url" content="https://sern.dev"><meta data-rh="true" property="og:image:height" content="512"><meta data-rh="true" property="og:image:width" content="1024"><meta data-rh="true" name="theme-color" content="#F25186"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="@sern/handler | sern - Handlers. Redefined."><meta data-rh="true" name="description" content="Namespaces"><meta data-rh="true" property="og:description" content="Namespaces"><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://sern.dev/docs/api/modules"><link data-rh="true" rel="alternate" href="https://sern.dev/docs/api/modules" hreflang="en"><link data-rh="true" rel="alternate" href="https://sern.dev/docs/api/modules" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://AA9S5J9NYT-dsn.algolia.net" crossorigin="anonymous"><link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="sern - Handlers. Redefined. RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="sern - Handlers. Redefined. Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="sern - Handlers. Redefined." href="/opensearch.xml">
<link rel="preconnect" href="https://analytics.srizan.dev">
<script async defer="defer" src="https://analytics.srizan.dev/ua.js" data-website-id="e82ff65c-b08f-47b5-8e74-5c31cbcec0ad" data-auto-track data-do-not-track data-cache data-domains="sern.dev"></script><link rel="stylesheet" href="/assets/css/styles.3470ab60.css">
<script src="/assets/js/runtime~main.5923e3ac.js" defer="defer"></script>
<script src="/assets/js/main.b596629f.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/favicon.ico" alt="logo logo" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/img/favicon.ico" alt="logo logo" class="themedComponent_mlkZ themedComponent--dark_xIcU"></div><b class="navbar__title text--truncate">Home</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/docs/intro">Docs &amp; Guide</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a class="navbar__item navbar__link" href="/sponsors">Sponsor</a><a class="navbar__item navbar__link" href="/plugins">Plugins</a></div><div class="navbar__items navbar__items--right"><a href="https://github.com/sern-handler" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="Switch between dark and light mode (currently light mode)" aria-label="Switch between dark and light mode (currently light mode)" aria-live="polite"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20" aria-hidden="true"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/docs/api">API</a><button aria-label="Collapse sidebar category &#x27;API&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/docs/api/modules">Exports</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" tabindex="0" href="/docs/api/namespaces/CommandError">Namespaces</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" tabindex="0" href="/docs/api/enums/CommandType">Enumerations</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" tabindex="0" href="/docs/api/classes/CommandExecutable">Classes</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" tabindex="0" href="/docs/api/interfaces/AutocompleteCommand">Interfaces</a></div></li></ul></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/intro">Welcome!</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/cli">CLI</a><button aria-label="Expand sidebar category &#x27;CLI&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/guide">Introduction</a><button aria-label="Expand sidebar category &#x27;Introduction&#x27;" type="button" class="clean-btn menu__caret"></button></div></li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/docs/api"><span itemprop="name">API</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Exports</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>@sern/handler</h1></header><h2 class="anchor anchorWithStickyNavbar_LWe7" id="namespaces">Namespaces<a href="#namespaces" class="hash-link" aria-label="Direct link to Namespaces" title="Direct link to Namespaces"></a></h2>
<ul>
<li><a href="/docs/api/namespaces/Presence">Presence</a></li>
<li><a href="/docs/api/namespaces/Sern">Sern</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="enumerations">Enumerations<a href="#enumerations" class="hash-link" aria-label="Direct link to Enumerations" title="Direct link to Enumerations"></a></h2>
<ul>
<li><a href="/docs/api/enums/CommandType">CommandType</a></li>
<li><a href="/docs/api/enums/EventType">EventType</a></li>
<li><a href="/docs/api/enums/PayloadType">PayloadType</a></li>
<li><a href="/docs/api/enums/PluginType">PluginType</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="classes">Classes<a href="#classes" class="hash-link" aria-label="Direct link to Classes" title="Direct link to Classes"></a></h2>
<ul>
<li><a href="/docs/api/classes/Context">Context</a></li>
<li><a href="/docs/api/classes/DefaultErrorHandling">DefaultErrorHandling</a></li>
<li><a href="/docs/api/classes/DefaultLogging">DefaultLogging</a></li>
<li><a href="/docs/api/classes/DefaultModuleManager">DefaultModuleManager</a></li>
<li><a href="/docs/api/classes/ModuleStore">ModuleStore</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="interfaces">Interfaces<a href="#interfaces" class="hash-link" aria-label="Direct link to Interfaces" title="Direct link to Interfaces"></a></h2>
<ul>
<li><a href="/docs/api/interfaces/BothCommand">BothCommand</a></li>
<li><a href="/docs/api/interfaces/ButtonCommand">ButtonCommand</a></li>
<li><a href="/docs/api/interfaces/ChannelSelectCommand">ChannelSelectCommand</a></li>
<li><a href="/docs/api/interfaces/CommandModuleDefs">CommandModuleDefs</a></li>
<li><a href="/docs/api/interfaces/ContextMenuMsg">ContextMenuMsg</a></li>
<li><a href="/docs/api/interfaces/ContextMenuUser">ContextMenuUser</a></li>
<li><a href="/docs/api/interfaces/ControlPlugin">ControlPlugin</a></li>
<li><a href="/docs/api/interfaces/Controller">Controller</a></li>
<li><a href="/docs/api/interfaces/CoreDependencies">CoreDependencies</a></li>
<li><a href="/docs/api/interfaces/CoreModuleStore">CoreModuleStore</a></li>
<li><a href="/docs/api/interfaces/DiscordEventCommand">DiscordEventCommand</a></li>
<li><a href="/docs/api/interfaces/Disposable">Disposable</a></li>
<li><a href="/docs/api/interfaces/Emitter">Emitter</a></li>
<li><a href="/docs/api/interfaces/ErrorHandling">ErrorHandling</a></li>
<li><a href="/docs/api/interfaces/EventModuleDefs">EventModuleDefs</a></li>
<li><a href="/docs/api/interfaces/ExternalEventCommand">ExternalEventCommand</a></li>
<li><a href="/docs/api/interfaces/Init">Init</a></li>
<li><a href="/docs/api/interfaces/InitPlugin">InitPlugin</a></li>
<li><a href="/docs/api/interfaces/Logging">Logging</a></li>
<li><a href="/docs/api/interfaces/MentionableSelectCommand">MentionableSelectCommand</a></li>
<li><a href="/docs/api/interfaces/ModalSubmitCommand">ModalSubmitCommand</a></li>
<li><a href="/docs/api/interfaces/ModuleManager">ModuleManager</a></li>
<li><a href="/docs/api/interfaces/Plugin">Plugin</a></li>
<li><a href="/docs/api/interfaces/RoleSelectCommand">RoleSelectCommand</a></li>
<li><a href="/docs/api/interfaces/SernAutocompleteData">SernAutocompleteData</a></li>
<li><a href="/docs/api/interfaces/SernEventCommand">SernEventCommand</a></li>
<li><a href="/docs/api/interfaces/SernEventsMapping">SernEventsMapping</a></li>
<li><a href="/docs/api/interfaces/SernSubCommandData">SernSubCommandData</a></li>
<li><a href="/docs/api/interfaces/SernSubCommandGroupData">SernSubCommandGroupData</a></li>
<li><a href="/docs/api/interfaces/SlashCommand">SlashCommand</a></li>
<li><a href="/docs/api/interfaces/StringSelectCommand">StringSelectCommand</a></li>
<li><a href="/docs/api/interfaces/TextCommand">TextCommand</a></li>
<li><a href="/docs/api/interfaces/UserSelectCommand">UserSelectCommand</a></li>
<li><a href="/docs/api/interfaces/Wrapper">Wrapper</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="type-aliases">Type Aliases<a href="#type-aliases" class="hash-link" aria-label="Direct link to Type Aliases" title="Direct link to Type Aliases"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="anycommandplugin">AnyCommandPlugin<a href="#anycommandplugin" class="hash-link" aria-label="Direct link to AnyCommandPlugin" title="Direct link to AnyCommandPlugin"></a></h3>
<p>Ƭ <strong>AnyCommandPlugin</strong>: <a href="/docs/api/interfaces/ControlPlugin"><code>ControlPlugin</code></a> | <a href="/docs/api/interfaces/InitPlugin"><code>InitPlugin</code></a>&lt;[<code>InitArgs</code>&lt;<code>Processed</code>&lt;<a href="/docs/api/modules#commandmodule"><code>CommandModule</code></a>&gt;&gt;]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in">Defined in<a href="#defined-in" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-plugin.ts#L76" target="_blank" rel="noopener noreferrer">src/types/core-plugin.ts:76</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="anyeventplugin">AnyEventPlugin<a href="#anyeventplugin" class="hash-link" aria-label="Direct link to AnyEventPlugin" title="Direct link to AnyEventPlugin"></a></h3>
<p>Ƭ <strong>AnyEventPlugin</strong>: <a href="/docs/api/interfaces/ControlPlugin"><code>ControlPlugin</code></a> | <a href="/docs/api/interfaces/InitPlugin"><code>InitPlugin</code></a>&lt;[<code>InitArgs</code>&lt;<code>Processed</code>&lt;<a href="/docs/api/modules#eventmodule"><code>EventModule</code></a>&gt;&gt;]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-1">Defined in<a href="#defined-in-1" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-plugin.ts#L77" target="_blank" rel="noopener noreferrer">src/types/core-plugin.ts:77</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="args">Args<a href="#args" class="hash-link" aria-label="Direct link to Args" title="Direct link to Args"></a></h3>
<p>Ƭ <strong>Args</strong>: <code>ParseType</code>&lt;{ <code>slash</code>: <a href="/docs/api/modules#slashoptions"><code>SlashOptions</code></a> ; <code>text</code>: <code>string</code>[] }&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-2">Defined in<a href="#defined-in-2" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/utility.ts#L16" target="_blank" rel="noopener noreferrer">src/types/utility.ts:16</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="commandmodule">CommandModule<a href="#commandmodule" class="hash-link" aria-label="Direct link to CommandModule" title="Direct link to CommandModule"></a></h3>
<p>Ƭ <strong>CommandModule</strong>: <a href="/docs/api/interfaces/TextCommand"><code>TextCommand</code></a> | <a href="/docs/api/interfaces/SlashCommand"><code>SlashCommand</code></a> | <a href="/docs/api/interfaces/BothCommand"><code>BothCommand</code></a> | <a href="/docs/api/interfaces/ContextMenuUser"><code>ContextMenuUser</code></a> | <a href="/docs/api/interfaces/ContextMenuMsg"><code>ContextMenuMsg</code></a> | <a href="/docs/api/interfaces/ButtonCommand"><code>ButtonCommand</code></a> | <a href="/docs/api/interfaces/StringSelectCommand"><code>StringSelectCommand</code></a> | <a href="/docs/api/interfaces/MentionableSelectCommand"><code>MentionableSelectCommand</code></a> | <a href="/docs/api/interfaces/UserSelectCommand"><code>UserSelectCommand</code></a> | <a href="/docs/api/interfaces/ChannelSelectCommand"><code>ChannelSelectCommand</code></a> | <a href="/docs/api/interfaces/RoleSelectCommand"><code>RoleSelectCommand</code></a> | <a href="/docs/api/interfaces/ModalSubmitCommand"><code>ModalSubmitCommand</code></a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-3">Defined in<a href="#defined-in-3" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-modules.ts#L132" target="_blank" rel="noopener noreferrer">src/types/core-modules.ts:132</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="eventmodule">EventModule<a href="#eventmodule" class="hash-link" aria-label="Direct link to EventModule" title="Direct link to EventModule"></a></h3>
<p>Ƭ <strong>EventModule</strong>: <a href="/docs/api/interfaces/DiscordEventCommand"><code>DiscordEventCommand</code></a> | <a href="/docs/api/interfaces/SernEventCommand"><code>SernEventCommand</code></a> | <a href="/docs/api/interfaces/ExternalEventCommand"><code>ExternalEventCommand</code></a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-4">Defined in<a href="#defined-in-4" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-modules.ts#L131" target="_blank" rel="noopener noreferrer">src/types/core-modules.ts:131</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="initializable">Initializable<a href="#initializable" class="hash-link" aria-label="Direct link to Initializable" title="Direct link to Initializable"></a></h3>
<p>Ƭ <strong>Initializable</strong>&lt;<code>T</code>&gt;: <code>T</code></p>
<p>Type to annotate that something is initializable.
If T has an init method, this will be called.</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters">Type parameters<a href="#type-parameters" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends <a href="/docs/api/interfaces/Init"><code>Init</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-5">Defined in<a href="#defined-in-5" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/ioc.ts#L17" target="_blank" rel="noopener noreferrer">src/types/ioc.ts:17</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="logpayload">LogPayload<a href="#logpayload" class="hash-link" aria-label="Direct link to LogPayload" title="Direct link to LogPayload"></a></h3>
<p>Ƭ <strong>LogPayload</strong>&lt;<code>T</code>&gt;: <code>Object</code></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-1">Type parameters<a href="#type-parameters-1" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left"><code>unknown</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-declaration">Type declaration<a href="#type-declaration" class="hash-link" aria-label="Direct link to Type declaration" title="Direct link to Type declaration"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>message</code></td><td style="text-align:left"><code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-6">Defined in<a href="#defined-in-6" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/contracts/logging.ts#L11" target="_blank" rel="noopener noreferrer">src/core/contracts/logging.ts:11</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="payload">Payload<a href="#payload" class="hash-link" aria-label="Direct link to Payload" title="Direct link to Payload"></a></h3>
<p>Ƭ <strong>Payload</strong>: { <code>module</code>: <code>AnyModule</code> ; <code>type</code>: <a href="/docs/api/enums/PayloadType#success"><code>Success</code></a> } | { <code>module?</code>: <code>AnyModule</code> ; <code>reason</code>: <code>string</code> | <code>Error</code> ; <code>type</code>: <a href="/docs/api/enums/PayloadType#failure"><code>Failure</code></a> } | { <code>reason</code>: <code>string</code> ; <code>type</code>: <a href="/docs/api/enums/PayloadType#warning"><code>Warning</code></a> }</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-7">Defined in<a href="#defined-in-7" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/utility.ts#L26" target="_blank" rel="noopener noreferrer">src/types/utility.ts:26</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="pluginresult">PluginResult<a href="#pluginresult" class="hash-link" aria-label="Direct link to PluginResult" title="Direct link to PluginResult"></a></h3>
<p>Ƭ <strong>PluginResult</strong>: <code>Awaitable</code>&lt;<code>VoidResult</code>&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-8">Defined in<a href="#defined-in-8" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-plugin.ts#L51" target="_blank" rel="noopener noreferrer">src/types/core-plugin.ts:51</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="sernoptionsdata">SernOptionsData<a href="#sernoptionsdata" class="hash-link" aria-label="Direct link to SernOptionsData" title="Direct link to SernOptionsData"></a></h3>
<p>Ƭ <strong>SernOptionsData</strong>: <a href="/docs/api/interfaces/SernSubCommandData"><code>SernSubCommandData</code></a> | <a href="/docs/api/interfaces/SernSubCommandGroupData"><code>SernSubCommandGroupData</code></a> | <code>APIApplicationCommandBasicOption</code> | <a href="/docs/api/interfaces/SernAutocompleteData"><code>SernAutocompleteData</code></a></p>
<p>Type that replaces autocomplete with <a href="/docs/api/interfaces/SernAutocompleteData">SernAutocompleteData</a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-9">Defined in<a href="#defined-in-9" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/core-modules.ts#L200" target="_blank" rel="noopener noreferrer">src/types/core-modules.ts:200</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="singleton">Singleton<a href="#singleton" class="hash-link" aria-label="Direct link to Singleton" title="Direct link to Singleton"></a></h3>
<p>Ƭ <strong>Singleton</strong>&lt;<code>T</code>&gt;: () =&gt; <code>T</code></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-2">Type parameters<a href="#type-parameters-2" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-declaration-1">Type declaration<a href="#type-declaration-1" class="hash-link" aria-label="Direct link to Type declaration" title="Direct link to Type declaration"></a></h4>
<p>▸ (): <code>T</code></p>
<p>Type to annotate that something is a singleton.
T is created once and lazily.</p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns">Returns<a href="#returns" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>T</code></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-10">Defined in<a href="#defined-in-10" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/ioc.ts#L7" target="_blank" rel="noopener noreferrer">src/types/ioc.ts:7</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="slashoptions">SlashOptions<a href="#slashoptions" class="hash-link" aria-label="Direct link to SlashOptions" title="Direct link to SlashOptions"></a></h3>
<p>Ƭ <strong>SlashOptions</strong>: <code>Omit</code>&lt;<code>CommandInteractionOptionResolver</code>, <code>&quot;getMessage&quot;</code> | <code>&quot;getFocused&quot;</code>&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-11">Defined in<a href="#defined-in-11" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/utility.ts#L14" target="_blank" rel="noopener noreferrer">src/types/utility.ts:14</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="transient">Transient<a href="#transient" class="hash-link" aria-label="Direct link to Transient" title="Direct link to Transient"></a></h3>
<p>Ƭ <strong>Transient</strong>&lt;<code>T</code>&gt;: () =&gt; () =&gt; <code>T</code></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-3">Type parameters<a href="#type-parameters-3" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-declaration-2">Type declaration<a href="#type-declaration-2" class="hash-link" aria-label="Direct link to Type declaration" title="Direct link to Type declaration"></a></h4>
<p>▸ (): () =&gt; <code>T</code></p>
<p>Type to annotate that something is transient.
Every time this is called, a new object is created</p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns-1">Returns<a href="#returns-1" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>fn</code></p>
<p>▸ (): <code>T</code></p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns-2">Returns<a href="#returns-2" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>T</code></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-12">Defined in<a href="#defined-in-12" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/types/ioc.ts#L12" target="_blank" rel="noopener noreferrer">src/types/ioc.ts:12</a></p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="variables">Variables<a href="#variables" class="hash-link" aria-label="Direct link to Variables" title="Direct link to Variables"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="controller">controller<a href="#controller" class="hash-link" aria-label="Direct link to controller" title="Direct link to controller"></a></h3>
<p><code>Const</code> <strong>controller</strong>: <code>Object</code></p>
<p><strong><code>Since</code></strong></p>
<p>1.0.0
The object passed into every plugin to control a command&#x27;s behavior</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-declaration-3">Type declaration<a href="#type-declaration-3" class="hash-link" aria-label="Direct link to Type declaration" title="Direct link to Type declaration"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>next</code></td><td style="text-align:left">() =&gt; <code>OkImpl</code>&lt;<code>void</code>&gt;</td></tr><tr><td style="text-align:left"><code>stop</code></td><td style="text-align:left">() =&gt; <code>ErrImpl</code>&lt;<code>void</code>&gt;</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-13">Defined in<a href="#defined-in-13" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L69" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:69</a></p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="functions">Functions<a href="#functions" class="hash-link" aria-label="Direct link to Functions" title="Direct link to Functions"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="commandcontrolplugin">CommandControlPlugin<a href="#commandcontrolplugin" class="hash-link" aria-label="Direct link to CommandControlPlugin" title="Direct link to CommandControlPlugin"></a></h3>
<p><strong>CommandControlPlugin</strong>&lt;<code>I</code>&gt;(<code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-4">Type parameters<a href="#type-parameters-4" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>I</code></td><td style="text-align:left">extends <a href="/docs/api/enums/CommandType"><code>CommandType</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters">Parameters<a href="#parameters" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>CommandArgs</code>&lt;<code>I</code>, <a href="/docs/api/enums/PluginType#control"><code>Control</code></a>&gt;) =&gt; <a href="/docs/api/modules#pluginresult"><code>PluginResult</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-3">Returns<a href="#returns-3" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>2.5.0
@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-14">Defined in<a href="#defined-in-14" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L37" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:37</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="commandinitplugin">CommandInitPlugin<a href="#commandinitplugin" class="hash-link" aria-label="Direct link to CommandInitPlugin" title="Direct link to CommandInitPlugin"></a></h3>
<p><strong>CommandInitPlugin</strong>&lt;<code>I</code>&gt;(<code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-5">Type parameters<a href="#type-parameters-5" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>I</code></td><td style="text-align:left">extends <a href="/docs/api/enums/CommandType"><code>CommandType</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-1">Parameters<a href="#parameters-1" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>CommandArgs</code>&lt;<code>I</code>, <a href="/docs/api/enums/PluginType#init"><code>Init</code></a>&gt;) =&gt; <a href="/docs/api/modules#pluginresult"><code>PluginResult</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-4">Returns<a href="#returns-4" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>2.5.0
@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-15">Defined in<a href="#defined-in-15" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L28" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:28</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="discordeventcontrolplugin">DiscordEventControlPlugin<a href="#discordeventcontrolplugin" class="hash-link" aria-label="Direct link to DiscordEventControlPlugin" title="Direct link to DiscordEventControlPlugin"></a></h3>
<p><strong>DiscordEventControlPlugin</strong>&lt;<code>T</code>&gt;(<code>name</code>, <code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-6">Type parameters<a href="#type-parameters-6" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends keyof <code>ClientEvents</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-2">Parameters<a href="#parameters-2" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>name</code></td><td style="text-align:left"><code>T</code></td></tr><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>ClientEvents</code>[<code>T</code>]) =&gt; <a href="/docs/api/modules#pluginresult"><code>PluginResult</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-5">Returns<a href="#returns-5" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>2.5.0</p>
<p><strong><code>Experimental</code></strong></p>
<p>A specialized function for creating control plugins with discord.js ClientEvents.
Will probably be moved one day!</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-16">Defined in<a href="#defined-in-16" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L58" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:58</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="eventcontrolplugin">EventControlPlugin<a href="#eventcontrolplugin" class="hash-link" aria-label="Direct link to EventControlPlugin" title="Direct link to EventControlPlugin"></a></h3>
<p><strong>EventControlPlugin</strong>&lt;<code>I</code>&gt;(<code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-7">Type parameters<a href="#type-parameters-7" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>I</code></td><td style="text-align:left">extends <a href="/docs/api/enums/EventType"><code>EventType</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-3">Parameters<a href="#parameters-3" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>EventArgs</code>&lt;<code>I</code>, <a href="/docs/api/enums/PluginType#control"><code>Control</code></a>&gt;) =&gt; <a href="/docs/api/modules#pluginresult"><code>PluginResult</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-6">Returns<a href="#returns-6" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>2.5.0
@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-17">Defined in<a href="#defined-in-17" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L46" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:46</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="eventinitplugin">EventInitPlugin<a href="#eventinitplugin" class="hash-link" aria-label="Direct link to EventInitPlugin" title="Direct link to EventInitPlugin"></a></h3>
<p><strong>EventInitPlugin</strong>&lt;<code>I</code>&gt;(<code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-8">Type parameters<a href="#type-parameters-8" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>I</code></td><td style="text-align:left">extends <a href="/docs/api/enums/EventType"><code>EventType</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-4">Parameters<a href="#parameters-4" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>EventArgs</code>&lt;<code>I</code>, <a href="/docs/api/enums/PluginType#init"><code>Init</code></a>&gt;) =&gt; <a href="/docs/api/modules#pluginresult"><code>PluginResult</code></a></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-7">Returns<a href="#returns-7" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>unknown</code>[]&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>2.5.0
@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-18">Defined in<a href="#defined-in-18" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L19" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:19</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="service">Service<a href="#service" class="hash-link" aria-label="Direct link to Service" title="Direct link to Service"></a></h3>
<p><strong>Service</strong>&lt;<code>T</code>&gt;(<code>key</code>): <code>NonNullable</code>&lt;<code>UnpackFunction</code>&lt;<code>Partial</code>&lt;<code>Dependencies</code>&gt;[<code>T</code>]&gt;&gt;</p>
<p>The new Service api, a cleaner alternative to useContainer
To obtain intellisense, ensure a .d.ts file exists in the root of compilation.
Usually our scaffolding tool takes care of this.
Note: this method only works AFTER your container has been initiated</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-9">Type parameters<a href="#type-parameters-9" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends keyof <code>Dependencies</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-5">Parameters<a href="#parameters-5" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th><th style="text-align:left">Description</th></tr></thead><tbody><tr><td style="text-align:left"><code>key</code></td><td style="text-align:left"><code>T</code></td><td style="text-align:left">a key that corresponds to a dependency registered.</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-8">Returns<a href="#returns-8" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><code>NonNullable</code>&lt;<code>UnpackFunction</code>&lt;<code>Partial</code>&lt;<code>Dependencies</code>&gt;[<code>T</code>]&gt;&gt;</p>
<p><strong><code>Since</code></strong></p>
<p>3.0.0</p>
<p><strong><code>Example</code></strong></p>
<div class="language-ts codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#403f53;--prism-background-color:#FBFBFB"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-ts codeBlock_bY9V thin-scrollbar" style="color:#403f53;background-color:#FBFBFB"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#403f53"><span class="token keyword" style="color:rgb(12, 150, 155)">const</span><span class="token plain"> client </span><span class="token operator" style="color:rgb(12, 150, 155)">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(153, 76, 195);font-style:italic">Service</span><span class="token punctuation" style="color:rgb(153, 76, 195)">(</span><span class="token string" style="color:rgb(72, 118, 214)">&#x27;@sern/client&#x27;</span><span class="token punctuation" style="color:rgb(153, 76, 195)">)</span><span class="token punctuation" style="color:rgb(153, 76, 195)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-19">Defined in<a href="#defined-in-19" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/ioc/dependency-injection.ts#L37" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:37</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="services">Services<a href="#services" class="hash-link" aria-label="Direct link to Services" title="Direct link to Services"></a></h3>
<p><strong>Services</strong>&lt;<code>T</code>&gt;(<code>...keys</code>): <code>IntoDependencies</code>&lt;<code>T</code>&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-10">Type parameters<a href="#type-parameters-10" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends keyof <code>Dependencies</code>[]</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-6">Parameters<a href="#parameters-6" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>...keys</code></td><td style="text-align:left">[...T[]]</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-9">Returns<a href="#returns-9" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><code>IntoDependencies</code>&lt;<code>T</code>&gt;</p>
<p>array of dependencies, in the same order of keys provided</p>
<p><strong><code>Since</code></strong></p>
<p>3.0.0
The plural version of <a href="/docs/api/modules#service">Service</a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-20">Defined in<a href="#defined-in-20" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/ioc/dependency-injection.ts#L47" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:47</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="commandmodule-1">commandModule<a href="#commandmodule-1" class="hash-link" aria-label="Direct link to commandModule" title="Direct link to commandModule"></a></h3>
<p><strong>commandModule</strong>(<code>mod</code>): <a href="/docs/api/modules#commandmodule"><code>CommandModule</code></a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-7">Parameters<a href="#parameters-7" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>mod</code></td><td style="text-align:left"><code>InputCommand</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-10">Returns<a href="#returns-10" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/modules#commandmodule"><code>CommandModule</code></a></p>
<p><strong><code>Since</code></strong></p>
<p>1.0.0 The wrapper function to define command modules for sern</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-21">Defined in<a href="#defined-in-21" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/modules.ts#L19" target="_blank" rel="noopener noreferrer">src/core/modules.ts:19</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="discordevent">discordEvent<a href="#discordevent" class="hash-link" aria-label="Direct link to discordEvent" title="Direct link to discordEvent"></a></h3>
<p><strong>discordEvent</strong>&lt;<code>T</code>&gt;(<code>mod</code>): <a href="/docs/api/modules#eventmodule"><code>EventModule</code></a></p>
<p>Create event modules from discord.js client events,
This is an <a href="/docs/api/modules#eventmodule-1">eventModule</a> for discord events,
where typings can be very bad.</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-11">Type parameters<a href="#type-parameters-11" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends keyof <code>ClientEvents</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-8">Parameters<a href="#parameters-8" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>mod</code></td><td style="text-align:left"><code>Object</code></td></tr><tr><td style="text-align:left"><code>mod.execute</code></td><td style="text-align:left">(...<code>args</code>: <code>ClientEvents</code>[<code>T</code>]) =&gt; <code>unknown</code></td></tr><tr><td style="text-align:left"><code>mod.name</code></td><td style="text-align:left"><code>T</code></td></tr><tr><td style="text-align:left"><code>mod.plugins?</code></td><td style="text-align:left"><a href="/docs/api/modules#anyeventplugin"><code>AnyEventPlugin</code></a>[]</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-11">Returns<a href="#returns-11" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/modules#eventmodule"><code>EventModule</code></a></p>
<p><strong><code>Experimental</code></strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-22">Defined in<a href="#defined-in-22" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/modules.ts#L47" target="_blank" rel="noopener noreferrer">src/core/modules.ts:47</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="eventmodule-1">eventModule<a href="#eventmodule-1" class="hash-link" aria-label="Direct link to eventModule" title="Direct link to eventModule"></a></h3>
<p><strong>eventModule</strong>(<code>mod</code>): <a href="/docs/api/modules#eventmodule"><code>EventModule</code></a></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-9">Parameters<a href="#parameters-9" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>mod</code></td><td style="text-align:left"><code>InputEvent</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-12">Returns<a href="#returns-12" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/modules#eventmodule"><code>EventModule</code></a></p>
<p><strong><code>Since</code></strong></p>
<p>1.0.0
The wrapper function to define event modules for sern</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-23">Defined in<a href="#defined-in-23" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/modules.ts#L32" target="_blank" rel="noopener noreferrer">src/core/modules.ts:32</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="makedependencies">makeDependencies<a href="#makedependencies" class="hash-link" aria-label="Direct link to makeDependencies" title="Direct link to makeDependencies"></a></h3>
<p><strong>makeDependencies</strong>&lt;<code>T</code>&gt;(<code>conf</code>): <code>Promise</code>&lt;&lt;V&gt;(...<code>keys</code>: [...V[]]) =&gt; <code>IntoDependencies</code>&lt;<code>V</code>&gt;&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-12">Type parameters<a href="#type-parameters-12" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td><td style="text-align:left">extends <code>Dependencies</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-10">Parameters<a href="#parameters-10" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>conf</code></td><td style="text-align:left"><code>ValidDependencyConfig</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-13">Returns<a href="#returns-13" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><code>Promise</code>&lt;&lt;V&gt;(...<code>keys</code>: [...V[]]) =&gt; <code>IntoDependencies</code>&lt;<code>V</code>&gt;&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-24">Defined in<a href="#defined-in-24" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/ioc/base.ts#L144" target="_blank" rel="noopener noreferrer">src/core/ioc/base.ts:144</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="makeplugin">makePlugin<a href="#makeplugin" class="hash-link" aria-label="Direct link to makePlugin" title="Direct link to makePlugin"></a></h3>
<p><strong>makePlugin</strong>&lt;<code>V</code>&gt;(<code>type</code>, <code>execute</code>): <a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>V</code>&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-13">Type parameters<a href="#type-parameters-13" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>V</code></td><td style="text-align:left">extends <code>unknown</code>[]</td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-11">Parameters<a href="#parameters-11" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>type</code></td><td style="text-align:left"><a href="/docs/api/enums/PluginType"><code>PluginType</code></a></td></tr><tr><td style="text-align:left"><code>execute</code></td><td style="text-align:left">(...<code>args</code>: <code>any</code>[]) =&gt; <code>any</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-14">Returns<a href="#returns-14" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><a href="/docs/api/interfaces/Plugin"><code>Plugin</code></a>&lt;<code>V</code>&gt;</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-25">Defined in<a href="#defined-in-25" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/create-plugins.ts#L6" target="_blank" rel="noopener noreferrer">src/core/create-plugins.ts:6</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="single">single<a href="#single" class="hash-link" aria-label="Direct link to single" title="Direct link to single"></a></h3>
<p><strong>single</strong>&lt;<code>T</code>&gt;(<code>cb</code>): () =&gt; <code>T</code></p>
<p>@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-14">Type parameters<a href="#type-parameters-14" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-12">Parameters<a href="#parameters-12" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>cb</code></td><td style="text-align:left">() =&gt; <code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-15">Returns<a href="#returns-15" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><code>fn</code></p>
<p>▸ (): <code>T</code></p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns-16">Returns<a href="#returns-16" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>T</code></p>
<p><strong><code>Since</code></strong></p>
<p>2.0.0.
Creates a singleton object.</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-26">Defined in<a href="#defined-in-26" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/ioc/dependency-injection.ts#L11" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:11</a></p>
<hr>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="transient-1">transient<a href="#transient-1" class="hash-link" aria-label="Direct link to transient" title="Direct link to transient"></a></h3>
<p><strong>transient</strong>&lt;<code>T</code>&gt;(<code>cb</code>): () =&gt; () =&gt; <code>T</code></p>
<p>@<strong>PURE</strong></p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="type-parameters-15">Type parameters<a href="#type-parameters-15" class="hash-link" aria-label="Direct link to Type parameters" title="Direct link to Type parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th></tr></thead><tbody><tr><td style="text-align:left"><code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="parameters-13">Parameters<a href="#parameters-13" class="hash-link" aria-label="Direct link to Parameters" title="Direct link to Parameters"></a></h4>
<table><thead><tr><th style="text-align:left">Name</th><th style="text-align:left">Type</th></tr></thead><tbody><tr><td style="text-align:left"><code>cb</code></td><td style="text-align:left">() =&gt; () =&gt; <code>T</code></td></tr></tbody></table>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-17">Returns<a href="#returns-17" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4>
<p><code>fn</code></p>
<p>▸ (): () =&gt; <code>T</code></p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns-18">Returns<a href="#returns-18" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>fn</code></p>
<p>▸ (): <code>T</code></p>
<h5 class="anchor anchorWithStickyNavbar_LWe7" id="returns-19">Returns<a href="#returns-19" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h5>
<p><code>T</code></p>
<p><strong><code>Since</code></strong></p>
<p>2.0.0
Creates a transient object</p>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-27">Defined in<a href="#defined-in-27" class="hash-link" aria-label="Direct link to Defined in" title="Direct link to Defined in"></a></h4>
<p><a href="https://github.com/sern-handler/handler/blob/2106522/src/core/ioc/dependency-injection.ts#L21" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:21</a></p></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/api"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Readme</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/api/namespaces/CommandError"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">CommandError</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#namespaces" class="table-of-contents__link toc-highlight">Namespaces</a></li><li><a href="#enumerations" class="table-of-contents__link toc-highlight">Enumerations</a></li><li><a href="#classes" class="table-of-contents__link toc-highlight">Classes</a></li><li><a href="#interfaces" class="table-of-contents__link toc-highlight">Interfaces</a></li><li><a href="#type-aliases" class="table-of-contents__link toc-highlight">Type Aliases</a><ul><li><a href="#anycommandplugin" class="table-of-contents__link toc-highlight">AnyCommandPlugin</a></li><li><a href="#anyeventplugin" class="table-of-contents__link toc-highlight">AnyEventPlugin</a></li><li><a href="#args" class="table-of-contents__link toc-highlight">Args</a></li><li><a href="#commandmodule" class="table-of-contents__link toc-highlight">CommandModule</a></li><li><a href="#eventmodule" class="table-of-contents__link toc-highlight">EventModule</a></li><li><a href="#initializable" class="table-of-contents__link toc-highlight">Initializable</a></li><li><a href="#logpayload" class="table-of-contents__link toc-highlight">LogPayload</a></li><li><a href="#payload" class="table-of-contents__link toc-highlight">Payload</a></li><li><a href="#pluginresult" class="table-of-contents__link toc-highlight">PluginResult</a></li><li><a href="#sernoptionsdata" class="table-of-contents__link toc-highlight">SernOptionsData</a></li><li><a href="#singleton" class="table-of-contents__link toc-highlight">Singleton</a></li><li><a href="#slashoptions" class="table-of-contents__link toc-highlight">SlashOptions</a></li><li><a href="#transient" class="table-of-contents__link toc-highlight">Transient</a></li></ul></li><li><a href="#variables" class="table-of-contents__link toc-highlight">Variables</a><ul><li><a href="#controller" class="table-of-contents__link toc-highlight">controller</a></li></ul></li><li><a href="#functions" class="table-of-contents__link toc-highlight">Functions</a><ul><li><a href="#commandcontrolplugin" class="table-of-contents__link toc-highlight">CommandControlPlugin</a></li><li><a href="#commandinitplugin" class="table-of-contents__link toc-highlight">CommandInitPlugin</a></li><li><a href="#discordeventcontrolplugin" class="table-of-contents__link toc-highlight">DiscordEventControlPlugin</a></li><li><a href="#eventcontrolplugin" class="table-of-contents__link toc-highlight">EventControlPlugin</a></li><li><a href="#eventinitplugin" class="table-of-contents__link toc-highlight">EventInitPlugin</a></li><li><a href="#service" class="table-of-contents__link toc-highlight">Service</a></li><li><a href="#services" class="table-of-contents__link toc-highlight">Services</a></li><li><a href="#commandmodule-1" class="table-of-contents__link toc-highlight">commandModule</a></li><li><a href="#discordevent" class="table-of-contents__link toc-highlight">discordEvent</a></li><li><a href="#eventmodule-1" class="table-of-contents__link toc-highlight">eventModule</a></li><li><a href="#makedependencies" class="table-of-contents__link toc-highlight">makeDependencies</a></li><li><a href="#makeplugin" class="table-of-contents__link toc-highlight">makePlugin</a></li><li><a href="#single" class="table-of-contents__link toc-highlight">single</a></li><li><a href="#transient-1" class="table-of-contents__link toc-highlight">transient</a></li></ul></li></ul></div></div></div></div></main></div></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Information</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/docs/intro">Docs &amp; Guide</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://stackoverflow.com/questions/tagged/sern-handler" target="_blank" rel="noopener noreferrer" class="footer__link-item">Stack Overflow<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://discord.gg/DwbF5H5JgQ" target="_blank" rel="noopener noreferrer" class="footer__link-item">Discord<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://opencollective.com/sern" target="_blank" rel="noopener noreferrer" class="footer__link-item">Open Collective<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/blog">Blog</a></li><li class="footer__item"><a href="https://github.com/sern-handler" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Built with ❤️ by the sern Handler team and its contributors</div></div></div></footer></div>
</body>
</html>