Files
website/docs/api/modules.html
github-actions[bot] c599e022ae deploy: d14ca62954
2024-02-12 18:58:08 +00:00

42 lines
72 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 docs-doc-page docs-version-current plugin-docs plugin-id-default docs-doc-id-api/modules" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.4.3">
<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" 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.c9f17128.css">
<link rel="preload" href="/assets/js/runtime~main.d785fe72.js" as="script">
<link rel="preload" href="/assets/js/main.ae696ad9.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</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="themedImage_ToTc themedImage--light_HNdA"><img src="/img/favicon.ico" alt="logo logo" class="themedImage_ToTc themedImage--dark_i4oU"></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="/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="searchBox_ZlJk"><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"><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 docsWrapper_BCFX"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebarViewport_Xe31"><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="Toggle the collapsible 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="Toggle the collapsible 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="Toggle the collapsible sidebar category &#x27;Introduction&#x27;" type="button" class="clean-btn menu__caret"></button></div></li></ul></nav></div></div></aside><main class="docMainContainer_gTbr"><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/CommandExecutable">CommandExecutable</a></li><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/EventExecutable">EventExecutable</a></li><li><a href="/docs/api/classes/ModuleStore">ModuleStore</a></li><li><a href="/docs/api/classes/SernEmitter">SernEmitter</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/9d5c6c7/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/9d5c6c7/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/9d5c6c7/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/9d5c6c7/src/types/core-modules.ts#L133" target="_blank" rel="noopener noreferrer">src/types/core-modules.ts:133</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/9d5c6c7/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="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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>message</code></td><td 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/9d5c6c7/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/9d5c6c7/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/9d5c6c7/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/9d5c6c7/src/types/core-modules.ts#L201" target="_blank" rel="noopener noreferrer">src/types/core-modules.ts:201</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 align="left">Name</th></tr></thead><tbody><tr><td 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/9d5c6c7/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/9d5c6c7/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 align="left">Name</th></tr></thead><tbody><tr><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>next</code></td><td align="left">() =&gt; <code>OkImpl</code>&lt;<code>void</code>&gt;</td></tr><tr><td align="left"><code>stop</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>I</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>I</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>name</code></td><td align="left"><code>T</code></td></tr><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>I</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>I</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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.</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th><th align="left">Description</th></tr></thead><tbody><tr><td align="left"><code>key</code></td><td align="left"><code>T</code></td><td 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"><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/9d5c6c7/src/core/ioc/dependency-injection.ts#L36" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:36</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>...keys</code></td><td 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/9d5c6c7/src/core/ioc/dependency-injection.ts#L44" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:44</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>mod</code></td><td 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/9d5c6c7/src/core/modules.ts#L25" target="_blank" rel="noopener noreferrer">src/core/modules.ts:25</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>mod</code></td><td align="left"><code>Object</code></td></tr><tr><td align="left"><code>mod.execute</code></td><td align="left">(...<code>args</code>: <code>ClientEvents</code>[<code>T</code>]<!-- -->) =&gt; <code>unknown</code></td></tr><tr><td align="left"><code>mod.name</code></td><td align="left"><code>T</code></td></tr><tr><td align="left"><code>mod.plugins?</code></td><td 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/9d5c6c7/src/core/modules.ts#L53" target="_blank" rel="noopener noreferrer">src/core/modules.ts:53</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>mod</code></td><td 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/9d5c6c7/src/core/modules.ts#L38" target="_blank" rel="noopener noreferrer">src/core/modules.ts:38</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>T</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>conf</code></td><td 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/9d5c6c7/src/core/ioc/base.ts#L90" target="_blank" rel="noopener noreferrer">src/core/ioc/base.ts:90</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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>V</code></td><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>type</code></td><td align="left"><a href="/docs/api/enums/PluginType"><code>PluginType</code></a></td></tr><tr><td align="left"><code>execute</code></td><td 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/9d5c6c7/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 align="left">Name</th></tr></thead><tbody><tr><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>cb</code></td><td 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/9d5c6c7/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 align="left">Name</th></tr></thead><tbody><tr><td 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 align="left">Name</th><th align="left">Type</th></tr></thead><tbody><tr><td align="left"><code>cb</code></td><td 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/9d5c6c7/src/core/ioc/dependency-injection.ts#L21" target="_blank" rel="noopener noreferrer">src/core/ioc/dependency-injection.ts:21</a></p><hr><h3 class="anchor anchorWithStickyNavbar_LWe7" id="usecontainerraw">useContainerRaw<a href="#usecontainerraw" class="hash-link" aria-label="Direct link to useContainerRaw" title="Direct link to useContainerRaw"></a></h3><p><strong>useContainerRaw</strong>(): <code>CoreContainer</code>&lt;<code>Partial</code>&lt;<code>Dependencies</code>&gt;<!-- -->&gt;</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="returns-20">Returns<a href="#returns-20" class="hash-link" aria-label="Direct link to Returns" title="Direct link to Returns"></a></h4><p><code>CoreContainer</code>&lt;<code>Partial</code>&lt;<code>Dependencies</code>&gt;<!-- -->&gt;</p><p><strong><code>Deprecated</code></strong></p><p>Returns the underlying data structure holding all dependencies.
Exposes methods from iti
Use the Service API. The container should be readonly</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="defined-in-28">Defined in<a href="#defined-in-28" 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/9d5c6c7/src/core/ioc/base.ts#L18" target="_blank" rel="noopener noreferrer">src/core/ioc/base.ts:18</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><li><a href="#usecontainerraw" class="table-of-contents__link toc-highlight">useContainerRaw</a></li></ul></li></ul></div></div></div></div></main></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>
<script src="/assets/js/runtime~main.d785fe72.js"></script>
<script src="/assets/js/main.ae696ad9.js"></script>
</body>
</html>